ruby permissions rvm homebrew

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



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 .