J'ai une installation homebrew standard à l'intérieur de usr/local /
Quand j'essaye:
Larson-2:~ larson$ brew install postgresql
Error: Cannot write to /usr/local/Cellar
Et quand j'utilise Sudo:
Larson-2:~ larson$ Sudo brew install postgresql
Cowardly refusing to `Sudo brew install'
Qu'est-ce que je fais mal?
Vous avez en quelque sorte des autorisations limitées à /usr/local/Cellar
. Brew n'aime pas installer avec Sudo, raison pour laquelle il refuse.
Vérifiez les autorisations:
ls -ld /usr/local/Cellar
Ouvrez-les pour écrire:
Sudo chmod a+w /usr/local/Cellar
N'utilisez pas Sudo
lorsque vous travaillez avec brew
(pour des raisons de sécurité).
Vous devez configurer simplement vos autorisations.
Je voudrais donc aller encore plus loin et modifier les autorisations pour:
Sudo chgrp -R admin /usr/local /Library/Caches/Homebrew
Sudo chmod -R g+w /usr/local /Library/Caches/Homebrew
puis appliquez le groupe spécifique (admin
ou staff
) à l'utilisateur qui devrait être autorisé à utiliser la commande brew
. Vérifiez les groupes de vos utilisateurs via: id -Gn
).
S'il y a d'autres problèmes, exécutez: brew doctor
pour voir ce qui ne va pas.
Je changerais les permissions du groupe:
$ chgrp -R admin /usr/local/Cellar
$ chmod g+w /usr/local/Cellar
en supposant que votre compte d'utilisateur est dans le groupe admin.
Cela se produit également si vous avez plusieurs utilisateurs sur votre machine. Si tel est le cas, il serait préférable que vous changiez d'utilisateur, car chaque approche vous amènerait à jouer avec plus de fichiers et de dossiers que simplement/usr/local/Cellar
Utilisez su userWhoInstalledBrew
.
Le problème peut être résolu en changeant le propriétaire du répertoire en utilisateur actuel:
Sudo chown -R $USER /usr/local
Cette réponse est tirée de: https://github.com/Homebrew/homebrew/issues/17884