我知道我可以使用以下方法锁定应用程序:
sudo chmod a-x /Applications/'Application'.app
但我在尝试锁定应用程序时遇到了问题,例如内置的 safari。
chmod: Unable to change file on /Applications/Safari.app: Operation not permitted
有没有办法覆盖权限?
答案1
无法以 root 身份更改 OS X 上内置应用程序或系统文件的权限表明系统完整性保护,10.11中添加的新安全功能,
限制 root 帐户并限制 root 用户可以对 OS X 受保护部分执行的操作。
受保护的部分包括/System
预安装的应用程序以及传统的 Unix 树。
中列出的路径下的任何项目/System/Library/Sandbox/rootless.conf
,或具有com.apple.rootless
中列出的扩展属性的任何项目xattr -l
,除该文件第一列中列出的用户外都是不可修改的,除非已启用 SIP。残疾人处于恢复模式(我通常建议不要这样做)。
自然地,此保护包括 root 用户以及任何具有管理员或sudo
权限的人。只有 Apple 签名的二进制文件才能修改这些文件。
您还可以看到Ars Technica 上这篇热门报道文章从该功能推出时起了解更多详细信息,包括有关其工作原理和用途的更多信息。
答案2
在 10.11“El Capitan”之前的 Mac OS X 上,您应该能够以 root 用户身份获得所需的结果。
“名为‘root’的用户帐户是 UNIX 风格操作系统中的特殊用户,拥有文件系统所有区域的读写权限。”
如果您尚未启用 root 用户,请参阅以下有关如何在 OS X 中启用和使用“root”用户的说明。
https://support.apple.com/en-us/HT204012
在 CLI 上:
1. 键入su
切换到 root 用户。
2.然后就chmod a-x /Applications/Safari.app
可以工作了