Wie man Homebrew-Berechtigungen repariert?
Habe ich deinstalliert und installiert Homebrew-3 mal jetzt, weil es scheint nie erlauben Sie mir, etwas zu installieren, da verweigert er mir die Berechtigungen am Ende der meisten Installationen.
Als Beispiel werde ich dies posten, libjpeg download Szenario, das ich derzeit vor.
Ich versuche zu installieren, libjpeg und erhalten:
$ brew install libjpeg
==> Downloading https://downloads.sf.net/project/machomebrew/Bottles/jpeg-8d.mountain_lion.bottle.1.tar.gz
Already downloaded: /Library/Caches/Homebrew/jpeg-8d.mountain_lion.bottle.1.tar.gz
==> Pouring jpeg-8d.mountain_lion.bottle.1.tar.gz
Warning: Could not link jpeg. Unlinking...
Error: The brew link step did not complete successfully
The formula built, but is not symlinked into /usr/local
You can try again using `brew link jpeg'
Error: Permission denied - /usr/local/opt/jpeg
'brew link jpeg, die Ergebnisse im
Error: Permission denied - /usr/local/opt/jpeg
Hier ist, was meine brauen Arzt liest
$ brew doctor
Warning: "config" scripts exist outside your system or Homebrew directories.
./configure scripts often look for *-config scripts to determine if
software packages are installed, and what additional flags to use when
compiling and linking.
Having additional scripts in your path can confuse software installed via
Homebrew if the config script overrides a system or Homebrew provided
script of the same name. We found the following "config" scripts:
/Library/Frameworks/Python.framework/Versions/2.7/bin/python-config
/Library/Frameworks/Python.framework/Versions/2.7/bin/python2-config
/Library/Frameworks/Python.framework/Versions/2.7/bin/python2.7-config
Warning: You have unlinked kegs in your Cellar
Leaving kegs unlinked can lead to build-trouble and cause brews that depend on
those kegs to fail to run properly once built. Run brew link on these:
jpeg
Diese Erlaubnis wurde gemacht es unmöglich zu brauen über alles und ich würde wirklich zu schätzen, Anregungen.
InformationsquelleAutor der Frage Saturnino | 2013-05-08
Du musst angemeldet sein, um einen Kommentar abzugeben.
Konnte ich lösen das problem, indem Sie
chown
auf den Ordner:Auch du wirst (wahrscheinlich die meisten) haben, das gleiche zu tun auf
/Library/Caches/Homebrew
:Anscheinend hatte ich
sudo
vor in einer Weise verändert, dass meine Ordner die Berechtigung auf/usr/local
von hier aus auf "weiterleiten" werden alle Anlagen mit brew haben sich als erfolgreich erwiesen.
Diese Antwort kommt mit freundlicher Genehmigung von gitHub homebrew issue-tracker
InformationsquelleAutor der Antwort Saturnino
Als erste option zu wem auch immer, landet hier, wie ich, Folgen, was dies deutet darauf hin, dass Sie tun:
Es ist der sicherste Pfad, und unter anderem, schlug er mir zu:
denen gelöst, dass Problem mit Berechtigungen.
Der OP genau das getan, aber offenbar nicht den obigen Vorschlag; Sie könnte, und es ist immer besser, dort zu starten.
InformationsquelleAutor der Antwort Nycen
Neuen Befehl für Benutzer auf macOS High Sierra, wie es nicht möglich ist
chown
auf/usr/local
:sudo chown -R $(whoami) $(brew --prefix)/*
Referenz: https://github.com/Homebrew/brew/issues/3228
InformationsquelleAutor der Antwort andrewwong97
Hatte ich dieses Problem ..
Eine funktionierende Lösung ist, ändern Sie das Eigentum
/usr/local
zum aktuellen Benutzer und nicht
root
durch:Aber eigentlich ist dies nicht ein richtiger Weg. Vor allem, wenn Ihr Rechner ein server oder mehrere Benutzer.
Mein Vorschlag ist die änderung der Eigentumsverhältnisse wie oben und tun Sie, was Sie umsetzen wollen, mit Brauen .. ( update, install, ... etc ) dann wieder in das Eigentum wieder zurück zu root:
Das würde das Problem lösen und halten Besitz setzen, in das richtige set.
InformationsquelleAutor der Antwort Maher Abuthraa
Befehl von oben-gewählt Antwort nicht für mich arbeiten.
Bekam Ausgabe:
Dieser Befehl funktioniert gut (Gruppe für " /usr/local war
admin
schon):InformationsquelleAutor der Antwort skywinder
Wenn Sie auf die High Sierra, /usr/local kann nicht mehr chown würde. Sie verwenden können:
sudo chown -R $(whoami) $(brew --prefix)/*
InformationsquelleAutor der Antwort Richard
Wenn Sie gerne etwas gezielter Vorgehen, als die Decke
chown -R
können Sie finden dasUpdate-homebrew
Skript nützlich:Anstatt das zu tun einen
chmod
Ihrem Benutzer, gibt es dieadmin
Gruppe (zu denen Sie vermutlich gehören) Schreibzugriff auf bestimmte Verzeichnisse in/usr/local
dass homebrew verwendet. Es sagt Ihnen auch genau, was Sie zu tun beabsichtigt, bevor es zu tun.InformationsquelleAutor der Antwort darco
Diese das Problem gelöst, Vordergrund mir.
InformationsquelleAutor der Antwort Fardin
Alle diese Vorschläge funktionieren könnten. In der neuesten version von brew Arzt, bessere Vorschläge gemacht wurden obwohl.
Erstens - fix das Chaos haben Sie wahrscheinlich bereits aus
/usr/local
durch ausführen in die Befehlszeile ein:sudo chown -R root:wheel /usr/local
Dann in Besitz nehmen die Wege, die spezifisch für diesen Benutzer:
Alle diese Informationen sind verfügbar, wenn Sie Sie ausführen
sudo brew update
und dann Lesen Sie alle Warnungen und Fehler, die Sie in...InformationsquelleAutor der Antwort Max Dercum
Ich mein Problem gelöst mit den folgenden Befehlen:
InformationsquelleAutor der Antwort hardc0der
Ich wollte nicht den dreck, um mit Ordner-Berechtigungen, aber ich habe die folgenden:
brew doctor
brew upgrade
brew cleanup
Dann konnte ich weiterfahren mit der Installation meine anderen brew-Formel erfolgreich.
InformationsquelleAutor der Antwort Anthony To
Es ist ein killer-Skript auf github, dass Updates, die Berechtigungen auf /usr/local und brew-Verzeichnisse für jeden zugänglich, der Mitglied der "admin" Gruppe.
https://gist.github.com/jaibeee/9a4ea6aa9d428bc77925
Dies ist eine bessere Lösung als die gewählte Antwort, denn wenn Sie mit chown /usr/local/___ Verzeichnisse, $USER, dann brechen Sie alle anderen admin-Nutzer von homebrew auf der Maschine.
Hier sind die Eingeweide des Skripts an der Zeit, die ich gepostet:
InformationsquelleAutor der Antwort TheProletariat
Wenn Sie nicht über die neueste Homebrew: ich "fixiert", das in der Vergangenheit durch Zwang Homebrew als root laufen, was nur getan werden könnte, durch änderung der Besitz des Homebrew ausführbare Dateien für root. An einem gewissen Punkt, Sie entfernt diese Funktion.
Und ich weiß, Sie werden viele Warnungen, die sagen, es sollte nicht als root laufen, aber c ' Mon, es funktioniert nicht anders.
InformationsquelleAutor der Antwort sudo
Habe ich versucht, alles auf dieser Seite, landete ich mit dieser Lösung:
brew uninstall --force brew-cask; brew untap $tap_name; brew update; brew cleanup; brew cask cleanup;
Meine situation war ähnlich wie der OP, aber mein Problem wurde insbesondere verursacht durch ausführen von sudo mit brew cask, und dann immer mein Passwort falsch. Nach diesem, ich steckte mit den Berechtigungen, die die installation verhindert.
InformationsquelleAutor der Antwort Alpha G33k
versuchen, auch diesen Befehl ausführt,
sudo chmod +t /tmp
InformationsquelleAutor der Antwort bashar