ruby - Instalación en errores Homebrew
permissions rvm (8)
Intentando instalar rvm y ruby 1.9.2
Ya instalé homebrew y git, pero no pude obtener actualizaciones completas porque seguí recibiendo errores de permiso. Reinstaló Snow Leopard y reparó los permisos.
Ahora esto sucede ...
$ brew install wget
Error: No se puede escribir en / usr / local / Cellar
sudo chown -R $USER /usr/local
Tendrás que ser propietario de /usr/local/
usando esa línea allí mismo. Tuve que hacer esto yo mismo después de usar el ruby one-liner en la parte superior de los documentos oficiales para instalar Homebrew. Funcionó como un encanto para mí. Debería ser el único momento en el que necesite sudo
con Homebrew.
No estoy seguro si el Ruby One-Liner hace esto. Si lo hizo, entonces algo más en mi sistema tomó el control de /usr/local
desde entonces.
Editar : Me lo perdí por completo, pero @samvermette no (ver respuestas a mi respuesta): si ejecutas este comando arriba y tienes algo instalado a través de homebrew que requiere permisos especiales de usuario, como mysql
, asegúrate de devolver esos permisos ( como el comando anterior otorga propiedad recursiva a todo lo que está dentro /usr/local
para usted ( $USER
). En el caso de mysql, es ...
sudo chown -RL mysql:mysql /usr/local/mysql/data
¿Cómo instalaste Homebrew? Sus instrucciones de instalación oficiales incluyen ejecutar un script de ruby. Eso debería encargarse de los problemas de permisos para usted.
Si no desea ejecutar un script, hay una sección de esa página llamada "Instalar en / usr / local para desarrolladores" que explica el cambio en los permisos necesarios para el directorio / usr / local.
Desinstalar y reinstalar HomeBrew que hará el truco
En High Sierra necesita el siguiente comando porque chown no funcionará:
sudo chown -R $ (whoami) $ (brew --prefix) / *
Enlazar:
Puede permitir solo a los usuarios de Admin escribir en /usr/local/
?
chgrp -R admin /usr/local
chmod -R g+w /usr/local
chgrp -R admin /Library/Caches/Homebrew
chmod -R g+w /Library/Caches/Homebrew
Dado que cada usuario que pertenece al grupo de administración, podrá instalar nuevas dependencias.
Sugiero garantizar que el usuario actual sea miembro del grupo que posee / usr / local. Creo que por defecto, ese grupo es wheel
. Para hacerse miembro de ese grupo:
$ sudo dscl . append /Groups/wheel GroupMembership $USER
Aunque es algo así como un martillo poco elegante, tiene el efecto deseado, lo que permite el acceso a elementos en /usr/local
que están destinados únicamente para su uso (lectura / escritura) por miembros elevados. Este enfoque tiene los beneficios del otro anterior porque aprovecha las membresías del grupo, permitiendo que múltiples usuarios (autorizados) en el sistema utilicen homebrew.
También puede evitar este error si ejecuta el comando con sudo:
$ sudo brew install wget
Pero cuídate de usar sudo
porque puedes cometer muchos errores.
Tuve este problema después de actualizar a Mavericks, y esta página fue el resultado de búsqueda superior al buscar en Google el mensaje de error. Continué buscando y encontré esta respuesta en .com . En pocas palabras, es:
sudo chmod a+w /usr/local/Cellar
Esto me solucionó el problema, y como solo cambia los permisos para la ruta específica a la que se hace referencia en el mensaje de error, parecía poco probable que tuviera efectos secundarios negativos con otras instalaciones.
Estoy poniendo esta respuesta aquí para cualquier persona que pueda encontrar esta página primero como lo hice. Sin embargo, el crédito debería ir a jdi .