美文网首页
Mac下使用sudo提示permission denied的解决

Mac下使用sudo提示permission denied的解决

作者: 转角遇到猫 | 来源:发表于2017-11-19 18:34 被阅读0次

最近给自己的macbook升级了系统之后居然发现了一个诡异问题。

系统默认安装的six(python库)居然不能够升级,使用sudo( All:(All,ALl))提示我权限不足。在类Unix系统里居然没有办法完全管理自己的计算机,真的不是在逗我玩嘛。

当然我可以选择使用virtuallenv来安装python的多环境配置,可是自己的计算机居然不在自己的掌控之下,感觉实在是不爽.

既然是拿来作开发机,总要研究清楚,终于不断的google中终于找到了解决方案。

结果发现苹果坑爹的在新版本系统中加入了一个rootless(SIP)的机制。

SIP的基本目的就是为了防止程序获取root权限,对几个系统关键目录做出修改。确实能够起到一定的保护作用。

被保护的目录主要是以下几个目录:

  • /System
  • /usr
  • /bin
  • /sbin
    以及预安装的app(比如Appstore,iTunes等等)

如果你想要自己修改下面这些目录的内容,就需要关闭内核里面的SIP,也就是System Integrity Protection的服务。

方法如下:

  1. 重启电脑,并且按下command+R,直到苹果logo出现。这个时候就会进入到Recoverty Mode。
  2. 选择一个语言。
  3. 进入恢复模式后,在上面的菜单找到实用程序(Utilities),在里面找到终端(Terminal)
  4. 打开终端输入以下指令,关闭SIP
csrutil disable
  1. 重启你的电脑,收工。

参考资料:

https://apple.stackexchange.com/questions/208478/how-do-i-disable-system-integrity-protection-sip-aka-rootless-on-os-x-10-11

https://support.apple.com/en-us/HT204899

相关文章

网友评论

      本文标题:Mac下使用sudo提示permission denied的解决

      本文链接:https://www.haomeiwen.com/subject/lgjpvxtx.html