无法清除 macOS 文件的 ACL - 操作不允许

无法清除 macOS 文件的 ACL - 操作不允许

我有一台带有外置 USB 硬盘的 MacBook Pro。我编写的一个程序无法读取文件,Backups.backupdb因此我查看了权限:

> pwd
/Volumes/G-DRIVE
> ls -led Backups.backupdb 
drwxr-xr-x+ 7 rob  staff  238 Feb 10  2012 Backups.backupdb
 0: group:everyone deny add_file,delete,add_subdirectory,delete_child,writeattr,writeextattr,chown

这是一个较旧的驱动器。我不再使用它进行 Time Machine 备份,因此我不在乎是否清除用于保护此文件夹的权限

但我无法清除它们:

> sudo chmod -N Backups.backupdb
> chmod: Failed to clear ACL on file Backups.backupdb: Operation not permitted

尝试查找可能阻止 chmod 的一些隐藏属性:

> ls -ldO Backups.backupdb 
> drwxr-xr-x+ 7 rob  staff  - 238 Feb 10  2012 Backups.backupdb
> xattr Backups.backupdb 
[nothing]

为什么操作不被允许?

我刚刚使用磁盘实用程序查看了驱动器。没有发现任何问题。

答案1

我找到了我自己的问题的答案。

我不知道这是否是 macOS 11 Big Sur 的新功能。我必须转到“系统偏好设置”→“安全和隐私”→“隐私”选项卡。然后在左侧列表中选择“完全磁盘访问”,并启用终端的复选框。它重新启动了终端,然后我就可以运行常用命令chmod,以及查看目录内容。

答案2

无法执行操作通常sudo是由系统完整性保护引起的。这个答案描述了类似的问题,并描述了如何禁用 SIP(​​并在完成后重新启用它)。

相关内容