ITPub博客

首页 > 数据库 > Oracle > 【WARING】chown可以载舟亦能覆舟

【WARING】chown可以载舟亦能覆舟

原创 Oracle 作者:xysoul_云龙 时间:2014-02-22 09:00:13 0 删除 编辑

怎么说呢,至少一个工作几年的DBA不应该犯这样的低级错误,毛手毛脚更是大忌。希望所经历的每一次教训都能铭记,成为成长路上的基石,我知道有太多东西都显得那么业余、我知道有许多事情还没去做,但我在尝试,也许不够努力,却每天前行,不管脚步的快慢,一直在路上。好了,下面说一下这个失误吧。

为了便于管理,我们搭建了一套OEM12C,下午没事打算给一套HPUX系统(RAC)配置OEM监控,在执行远程监测的时候,报安装权限不对,通过OEM用户登录,在其安装目录尝试读写,都没问题,由于空间限制,打算在/USR目录下安装,所以就创建了一个目录,此时在node1节点执行

# mkdir -p /usr/oem

接着赋予权限

# chown -R oem:oinstall /usr

/usr/lbin/uucp/ADMIN: No such file or directory

/usr/lbin/uucp/L-vtdevices: No such file or directory

/usr/lbin/uucp/L.X25: No such file or directory

/usr/lbin/uucp/SQFILE: No such file or directory

/usr/lbin/spell/spellhist: No such file or directory

/usr/lib/dialit: No such file or directory

路径没写完全(脑子短路),直接把权限赋予/usr 而且加参数 –R,可想而知,usr目录下sbin、bin、lib、newconfig等目录及文件权限变更,造成系统部分命令、文件无法正常访问、执行,通过ssh工具无法与操作系统建立新的连接,还好,这个会话一直存在。当时真有点束手无策,咋整,好吧,先整再说,又来了一条

chown bin:bin /usr

这个命令还好,只对该目录属组更改,但发现还是无法正常使用命令,

# su – oracle

setgroups: Not owner

setgroups: Not owner

su: Unable to initialize group access list

Dec 19 14:46:52 nbpsc1 su: USERDB: Unable to read from /var/adm/userdb/99. Run userdbck.

 

在查看node2节点的/usr目录后,对比权限,在/usr目录下执行如下命令(注意:递归权限修改请慎用)

# chown -R bin:bin newconfig share lbin sbin lib bin

lbin/uucp/ADMIN: No such file or directory

lbin/uucp/L-vtdevices: No such file or directory

lbin/uucp/L.X25: No such file or directory

lbin/uucp/SQFILE: No such file or directory

lbin/spell/spellhist: No such file or directory

lib/dialit: No such file or directory

 

无济于事,此时接到电话,node1节点监听异常,通过node2节点查看集群服务,如下

Name           Type           Target    State     Host       

------------------------------------------------------------

ora....dc1.srv application    ONLINE    OFFLINE              

ora....dc2.srv application    ONLINE    ONLINE    node2     

ora....CRAC.cs application    ONLINE    ONLINE    node1     

ora....c1.inst application    ONLINE    ONLINE    node1     

ora....c2.inst application    ONLINE    ONLINE    node2     

ora.bpscdc.db  application    ONLINE    ONLINE    node1     

ora....dc1.srv application    ONLINE    OFFLINE              

ora....dc2.srv application    ONLINE    ONLINE    node2     

ora....yyjc.cs application    ONLINE    ONLINE    node1     

ora....C1.lsnr application    ONLINE    OFFLINE              

ora.node1.gsd application    ONLINE    ONLINE    node1     

ora.node1.ons application    ONLINE    ONLINE    node1     

ora.node1.vip application    ONLINE    ONLINE    node2     

ora....C2.lsnr application    ONLINE    ONLINE    node2     

ora.node2.gsd application    ONLINE    ONLINE    node2     

ora.node2.ons application    ONLINE    ONLINE    node2     

ora.node2.vip application    ONLINE    ONLINE    node2 

 

监听、service服务停止,node1节点无法正常切换至oracle用户,通过node2节点oracle用户启动监听,如下错误(vip已切换至node2)

$ crs_start ora.node1.LISTENER_node1.lsnr

node1 : CRS-1018: Resource ora.node1.vip (application) is already running on node2

node2 : CRS-1019: Resource ora.node1.LISTENER_node1.lsnr (application) cannot run on node2

 

CRS-0223: Resource 'ora.node1.LISTENER_node1.lsnr' has placement error

 

当时真有点慌了,还好业务访问正常,没办法,权限问题,只能根据node2节点对比,修改node1节点,当时ls –lrt * 就凌乱了,这么多,怎么看啊,后来发现,许多root属组的文件或目录现在被递归修改为bin了,那就一个目录一个目录的查看,如下所示

# ls -lrt | grep root | wc –l  --通过该命令对比两个节点同目录下权限数量

30

# ls -lrt | grep bin | wc -l

334

--如果使用ls –lrt * | grep root 会递归目录,不易修改(不太会使用awk,只能笨方法)

 

发现node2中root属组多,再执行,列出文件,通过UE列编辑,整理出chown语句,在node1执行。

# ls -lrt | grep root

drwxrwxr-x   2 root       other           96 Mar  2  2012 diag

drwxrwxrwt   2 root       root            96 Mar  2  2012 streams

-rw-------   1 root       other            0 Mar  2  2012 btmp

drwx------   2 root       sys           8192 Mar  2  2012 userdb

-r--r--r--   1 root       sys             55 Mar  2  2012 new._PROD_DFLT_ACL

-r--r--r--   1 root       sys             15 Mar  2  2012 new.secrets

-r--r--r--   1 root       sys             55 Mar  2  2012 new._SOC_DFLT_ACL

-r--r--r--   1 root       sys             40 Mar  2  2012 new._ACL

-r--r--r--   1 root       sys             62 Mar  2  2012 new._OWNER

drwxr-xr-x   2 root       root            96 Aug 23  2012 crash

-rw-r--r--   1 root       root             0 Aug 23  2012 automount.log

-rw-r--r--   1 root       sys         637524 Aug 23  2012 kc.cache

-r--r--r--   1 root       sys              0 Aug 23  2012 sbtab.old

lrwxr-xr-x   1 root       sys             17 Aug 23  2012 icod.log -> /var/adm/icap.log

-r--r--r--   1 root       sys              0 Aug 23  2012 sbtab

-rw-------   1 root       root           358 Aug 23  2012 .sfd

 

经过目录权限、属组对比,并赋权后,终于可以切换oracle用户,将vip切换至node1,启动监听、service服务。现在才稍微放松了一下

$ crs_stat –t

Name           Type           Target    State     Host       

------------------------------------------------------------

ora....dc1.srv application    ONLINE    ONLINE    node1     

ora....dc2.srv application    ONLINE    ONLINE    node2     

ora....CRAC.cs application    ONLINE    ONLINE    node1     

ora....c1.inst application    ONLINE    ONLINE    node1     

ora....c2.inst application    ONLINE    ONLINE    node2     

ora.bpscdc.db  application    ONLINE    ONLINE    node1     

ora....dc1.srv application    ONLINE    ONLINE    node1     

ora....dc2.srv application    ONLINE    ONLINE    node2     

ora....yyjc.cs application    ONLINE    ONLINE    node1     

ora....C1.lsnr application    ONLINE    ONLINE    node1     

ora.node1.gsd application    ONLINE    ONLINE    node1     

ora.node1.ons application    ONLINE    ONLINE    node1     

ora.node1.vip application    ONLINE    ONLINE    node1     

ora....C2.lsnr application    ONLINE    ONLINE    node2     

ora.node2.gsd application    ONLINE    ONLINE    node2     

ora.node2.ons application    ONLINE    ONLINE    node2     

ora.node2.vip application    ONLINE    ONLINE    node2

 

这个方法有点土、也有点笨,值得欣慰的是还好没有用肉眼在那看(当时着急啊),其实这篇文档没什么技术含量,只是想提醒大家,操作时多多注意,或者在文本里编辑一下,看一遍再执行,像rm中的-r和chmod(chown)中的-R参数以及其他类似参数,请慎用,人为的误操作(尤其低级,大多也是低级)真是坑人,男人,可以战死沙场,但别没到战场就先把自己给坑死了。

如果遇到这样的失误,你会怎么处理,或者根据本文失误,你有什么更好的方法,欢迎大家交流。

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/29487349/viewspace-1086005/,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
主要从事数据库相关工作,其他操作系统、中间件等也有涉及,热衷分享、开源,支持国产,期待中华民族全面的伟大复兴。近日骤然醒悟,欲在IT江湖中闯荡一番,如有幸在诸多侠客中留点踪迹,也算不虚此行。 【文盲筱烨】好读书爱运动的IT技术爱好者 微博:文盲筱烨 微信公众号:筱烨视点

注册时间:2014-02-15

  • 博文量
    168
  • 访问量
    758054