更改 xattr 时出现 Errno 1 操作不允许

更改 xattr 时出现 Errno 1 操作不允许

我尝试从系统中删除两个文件,然后将它们放回去。但是自从我把它们放回去后,我的 Superdrive 就无法正常工作了。文件

IOCDStorageFamily.kextIODVDStorageFamily.kext

我的假设是问题出在 xattr。

当我尝试运行以下命令并像其他文件一样添加 xattr 时:

sudo xattr -wx com.apple.rootless "`cat ~/Desktop/attribute`" IOCDStorageFamily.kext

我正进入(状态:

xattr: [Errno 1] Operation not permitted: 'IOCDStorageFamily.kext'

每个人都说这是 SIP,但我已经禁用 SIP csrutil status

System Integrity Protection status: disabled.

当我运行时,ls -lO我们会看到两个我关心的文件

drwxr-xr-x  3 mh    wheel  -          102 Dec 19 21:07 IOCDStorageFamily.kext
drwxr-xr-x  3 root  wheel  restricted 102 Dec 19 21:11 IODVDStorageFamily.kext
drwxr-xr-x@ 3 root  wheel  restricted 102 Jul 16  2017 IOFireWireAVC.kext

文件 1:我尝试与我的用户一起完成此操作。没有帮助。我也尝试删除“受限”,但也没有用。

文件 2:保持完整。仍然无法编辑 xattr

文件 3:另一个原始形式正常的文件。

帮助将不胜感激

(iMac 20" 2008 年初,High Sierra)

答案1

我在 MacOS 13.5.2 Ventura 上遇到了类似的问题。问题是我的终端应用程序 (iTerm2) 没有完全的磁盘访问权限。

要修复此问题,请转到系统设置 → 隐私和安全 → 完全磁盘访问。启用终端应用程序的复选框。它将重新启动终端,之后您将能够成功运行xattr所需的文件。

答案2

我遇到了类似的 xattr 问题。结果发现文件被锁定了。尽管我是所有者并具有读/写权限,但当文件被锁定时,我只有读取权限。我右键单击文件(在 Finder 中)>单击底部的锁定图标以便进行更改>打开“常规”部分>然后单击“锁定”按钮将其解锁。或者,如果您更喜欢终端,您可以尝试以下操作:SetFile -al file.ext。ref:在 OS X 上解锁“锁定”文件的命令 如果这对你不起作用那么参考:Sierra 上的 Mac OS X 锁定文件无法通过清除命令行上的不可变位来解锁

相关内容