Я устанавливал nodejs для Symphony, когда обнаружил ошибку «Операция не разрешена». Кто-нибудь знает, почему это произошло?
MacBook-Pro-de-XXX: ~ XXX $ sudo ln -s / usr / local / bin / node / usr / bin / node
Пароль:
ln: / usr / bin / node: операция не разрешена
Ответы:
Это так называемый режим без прав доступа в новой версии OS X. Он эффективно делает определенные системные каталоги доступными только для чтения (даже для администраторов). «/ usr» является одним из этих защищенных каталогов (единственный подкаталог, который исключен из этого правила, это «/ usr / local»)
Можно отключить этот режим без root с помощью следующих команд:
Но это не рекомендуется! Лучше всего устанавливать пользовательские файлы только в "/ usr / local".
Обновление (27 октября-15): 10.11 (Эль-Капитан) Публичный релиз
Обратите внимание, что описанный выше обходной путь больше не будет работать с публичной версией El Capitan, поскольку Apple изменила положение вещей.
Правильный способ отключить «безродный» режим (он же System Integrity Protection, «SIP») - это временно загрузиться в режиме восстановления (удерживая Command + R во время загрузки) и использовать
csrutil disable
команду (илиcsrutil enable
для повторного включения) из Терминала. Терминал доступен через меню установщика, который запускается в режиме восстановления.источник
/usr/texbin
, так что поехали!Operation not permitted
В моей версии El Capitan этот
/bin
каталог не существует:/usr/local/bin
Итак, исправление было:
mkdir -p /usr/local/bin
-p
Флаг будет создавать директории (и , кстати , какие каталоги в полном пути) , если она не существует.Затем вы можете создавать символические ссылки и копировать приложения,
/usr/local/bin
потому что они/usr/local
не являются частью режима «без рута».источник