即使是 root 也无法编辑只读文件

koa*_*oan 4 macos

我正在尝试/System/Library/LaunchDaemons/com.apple.taskgated.plist在 OS X El Capitan 上进行编辑。文件权限是

-rw-r--r-- 1 root wheel 601 17 Nov 2015 com.apple.taskgated.plist

我的第一次尝试是编辑sudo vi (filename)后使用w!,但 vi 仍然报告只读状态。

我的第二次尝试是将 nano 与 sudo 一起使用 - 同样的问题。

我的第三次尝试是sudo su编辑文件 - 同样的问题。

我的第四次尝试是vi (filename),然后写入临时文件sudo cp (temp file) (filename)- 不允许操作。

我想知道 a) 如何解决问题 b) 我误解了什么 - 我以为我通过sudoor拥有完全的 root 访问sudo su权限,并且 root 对该文件有写权限......

use*_*274 10

除非您已经禁用System Integrity Protection,否则/System即使是 root 也无法写入目录树。

问题ls -lO /System(大写字母“哦”,不是零);如果您看到restricted,SIP 正在保护该目录树。

解决方案(来自链接的答案):

  1. 首次启动进入恢复模式(启动时使用 Command-R)
  2. 在终端中,发出 csrutil disable
  3. 重新启动到正常模式。您应该会看到 SIP 不再阻止写访问。

如果以后要恢复 SIP,只需csrutil enable在恢复模式下使用。