chown: /usr/local: Operation not permitted

MacOS系统上使用Homebrew,会提示将/usr/local文件夹的属主设置当前用户才可正常使用:

sudo chown -R $(whoami) /usr/local 

这个命令在低版本的MacOS上完全没问题,在OSX 10.13或更高版本系统上执行,会提示:chown: /usr/local: Operation not permitted。原因是高版本的MacOS加强了系统的权限控制,默认打开“系统完整性保护”(System Integerity Protection, SIP)。SIP对系统做了某些强制保护,即使root账号也不能随意更改重要资源。

为了使用Homebrew,先将其禁用掉,步骤如下:

  1. 进入恢复模式:重启电脑,按住Command + R直到苹果logo出现;
  2. 在恢复模式界面,点击上方的“工具 | 终端”,打开终端;
  3. 终端中输入csrutil disable,关闭保护;
  4. 输入reboot或者左上角重启电脑。

关闭SIP保护后,sudo chown -R $(whoami) /usr/local命令执行正常。

留言评论

发表回复

您的电子邮箱地址不会被公开。 必填项已用*标注

Captcha Code