linux文件或目录权限修改后如何恢复(备份了权限就能恢复)

操作系统 RHEL5

如果你在linux上执行了如下操作
chmod -R 777 / 或者 chmod -R 700 /
那么恭喜你,你的系统即将崩溃,重启之后,你进不了图形界面,而且很多服务都起不来

为什么呢?

因为linux中,系统的有些文件和目录权限都是严格要求的,比如说/tmp和/root里的一些重要文件的权限都是至关重要的

一旦文件权限受到破坏,会直接影响系统的正常启动及使用。

那么我们碰到这种情况怎么办呢?

1、手动的将各个文件的权限进行对照还原(假如你很有时间的话)
2、找到一台环境相同的linux机器(最好干净一些),并进行下面操作
1> getfacl -R / >systemP.bak 将这个系统中的 / ,以及 / 底下所有的文件及目录权限导出到一个文件中
2> 将systemP.bak文件想办法拷贝到被破坏的机器上
并执行setfacl --restore=systemP.bak
3> 重启系统
4> 将 passwd命令和 su命令的权限进行手动恢复
chmod u+s `which passwd`
chmod u+s `which su`
看看是不是完活了

注:可能不能完全还原,但起码可以进入一个较为完整的图形界面操作,其他的报错应该就可以在这个基础上进行解决了,比如有些服务。这里就不多讲了

上一篇:ASP.NET MVC 网站开发总结(五)——Ajax异步提交表单之检查验证码


下一篇:LeetCode(Easy)--C++笔记