按错误设置后恢复权限chmod -R 775 /

时间:2012-06-04 16:18:10

标签: php permissions sudo chmod centos5

出错我在775上设置了所有文件夹和文件权限,执行此命令

sudo chmod 775 -R /website/folder /

现在我需要恢复至少centos文件的所有服务器文件夹和路径权限,此刻我无法从我的网站发送电子邮件......

系统是第5期

...谢谢

2 个答案:

答案 0 :(得分:0)

我不知道有办法自动撤消这个。我所知道的唯一解决方案是手动修复关键权限,或从备份恢复。如果我是你,我只是假设你有一个很好的最近备份,从备份恢复。

答案 1 :(得分:0)

这不是一个完整的解决方案,而是一个如何解决这个问题的想法。

您可以查询数据包数据库(在CentOS中它是AFAIR RPM)并根据该数据库设置权限。

RPM的一些有用命令:

  • rpm -Va验证RPM数据库中注册的文件。那里列出了具有错误权限的文件。具有错误模式的文件在第二列中显示M。所以像rpm -Va | grep ^.M | cut -c 13-之类的东西应该是一个好的开始。

  • 另一个选项可能是使用

    查询所有数据包中的所有文件
    rpm --queryformat='%{FILEMODES}\t%{FILENAMES}\n' -qa
    

    并通过将输出管道输入某种循环来处理输出,例如

    | while read mode fn; do chmod -V ... "$fn"; done
    

    但是在这里你必须将FILEMODES的十进制输出转换为八进制,以便chmod能够理解它。

    或者,您可以使用其他内容处理输出,例如python脚本等,这样可以更好地控制您的操作。