web-dev-qa-db-fra.com

Installation dans les erreurs Homebrew

Essayer d’installer rvm et Ruby 1.9.2

J'ai déjà installé homebrew et git, mais je n'ai pas pu obtenir de mises à jour complètes car je continuais à avoir des erreurs d'autorisation. Réinstallez Snow Leopard et réparez les autorisations.

Maintenant cela arrive ...

$ brasser installer wget

Erreur: impossible d'écrire dans/usr/local/Cellar

113
Ibrahim

Sudo chown -R $USER /usr/local

Vous devrez vous rendre propriétaire de /usr/local/ en utilisant cette ligne juste là. Je devais le faire moi-même après avoir utilisé le Ruby une ligne dans le haut de la documentation officielle pour installer Homebrew. Cela a fonctionné comme un charme pour moi. Ce devrait être le seul moment où vous jamais besoin de Sudo avec Homebrew.

Je ne sais pas si le Ruby one-liner] le fait. Si c'est le cas, quelque chose d'autre sur mon système a pris le contrôle de /usr/local puisque.

Edit : J'ai complètement manqué cela, mais @ samvermette n'a pas (voir les réponses à ma réponse): si vous exécutez ceci commande ci-dessus et installez quelque chose via homebrew qui nécessite des autorisations utilisateur spéciales, comme mysql, assurez-vous de leur redonner ces autorisations (car la commande ci-dessus donne une propriété récursive à tout ce qui se trouve à l'intérieur de /usr/local à toi ($USER). Dans le cas de mysql, c'est…

Sudo chown -RL mysql:mysql /usr/local/mysql/data

275
Ben Kreeger

J'ai eu ce problème après la mise à niveau vers Mavericks, et cette page était le premier résultat de recherche lorsque nous avons recherché le message d'erreur dans Google. Je continuai à chercher et trouvai cette réponse sur stack overflow.com . En bref, c'est:

Sudo chmod a+w /usr/local/Cellar

Cela corrigeait le problème pour moi, et comme il ne modifiait que les autorisations pour le chemin spécifique référencé dans le message d'erreur, il semblait improbable que celui-ci ait des effets indésirables avec d'autres installations.

Je mets cette réponse ici pour tous ceux qui trouveront cette page en premier comme moi. Cependant, le crédit devrait aller à jdi .

40
Nathan

Vous pouvez autoriser uniquement les utilisateurs Admin à écrire 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

Depuis, chaque utilisateur appartenant au groupe d’administrateurs pourra installer de nouvelles dépendances.

11
swilgosz

Sur High Sierra, vous avez besoin de la commande suivante, car chown ne fonctionnera pas:

Sudo chown -R $ (whoami) $ (infusion - préfixe)/*

Lien:

https://github.com/Homebrew/brew/issues/3228

5
Metodij Zdravkin

désinstaller et réinstaller HomeBrew qui fera l'affaire

2
Ricardo Marin

Je suggère de veiller à ce que l'utilisateur actuel soit membre du groupe propriétaire de/usr/local. Je crois que par défaut, ce groupe est wheel. Pour devenir membre de ce groupe:

$ Sudo dscl . append /Groups/wheel GroupMembership $USER

Bien qu’il s’agisse d’un marteau inélégant, il a l’effet recherché: permettre l’accès aux éléments de /usr/local qui sont uniquement destinés à être utilisés (lecture/écriture) par des membres élevés. Cette approche présente les avantages de l’autre ci-dessus, car elle tire parti des appartenances aux groupes, ce qui permet à plusieurs utilisateurs (autorisés) du système d’utiliser homebrew.

1
Jason R. Coombs

Comment avez-vous installé Homebrew? Leurs instructions d'installation officielles incluent l'exécution d'un script Ruby. Cela devrait régler les problèmes d'autorisation pour vous.

Si vous ne souhaitez pas exécuter de script, une section de cette page intitulée "Installation sur/usr/local pour les développeurs" explique le changement des autorisations nécessaires pour le répertoire/usr/local.

0
jhuebsch