Estaba instalando nodejs para Symphony cuando recibí el error "Operación no permitida". Alguien sabe por qué sucedió esto?
MacBook-Pro-de-XXX: ~ XXX $ sudo ln -s / usr / local / bin / node / usr / bin / node
Contraseña:
ln: / usr / bin / node: operación no permitida
Respuestas:
Este es el modo denominado "sin raíz" en la nueva versión de OS X. Efectivamente, hace que ciertos directorios del sistema sean de solo lectura (incluso para administradores). "/ usr" es uno de esos directorios protegidos (el único subdirectorio que se excluye de esta regla es "/ usr / local")
Uno puede deshabilitar este modo sin raíz con los siguientes comandos:
¡Pero esto no es recomendable! La mejor práctica es instalar cosas personalizadas solo para "/ usr / local".
Actualización (27-oct-15): 10.11 (El Capitan) Lanzamiento público
Tenga en cuenta que la solución descrita anteriormente ya no funcionará con el lanzamiento público de El Capitan ya que Apple ha cambiado las cosas.
La forma correcta de deshabilitar el modo "sin raíz" (también conocido como Protección de integridad del sistema, "SIP") es iniciar temporalmente en el modo Recuperar (mantener presionado Comando + R durante el inicio) y usar el
csrutil disable
comando (ocsrutil enable
volver a habilitar) desde la Terminal. Se puede acceder al terminal a través del menú del instalador que se inicia en modo de recuperación.fuente
/usr/texbin
, ¡así que vamos!Operation not permitted
En mi versión de El Capitan, el
/bin
directorio no existía:/usr/local/bin
Entonces, la solución fue:
mkdir -p /usr/local/bin
El
-p
indicador creará el directorio (y, por cierto, cualquier directorio en la ruta completa) si no existe.Luego, puede crear enlaces simbólicos y copiar aplicaciones
/usr/local/bin
porque/usr/local
no forma parte del modo "sin raíz".fuente