解决mac osx下pip安装ipython权限的问题

这两天又把家里的mac的系统给重装了,重装的原因是我乐意…    其实理由很简单,本人想写个mac osx系统的使用文档,当然是初级的那种…  尼玛还没意气风发就狼狈不堪了…


该文章写的有些乱,欢迎来喷 ! 另外文章后续不断更新中,请到原文地址查看更新。

http://xiaorui.cc/?p=3061


各种的新mac其我也用过不少,自己或帮助别人配置了不少环境…   今天就遇到一个十分纠结的问题.

就是想装个python的交互组件ipython、gevent而已….


下面是pip install gevent的错误提示, 又是 Operation not permitted …

其实权限问题… OSError: [Errno 1] Operation not permitted ,   各种的root都不可以,想到了一个粗暴的方式,直接针对share进行chmod的授权。  结果… 提示root也是没有权限操作系统的目录。   我突然发觉肯定是新版的osx有了某种机制制止我们直接的修改/System文档数据。 


google了后,发现果然如我的所料….  新系统有个叫sip的机制。 你暂时不能直接在终端进行 csrutil disable 会出现错误提示,引导你去mac osx的恢复模式进行操作。 

由于El Capitan引入了SIP机制(System Integrity Protection),默认下系统启用SIP系统完整性保护机制,无论是对于硬盘还是运行时的进程限制对系统目录的写操作。 这也是我们安装ipython失败的原因….

现在的解决办法是取消SIP机制,具体做法是:

重启电脑,按住Command+R(直到出现苹果标志)进入Recovery Mode(恢复模式)
左上角菜单里找到实用工具 -> 终端
输入csrutil disable回车
重启Mac即可
如果想重新启动SIP机制重复上述步骤改用csrutil enable即可

我们现在再看看sip的状态, 这样再安装ipython、gevent再也不会提示无法写入的权限提示了/

如果在mac下碰到OSError: [Errno 1] Operation not permitted:的问题,就算用sudo 也无法解决,那肯定是sip在作怪了.


胡阳大哥给出一个优雅的方案,大家可以使用下. 基于用户的权限来安装模块包显得更加合理。 

pip install ipython --user -U 


  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值