Mac Operation not permitted - /usr/bin/XXX

问题描述

安装cocoapods
sudo gem install cocoapods

提示:

ERROR: While executing gem … (Errno::EPERM)
Operation not permitted - /usr/bin/xcodeproj

解决方法

sudo gem install -n /usr/local/bin cocoapods

备注

OS X El Capitan中,在内核下引入了Rootless机制,以下路径:/System/bin/sbin/usr (except /usr/local)均属于Rootless范围,即使root用户无法对此目录有写和执行权限,只有Apple以及Apple授权签名的软件(包括命令行工具)可以修改此目录。

要么关闭Rootless(非开发者一般不推荐,或者建议执行后再次开启)附关闭方法:重启,开机按住Command + R,以Recovery分区启动,然后选择以下方式:图形化操作在Security Configuration中关闭Enforce System Integrity Protection命令行操作csrutil disable

出现如下提示的原因是:
OS X 10.11 中System Integrity Protection 的功能,阻止了写入的操作的,默认是开启的,需要关闭。

关闭方式:
重启电脑,长按Cmd+R,进入 Recovery 模式。然后打开终端工具 ,输入命令:csrutil disable,然后再次重启电脑即可。

再次开启:csrutil enable

但是关闭以后,10.11安全性方面的特性就不复存在了