不小心在Linux服务器上运行chmod 775 -R /(不是./)(RedHat)

我不小心运行了“chmod 775 -R /”而不是“chmod 775 -R ./”,并改变了所有的权限,现在服务器坏了。

任何人都知道我可以如何快速解决这个?

如果这是基于RPM的分发,则可以使用以下命令将权限重置为RPM默认值:

rpm –setperms $(rpm -qa)

这至less会让你开始上路。

你有备份,对吧? 希望那些包含文件和文件系统元数据的? 如果这发生在我的环境中,我会把昨晚的备份下载到新磁盘上,然后启动。 希望可以帮助你!

如果您以前不知道或使用它,这不是很好的帮助,但是您可以通过可恢复的方式备份权限。 请参阅在Linux上备份权限

自己跑进这个。 基本上你可以做的是安装相同版本的操作系统或更好的,如果你有另一个系统安装了相同的操作系统,它仍然是完整的,做一个所有的文件清单,然后运行它通过脚本将它们更改回相同的权限。 您可以使用关联数组来执行此操作,方法是存储已知权限,然后重新读取它们以将其设置在受影响的主机上。

这篇文章有一个脚本来做到这一点与一些代码一起去: 权限问题和意外运行chmod 0: