【问题标题】:OSX: How to set ACL on a folderOSX:如何在文件夹上设置 ACL
【发布时间】:2016-01-11 21:18:49
【问题描述】:

如何将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。

任何帮助都将不胜感激。

【问题讨论】:

    标签: macos acl xattr


    【解决方案1】:

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

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

    rootless 功能可以这样看:

    $ 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
    

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

    $ sudo xattr -w com.apple.rootless "" /Applications/xyz
    xattr: [Errno 1] Operation not permitted: '/Applications/xyz'
    

    【讨论】:

      猜你喜欢
      • 2016-04-15
      • 1970-01-01
      • 2021-04-20
      • 2023-03-21
      • 2023-04-09
      • 1970-01-01
      • 2017-05-31
      • 2014-02-26
      • 2023-03-17
      相关资源
      最近更新 更多