5 votes

Comment mettre à jour bash avec brew (erreur de permission) ?

Je travaille avec Yosemite (10.10.3) et j'aimerais faire une mise à jour. bash (à la version 4.x) et a trouvé ce poste . Après brew update Je l'ai fait. brew install bash mais obtenu :

==> Downloading https://homebrew.bintray.com/bottles/bash-4.3.33.yosemite.bottle.tar.gz
######################################################################## 100.0%
==> Pouring bash-4.3.33.yosemite.bottle.tar.gz
==> Caveats
In order to use this build of bash as your login shell,
it must be added to /etc/shells.
Error: An unexpected error occurred during the `brew link` step
The formula built, but is not symlinked into /usr/local
Permission denied - /usr/local/share/locale/af
Error: Permission denied - /usr/local/share/locale/af

Comment puis-je réparer cela ? I cd en /usr/local/share/locale mais le répertoire af n'existe pas. Pourquoi Brew essaie-t-il d'y accéder ?

Mise à jour

J'ai oublié de dire, si j'utilise sudo brew install bash Je reçois :

Error: Cowardly refusing to `sudo brew install`
You can use brew with sudo, but only if the brew executable is owned by root.
However, this is both not recommended and completely unsupported so do so at
your own risk.

0 votes

Ouvrez une fenêtre de terminal et sudo chown -R <votre nom d'utilisateur> /usr/local ?

4 votes

Ne faites pas cela. Vous ouvrez une importante faille de sécurité si vous le faites.

3voto

jherran Points 12554

Vous devez être sûr que le groupe de /usr/local et tout à l'intérieur est admin (Je suppose que votre nom d'utilisateur appartient à admin également). Si ce n'est pas le cas, corrigez-le avec :

sudo chown -R $USER:admin /usr/local

Vous devrez probablement faire de même sur /Library/Caches/Homebrew :

sudo chown -R $USER:admin /Library/Caches/Homebrew

0 votes

Bonjour, merci de votre aide. J'ai fait cela (oui, mon nom d'utilisateur appartient au groupe admin). Après cela, brew install bash a donné Warning: bash-4.3.33 already installed, it's just not linked . Mais brew link bash a donné Linking /usr/local/Cellar/bash/4.3.33... Error: Permission denied - /usr/local/share/locale/af . Comme je l'ai dit dans mon message, le sous-dossier af de /usr/local/share/locale n'existe pas. Dois-je le créer ? Pourquoi Brew veut-il installer/lien là-dedans ?

0 votes

Réinstallez-le. brew uninstall bash et ensuite brew install bash .

0 votes

... c'est exactement ce que j'ai essayé aussi. Et j'ai abouti au même résultat (obtention Error: An unexpected error occurred during the 'brew link' step à cause de l'erreur de permission refusée). J'ai installé beaucoup de choses avec brew et ça a toujours fonctionné. Mais le sous-répertoire af n'a jamais été créé, semble-t-il.

-1voto

user238759 Points 1

Cette ligne :

sudo chown -R $USER:admin /usr/local

Ça a marché pour moi.

0 votes

Bienvenue à Ask Different. Nous aimons que les réponses ne se résument pas à une simple ligne. Idéalement, vous devez expliquer pourquoi votre réponse est *bonne". Il est également utile de fournir des liens, des citations et/ou des captures d'écran. Veuillez consulter notre section d'aide Comment répondre sur la rédaction de bonnes réponses aux questions

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X