1 安装个python的etcd模块报错,那红红的一串很是好看。。。

故障描述: 就是这种权限报错OSError: [Errno 1] Operation not permitted ,原因如下

Mac现在系统有个称为SIP的机制(System Integrity Protection),默认下系统启用SIP系统完整性保护机制,无论是对于硬盘还是运行时的进程限制对系统目录的写操作,macosx 10.11 EI Capitan使用了Rootlees,可以理解为一个更高等级的内核保护,系统会默认锁定/system , /sbin , /usr这三个目录,所以安装的时候会报这个错误

解决方法:

  • 很魔性

    1
    2
    
    pip install etcd --user U
    #基于用户的权限来安装模块包,这样问题就解决了
    
  • 很粗暴(没尝试,也不推荐)

    1
    2
    
    csrutil status
    #需要进入macos的recovery模式终端进行修改csrutil enable