Oracle RAC 集群中,对于各种资源的管理,也存在所有者与权限的问题。crs_getperm与crs_setperm则是这样的一对命令,主要用于查看与修改集群中resource的owner,group以及权限等,下面通过具体的演示来获得其使用方法。

  1. 1、查看当前集群中的资源
  2. #下面的查询可知,当前集群环境中存在两个service
  3. oracle@bo2dbp:~> crs_stat -ls | grep srv
  4. ora....O4A.srv oracle         oinstall                 rwxrwxr--
  5. ora....0g1.srv oracle         oinstall                 rwxrwxr--
  6. #获得service的全称
  7. oracle@bo2dbp:~> crs_stat -p | grep srv
  8. NAME=ora.GOBO4.GOBO4_SRV.GOBO4A.srv
  9. NAME=ora.ora10g.hr_ora10g.ora10g1.srv
  10. DESCRIPTION=ora.ora10g.hr_ora10g.ora10g1.srv
  11. #下面通过crs_getperm获得资源的所有者即权限
  12. oracle@bo2dbp:~> crs_getperm ora.ora10g.hr_ora10g.ora10g1.srv
  13. Name: ora.ora10g.hr_ora10g.ora10g1.srv
  14. owner:oracle:rwx,pgrp:oinstall:rwx,other::r--,
  15. #上面owner即为所有者,pgrp表示所有者,other则为其他用户,每个后面跟的都是其对应的权限
  16. 2、crs_getperm与crs_setperm的用法
  17. oracle@bo2dbp:~> crs_getperm -h
  18. Usage: crs_getperm resource_name [-u user|-g group] [-q]
  19. #crs_getperm用法较为简单,后面接资源名,可选的为用户或组
  20. oracle@bo2dbp:~> crs_setperm -h  #此命令稍微较crs_getperm复杂
  21. Usage: crs_setperm resource_name -u aclstring [-q]
  22. crs_setperm resource_name -x aclstring [-q]
  23. crs_setperm resource_name -o user_name [-q]
  24. crs_setperm resource_name -g group_name [-q]
  25. -u  Update the acl string
  26. -x  Delete the acl string
  27. -o  Change the owner of the resource
  28. -g  Change the primary group of the resource
  29. aclstring is one of the following:
  30. user:<username>:rwx
  31. group:<groupname>:r-x   #当心这里的group用法,如果直接使用group修改权限会收到错误提示
  32. other::r--
  33. 3、演示使用crs_setperm
  34. oracle@bo2dbp:~> su
  35. Password:
  36. #下面分别修改资源hr_ora10g的资源所有者和所属组,将其全部改为roo权限
  37. bo2dbp:/users/oracle # crs_setperm ora.ora10g.hr_ora10g.ora10g1.srv -o root
  38. bo2dbp:/users/oracle # crs_setperm ora.ora10g.hr_ora10g.ora10g1.srv -g root
  39. #查看修改之后,该资源的属主与属组已经发生变化
  40. bo2dbp:/users/oracle # crs_getperm ora.ora10g.hr_ora10g.ora10g1.srv
  41. Name: ora.ora10g.hr_ora10g.ora10g1.srv
  42. owner:root:rwx,pgrp:root:rwx,other::r--,
  43. #修改属组的权限,将其改为读,执行
  44. bo2dbp:/users/oracle # crs_setperm ora.ora10g.hr_ora10g.ora10g1.srv -u pgrp:root:r-x
  45. bo2dbp:/users/oracle # crs_getperm ora.ora10g.hr_ora10g.ora10g1.srv
  46. Name: ora.ora10g.hr_ora10g.ora10g1.srv
  47. owner:root:rwx,pgrp:root:r-x,other::r--,
  48. #使用同样的方式将其修改回去。
  49. bo2dbp:/users/oracle # crs_setperm ora.ora10g.hr_ora10g.ora10g1.srv -o oracle
  50. bo2dbp:/users/oracle # crs_setperm ora.ora10g.hr_ora10g.ora10g1.srv -g oinstall
  51. bo2dbp:/users/oracle # crs_setperm ora.ora10g.hr_ora10g.ora10g1.srv -u pgrp:oinstall:rwx
  52. bo2dbp:/users/oracle # crs_getperm ora.ora10g.hr_ora10g.ora10g1.srv
  53. Name: ora.ora10g.hr_ora10g.ora10g1.srv
  54. owner:oracle:rwx,pgrp:oinstall:rwx,other::r--,
  55. bo2dbp:/users/oracle # su - oracle
  56. #所有者的权限不允许修改
  57. oracle@bo2dbp:~> crs_setperm ora.ora10g.hr_ora10g.ora10g1.srv -u owner:oracle:r-x
  58. CRS-0248:  Acl operation failed
  59. oracle@bo2dbp:~> crs_setperm ora.ora10g.hr_ora10g.ora10g1.srv -u owner:oracle:rw-
  60. CRS-0248:  Acl operation failed
  61. oracle@bo2dbp:~> crs_setperm ora.ora10g.hr_ora10g.ora10g1.srv -u owner:oracle:-wx
  62. CRS-0248:  Acl operation failed
  63. #组权限可以修改
  64. oracle@bo2dbp:~> crs_setperm ora.ora10g.hr_ora10g.ora10g1.srv -u pgrp:oinstall:r-x
  65. oracle@bo2dbp:~> crs_getperm ora.ora10g.hr_ora10g.ora10g1.srv
  66. Name: ora.ora10g.hr_ora10g.ora10g1.srv
  67. owner:oracle:rwx,pgrp:oinstall:r-x,other::r--,
  68. #other也可以修改
  69. oracle@bo2dbp:~> crs_setperm ora.ora10g.hr_ora10g.ora10g1.srv -u other::rwx
  70. oracle@bo2dbp:~> crs_getperm ora.ora10g.hr_ora10g.ora10g1.srv
  71. Name: ora.ora10g.hr_ora10g.ora10g1.srv
  72. owner:oracle:rwx,pgrp:oinstall:r-x,other::rwx,
  73. #Author: Robinson
  74. #Blog: http://blog.csdn.net/robinson_0612
  75. #根据下面的查看结果可知,已经发生了变化,建议将其改为最初的状态
  76. oracle@bo2dbp:~> crs_stat -ls |grep srv
  77. ora....O4A.srv oracle         oinstall                 rwxrwxr--
  78. ora....0g1.srv oracle         oinstall                 rwxr-xrwx
  79. 转:http://blog.csdn.net/leshami/article/details/8219242

使用crs_setperm修改RAC资源的所有者及权限的更多相关文章

  1. Linux下批量修改文件及文件夹所有者及权限

    Linux下批量修改文件及文件夹所有者及权限需要使用到两个命令,chmod以及chown 例:对/opt/Oracle/目录下的所有文件与子目录执行相同的权限变更: chmod -R 700 /opt ...

  2. Ubuntu下如何修改文件或者文件夹的权限

    Ubuntu下如何修改文件或者文件夹的权限------chmod的亲身测试   具体原理如下: Linux系统下如何修改文档及文件夹(含子文件夹)权限,我们来看一下.              一 介 ...

  3. 【ARM-Linux开发】Linux下更改目录下所有文件的所有者及其权限

    [ARM-Linux开发]Linux下更改目录下所有文件的所有者及其权限 chown 更换所有者: chmod 改变权限: 想一次修改某个目录下所有文件的权限,包括子目录中的文件权限也要修改,要使用参 ...

  4. C#修改文件或文件夹的权限,为指定用户、用户组添加完全控制权限

    C#修改文件或文件夹的权限,为指定用户.用户组添加完全控制权限 public void SetFileRole(string foldPath) { DirectorySecurity fsec = ...

  5. windows环境vagrant修改静态资源文件,centos虚拟机中nginx的web环境下不生效

    最近上手krpano,本地修改了krpano.html文件或者xml文件,在虚拟机环境打开文件是修改过来了,在nginx中就是不生效. 修改nginx.conf中http{}中的 sendfile  ...

  6. idea 修改静态资源不需要重启的办法

    快捷键Ctrl + Alt + S打开设置面板,勾选Build project automatically选项: 快捷键Ctrl + Shift + A查找registry命令: 在查找到的regis ...

  7. Spring Boot 修改静态资源一定要重启项目才会生效吗?未必!

    回顾热部署 Spring Boot 中的热部署相信大家都用过吧,只需要添加 spring-boot-devtools 依赖就可以轻松实现热部署.Spring Boot 中热部署最最关键的原理就是两个不 ...

  8. laravel7 H-ui模板ajax修改(资源路由)

    1:列表首页设置点击事件,并将id传至后台,查询数据 <td class="f-14"><a title="编辑" href="ja ...

  9. java修改文件所有者及其权限

    1.设置所有者 管理文件所有者 Files.getOwner()和Files.setOwner()方法 要使用UserPrincipal来管理文件的所有者 (1)更改文件的所有者 import jav ...

随机推荐

  1. WCF分布式开发步步为赢(6):WCF服务契约继承与分解设计

    上一节我们学习了WCF分布式开发步步为赢(5)服务契约与操作重载部分.今天我们来继续学习WCF服务契约继承和服务分解设计相关的知识点.WCF服务契约继承有何优势和缺点?实际项目里契约设计有什么原则和依 ...

  2. 错误处理--pure specifier can only be specified for functions

    错误处理--pure specifier can only be specified for functions 今天下载了log4cpp的源代码,在VC6下编译时出现错误: ..\..\includ ...

  3. UVA 11401 - Triangle CountingTriangle Counting 数学

    You are given n rods of length 1,2, . . . , n. You have to pick any 3 of them and build a triangle. ...

  4. 【poj2478-Farey Sequence】递推求欧拉函数-欧拉函数的几个性质和推论

    http://poj.org/problem?id=2478 题意:给定一个数x,求<=x的数的欧拉函数值的和.(x<=10^6) 题解:数据范围比较大,像poj1248一样的做法是不可行 ...

  5. 李洪强iOS开发之OC[008] -创建一个对象并访问实例变量

    // //  main.m //  07 - 创建一个对象并且访问实例变量 // //  Created by vic fan on 16/7/3. //  Copyright © 2016年 李洪强 ...

  6. JSTL Tag学习笔记(一)之<c: />

    注:本文中的例子主要来自http://www.tutorialspoint.com/jsp/jsp_standard_tag_library.htm.  ======================= ...

  7. Jenkins master在windows上安装

    原文:http://www.cnblogs.com/itech/archive/2011/11/02/2233343.html 1 Jenkins Jenkins由以前的hudson更名而来.Jenk ...

  8. linux中U盘umonut时出现“Device is busy”的解决方法

    问题: #umount /dev/sda1 umount: /mnt/usb: device is busy 查找占用目录进程: #lsof |grep /mnt/usb bash 1971 root ...

  9. 下载的时候如果文件名是中文就变成zip.zip

    struts2 /WEB-INF/web.xml <?xml version="1.0" encoding="UTF-8"?> <web-ap ...

  10. opencv 金字塔图像分割

    我所知的opencv中分割函数:watershed(只是看看效果,不能返回每类pixel类属),cvsegmentImage,cvPyrSegmentation(返回pixel类属) 金字塔分割原理篇 ...