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,先将其禁用掉,步骤如下:
- 进入恢复模式:重启电脑,按住
Command + R
直到苹果logo出现; - 在恢复模式界面,点击上方的“工具 | 终端”,打开终端;
- 终端中输入
csrutil disable
,关闭保护; - 输入
reboot
或者左上角重启电脑。
关闭SIP保护后,sudo chown -R $(whoami) /usr/local
命令执行正常。