暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

11g RAC DBCA 未发现 asm

原创 章芋文 2013-12-20
436
装RAC时,DBCA建库,未发现ASM,结果发现grid用户/oracle/app/grid/bin/目录下的权限不对,缺少s权限,加上s权限即可。
[root@node2 db1]# su - grid
[grid@node2 ~]$ cd /oracle/app/grid/bin/
[grid@node2 bin]$ chmod +s oracle
[grid@node2 bin]$ exit
所以针对oracle安装目录不要使用chmod -R 修改权限。
下面是关于文件s权限的一些资料:
设置suid/guid的作用:
suid意味着如果某个用户对属于自己的shell脚本设置了这种权限,那么其他用户在执行这一脚本时也会具有其属主的相应权限。于是,如果根用户的某一个脚本设置了这样的权限,那么其他普通用户在执行它的期间也同样具有根用户的权限。同样的原则也适用于guid,执行相应脚本的用户将具有该文件所属用户组中用户的权限。
为什么要使用suid/guid:

为什么要使用这种类型的脚本?这里有一个很好的例子。我管理着几个大型的数据库系统,而对它们进行备份需要有系统管理权限。我写了几个脚本,并设置了它们的guid,这样我指定的一些用户只要执行这些脚本就能够完成相应的工作,而无须以数据库管理员的身份登录,以免不小心破坏了数据库服务器。通过执行这些脚本,他们可以完成数据库备份及其他管理任务,但是在这些脚本运行结束之后,他们就又回复到他们作为普通用户的权限。有相当一些UNIX命令也设置了suid和guid。如果想找出这些命令,可以进入/bin或/sbin目录,执行下面的命令:

$ ls -l | grep '^...s'

上面的命令是用来查找suid文件的;

$ ls -l | grep '^...s..s'

上面的命令是用来查找suid和guid的。
现在我们明白了什么是suid,可是如何设置它呢?下面就来介绍这个问题。如果希望设置suid,那么就将相应的权限位之前的那一位设置为4;如果希望设置guid,那么就将相应的权限位之前的那一位设置为2;如果希望两者都置位,那么将相应的权限位之前的那一位设置为4+2。
一旦设置了这一位,一个s将出现在x的位置上。记住:在设置suid或guid的同时,相应的执行权限位必须要被设置。例如,如果希望设置guid,那么必须要让该用户组具有执行权限。

如果想要对文件login设置suid,它当前所具有的权限为rwx rw- r-- (741),需要在使用chmod命令时在该权限数字的前面加上一个4,即chmod 4741,这将使该文件的权限变为rws rw- r--。

$ chmod 4741 logit
设置suid/guid的例子

chmod 4755 rws r-x r- x 文文件被设置了suid,文件属主具有读、写和执行的权限,所有其

他用户具有读和执行的权限

chmod 6711 rws --s --s 文文件被设置了suid和guid,文件属主具有读、写和执行的权限,

所有其他用户具有执行的权限

chmod 4764 rws rw- r- - 文文件被设置了suid,文件属主具有读、写和执行的权限,同组用

户具有读和执行的权限,其他用户具有读权限
还可以使用符号方式来设置suid/guid。如果某个文件具有这样的权限: rwx r-x r- x,那么

可以这样设置其suid:

chmod u+s <filename>


于是该文件的权限将变为: rws r-x r-x
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论