ERROR: While executing gem … (Errno::EPERM) Operation not permitted [duplicate]

和自甴很熟 提交于 2019-11-27 04:09:19

问题


I just updated my Mac to OSX 10.11 El Capitan and some gems didn't remain.

The problem arose when I tried to run installations of different gems... e.g.:

> sudo gem install compass

Once I execute, I get the error:

> ERROR:  While executing gem ... (Errno::EPERM) Operation not permitted

This happens with other gems, as well...

I've run Homebrew and tried to install Ruby again, but nothing is working.


回答1:


I found the answer on SASS issues.. https://github.com/sass/sass/issues/1768

Apparently with OSX el Capitan, there is a new security function that prevents you from modifying system files called Rootless. So you'll have 2 options:

If you install gems on /usr/local/bin there will be no problem because rootless doesn't affect this path.

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




回答2:


You are experiencing this issue because of a new security feature called System Integrity Protection

You can disable SIP by following the process mentioned below:

  1. Reboot your Mac into Recovery Mode by restarting your computer and holding down Command+R until the Apple logo appears on your screen.
  2. Click Utilities > Terminal.
  3. In the Terminal window, type in csrutil disable and press Enter.
  4. Restart your Mac.


来源:https://stackoverflow.com/questions/32891965/error-while-executing-gem-errnoeperm-operation-not-permitted

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!