我已经看到了如何在 Linux 上执行此操作,但是在 OSX 上有没有办法执行此操作?
我不小心运行了 chmod -R 777 /
想知道如何撤销此操作。谢谢
答案1
你不可能解决所有问题。
第一个建议:
在磁盘实用程序(应用程序 -> 实用程序 -> 磁盘实用程序)中,运行“修复磁盘权限”,请注意,这只会修复系统级别的应用程序和文件。OSX 会维护一个预期的权限状态文件,并在您验证/修复磁盘权限时引用它。
同样,这将恢复最重要的内容,但不会恢复您自己放置在那里的应用程序/文件,也不会恢复您的主目录内容等。
第二个建议:
备份重要内容,重新安装。
答案2
除非进行已知良好的安装并检查/重现权限,否则没有办法“撤消” chmod。最简单的方法是完全重新安装。
答案3
正如 Jason 所说,磁盘实用程序应该可以获取操作系统的大部分内容。对于其余部分,也许您可以假设文件的默认值为 644,目录的默认值为 755,但 /Users 除外,因为 600 和 700 可能更合适?这不会让所有内容保持原样,但它应该可以让大多数内容正常工作,并且您可以在发现特殊情况时进行修复。
最好的顺序可能是
chmod -R 644 /
# 将所有内容设置为所有者读/写,其他人读取
chmod -R a+X /
# 在目录中添加对所有目录的执行
然后运行磁盘实用程序,让它在这些基本权限之上修补它可以修补的内容。
我假设磁盘实用程序将会执行诸如使 /bin 的内容可执行之类的操作。
这些都是我脑海中的想法,并且没有经过测试;我建议在整个磁盘上运行 chmods 之前,先在一棵小子树上测试它们。
如果您可以重新安装,那么从长远来看,这可能会让您更加安心。我很乐意在我的一个测试箱上执行这样的临时解决方案,但可能不会在我的个人工作站上执行。
皮特