Come riparare e / o reinstallare Homebrew in modo sicuro?


14

Sto cercando di riparare Homebrew.

Di recente ho provato a reinstallarlo, ma quando ho digitato "brew doctor"

La mia uscita è stata:

shell-init: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
chdir: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
chdir: error retrieving current directory: getcwd: cannot access parent directories: No such file or directory
The current working directory doesn't exist, cannot proceed.

Ho provato a reinstallarlo digitando di nuovo questo nella riga di comando:

ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

Ma il mio output è:

It appears Homebrew is already installed. If your intent is to reinstall you
should do the following before running this installer again:
rm -rf /usr/local/Cellar /usr/local/.git && brew cleanup

Come posso riparare la mia installazione di Homebrew?


3
Perché non leggi il tuo output? Spiegherà abbastanza bene.
jherran,

Ad oggi, ho lo stesso problema descritto nel post originale. Ho la sensazione che sia iniziato subito dopo aver aggiornato OS X a 10.11.2 tramite l'App Store. Indipendentemente da quali parametri vengano passati a produrre, sia esso "medico", "pulizia" ecc., Tutti producono lo stesso risultato. Almeno l'istruzione "pulizia della birra" non può quindi essere seguita. Questo potrebbe essere stato causato dal SIP di OS X? Qualcuno ha qualche altra idea?
Axel Kirch,

Benvenuti a chiedere diverso. ci sono due opzioni: potresti fare un seguito sulla domanda che mostra i risultati del rm comando o possiamo votare / promuoverlo con le modifiche. Inoltre - potresti chiedere - come posso sapere se SIP sta influenzando un compito specifico. è responsabile e sembra un po 'oltre lo scopo di questa domanda, quindi sarò felice di rispondervi altrove. La risposta è quasi sicuramente "no" nel caso dell'homebrew.
bmike

Risposte:


17

Perché non fai quello che dice?

rm -rf /usr/local/Cellar /usr/local/.git && brew cleanup
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"

La prima riga eliminerà completamente l'homebrew e dovresti riuscire a reinstallarlo.

NOTA: in questo caso dovrai reinstallare tutte le cose che hai installato tramite homebrew.


Grazie. Per qualche ragione quando ho fatto "brew install php54 --with-fpm --with-imap --without-apache --with-debug" mi stava dando il primo errore di output dal mio post. Quando ho provato a usare "ruby -e" $ (curl -fsSL raw.githubusercontent.com/Homebrew/install/master/install ) "" mi ha dato il secondo errore di output. Riavviare il mio computer e fare ciò che mi hai detto di fare mi ha davvero aiutato. Grazie!
AndrewMRiv,

Se si utilizza rvm fallisce con qualche errore ruby ​​"immagine non trovata"; assicurati di usare sys ruby:/usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
tutuDajuju

16

Questo mi è successo perché avevo due schede aperte nella mia console. Nella Console AI ho rimosso l'attuale directory di lavoro della Console B. Quindi, senza pensarci, ho corso brew upgradenella Console B. Naturalmente ha gettato l'errore sopra.

Soluzione semplice: solo cdin un'altra directory nella Console B e di brew upgradenuovo.

Io e la mia infinita saggezza.


2
questa è la risposta corretta
Tamas Kalman,

1
Oh, parola mia - forse dovrei reinstallare tutto sotto brew prima di eseguire il cd-ing in un'altra directory. Sì, questa dovrebbe essere la risposta corretta.
DanSingerman

0

Se nella tua installazione homebrew hai installato anche strumenti XCode sul tuo Mac potresti dover semplicemente chiudere la finestra del terminale e aprirne uno nuovo :)

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.