ОШИБКА: при выполнении gem... (Errno:: EPERM) Операция не разрешена

Я только что обновил свой Mac до OSX 10.11 El Capitan, и некоторые драгоценные камни не остались.

Проблема возникла, когда я попытался запустить установки разных драгоценных камней... например:

> sudo gem install compass

Как только я выполню, я получаю сообщение об ошибке:

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

Это происходит и с другими драгоценными камнями...

Я запустил Homebrew и попытался снова установить Ruby, но ничего не работает.

Ответ 1

Я нашел ответ на вопросы SASS. https://github.com/sass/sass/issues/1768

Очевидно, что с OSX el Capitan существует новая функция безопасности, которая мешает вам изменять системные файлы Rootless. Таким образом, у вас будет 2 варианта:

Если вы установите gems на /usr/local/bin, проблем не будет, поскольку rootless не влияет на этот путь.

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

Ответ 2

Эта проблема возникает из-за новой функции безопасности, называемой Защита целостности системы.

Вы можете отключить SIP, выполнив описанный ниже процесс:

  • Перезагрузите Mac в режим восстановления, перезагрузив компьютер и удерживая Command + R, пока на вашем экране не появится логотип Apple.
  • Нажмите "Утилиты" > "Терминал".
  • В окне терминала введите csrutil disable и нажмите Enter.
  • Перезагрузите Mac.