引言
前几天下班接到同事的电话,因为执行chown时不小心多个了空格 chown root:root temp/ -R 导致了所有文件的所有者都成了root,新的shell连接不上,还好有一个root级的shell连接着呢,并且是操作的生产环境。
状态
- 有一个root的shell连接
- 存在测试机,内容差不多
.12 生产机
.19 测试机
解决方案
备份测试机.19的权限信息,在19的机器上运行
getfacl -R / >/tmp/system.bak
在19机器上的tmp目录能看到system.bak
接下来要考虑如何把这个文件上传到12生产机
当时使用scp ssh都无法上传,巧合的是他们属于同一个网段,并且可以互ping通,那么就把system.bak放到nginx的www目录。
通过wget命令,在12生产机下载system.bak
wget http://**.**.**.19/system.bak
此时可以发现,system.bak 下载到了当前目录
通过命令还原权限信息
setfacl --restore=system.bak
稍稍等会儿就可以创建ssh连接了。
结语
做任何chown chmod rm 等命令时一定要谨慎。

评论 0
还没有评论,来说点什么吧。