0

如何将 ACL 设置为类似于 Safari.app 的文件夹?

ls -lde /Applications/Safari.app/
drwxr-xr-x@ 3 root  wheel  102 Jun 22 13:25 /Applications/Safari.app/
0: group:everyone deny delete

我试过使用:

sudo chmod -R +a "group:everyone deny delete" /Applications/xyz
ls -lde xyz
drwxr-xr-x+ 2 root  admin  68 Oct 13 16:26 xyz
0: group:everyone deny delete

但我仍然可以删除文件夹 xyz。

任何帮助都将是可观的。

4

1 回答 1

1

通常,一个人不能否认sudo rmdir /Applications/xyz,也不能sudo mv /Applications/Safari.app /Applications/Safari.app.bak. 在正常情况下,root 可以为所欲为。

但是“系统完整性保护”安全层在启用时会保护 Apple 的应用程序(默认情况下:查看它csrutil status。出于开发原因,我使用的是csrutil enable -without fs)。有关此 SIP 说明,请参阅此答案

特征可以这样看:

$ ls -le@d /Applications/Siri.app
drwxr-xr-x@ 3 root  wheel  96 Oct 19  2017 /Applications/Siri.app
    com.apple.rootless   0 
 0: group:everyone deny delete

所以即使是root也无法在SIP下删除它。
OTOH,这在 SIP 下不起作用:

$ sudo xattr -w com.apple.rootless "" /Applications/xyz
xattr: [Errno 1] Operation not permitted: '/Applications/xyz'
于 2018-10-05T11:44:02.937 回答