Cuando trato de hacer esto:
brew install node
Recibo este mensaje:
/usr/local/Homebrew/Library/Homebrew/utils/lock.sh: line 19: /usr/local/var/homebrew/locks/update: Permission denied
-e:1:in `initialize': Bad file descriptor (Errno::EBADF)
from -e:1:in `new'
from -e:1:in `<main>'
Error: Another active Homebrew process is already in progress.
Please wait for it to finish or terminate it to continue.
Error: Permission denied - /usr/local/var/homebrew/locks/node.brewing
¿Alguna idea de cómo solucionar esto?
for file in
ls * lock; do mv $file $file.old; done
?locks
archivos tenían un propósito y eliminarlo es no la opción más segura.Como sugiere este hilo en algún momento, mi problema fue ejecutar el comando brew con privilegios de sudo por primera vez. Esto hace que brew intente acceder a archivos y carpetas privilegiados y falle. Si ese es su caso, ejecute estos comandos e intente instalar el nodo nuevamente.
sudo chown -R "$USER":admin /usr/local
brew cleanup
fuente
chown
trajo de vuelta toda la funcionalidad sin errores.ls -la /usr/local/
. Si no es así, intente agregar un asterisco para implicar todos los subarchivos (comosudo chown -R "$USER":admin /usr/local/*
).solo cierra la terminal y vuelve a abrir otra
fuente
Simplemente escriba lo siguiente en su terminal:
Esto debería solucionar cualquier problema. Siga el comando con:
Todo listo.
fuente
En mi caso en OSX, interrumpí la instalación del nodo y luego intenté iniciar la instalación del nodo nuevamente, así que obtuve el error mencionado en la pregunta.
Intenté los siguientes pasos de otras respuestas:
y
pero este mensaje aparece de nuevo, así que no sé si los pasos anteriores ayudaron.
Luego cerré la pestaña del terminal y en una nueva ejecuté
La instalación del nodo tardó 11 minutos
fuente
sudo chown -R "$USER":admin /usr/local/*
. Sin los asteriscos, no obtuve una expansión correcta y la mayoría de los subarchivos / carpetas no fueron tocados por el comando.Cambiar el permiso del archivo evitará este error:
Para problemas de permisos con la instalación o actualización de Homebrew:
Cambiar la configuración de permisos de homebrew
Luego ejecute la instalación o actualización de Homebrew
fuente
/usr/local/Homebrew
y/usr/local/var/homebrew
es exactamente lo que me ayudóNo sé qué estaba pasando. Mi única terminal activa estaba esperando entrada, no había trabajos ejecutándose en segundo plano. Acababa de intentar ejecutar una instalación de RVM que falló y me pidió que actualizara Homebrew, pero se suponía que debía terminar ya que el terminal estaba esperando una entrada. Después de varias invocaciones de comando de repetición y un par de minutos más tarde dejé de recibir el mensaje.
Esto es en Mac OSX 10.13.6 con iTerm2.
fuente