L'homebrew non collegherà git


11

Quando ho installato git o aggiornato git tramite brewnon sono riuscito a collegarlo brew link git. Se provo sudo brew link gitottengo:

rifiutando codardamente di fare il collegamento della birra sudo

Dice che devo controllare le autorizzazioni su:

/usr/local/share/gitk/lib
/usr/local/share/git-gui/lib
/usr/local/share/git-core/templates
/usr/local/share/git-core/templates/hooks
/usr/local/share/git-core

Ho chmodaggiunto tutto a 777 ma non sono sicuro che sia buono.

Ora posso collegare git. Devo cambiare l'autorizzazione in qualcosa di meno permissivo?

Risposte:


5

777 permessi non sono necessariamente male qui - probabilmente non incontrerai mai problemi di permessi, e non è un grosso problema di sicurezza direi.

Ad ogni modo, le autorizzazioni "normali" richieste da /usr/local/shareHomebrew dovrebbero essere (ricorsivamente) 755, quindi rwxr-xr-x.

chmod -R 755 /usr/local/share

Almeno brewnon dovrebbero aver bisogno dei permessi sudo per fare qualsiasi cosa lì dentro. È di /usr/localproprietà di solo root, ma scrivibile per il staffgruppo in cui l'utente dovrebbe trovarsi.

Per correggere le installazioni di Homebrew esistenti, dai un'occhiata a questa sintesi , che è uno script che tenterà di correggere le tue /usr/localautorizzazioni.


Ad esempio, ecco l'elenco di directory di una delle mie (sane) installazioni Homebrew con ghostscriptl'unica eccezione che necessitava di sudo brew link:

aeneas:local werner$ ls -la /usr/local/share/
total 40
drwxr-xr-x  11 werner  staff  374 Mar  5 14:53 .
drwxrwxr-x  14 werner  staff  476 Feb 28 12:51 ..
drwxr-xr-x   6 werner  staff  204 Mar  5 14:54 aclocal
drwxr-xr-x   8 werner  staff  272 Mar  5 14:53 doc
lrwxr-xr-x   1 werner  staff   34 Feb  8 12:26 ffmpeg -> ../Cellar/ffmpeg/0.10/share/ffmpeg
drwxr-xr-x   4 werner  wheel  136 Apr 16  2010 ghostscript
lrwxr-xr-x   1 werner  staff   36 Mar  5 14:53 git-core -> ../Cellar/git/1.7.9.2/share/git-core
lrwxr-xr-x   1 werner  staff   35 Mar  5 14:53 git-gui -> ../Cellar/git/1.7.9.2/share/git-gui
lrwxr-xr-x   1 werner  staff   32 Mar  5 14:53 gitk -> ../Cellar/git/1.7.9.2/share/gitk
lrwxr-xr-x   1 werner  staff   34 Mar  5 14:53 gitweb -> ../Cellar/git/1.7.9.2/share/gitweb
drwxr-xr-x   9 werner  staff  306 Mar  5 14:53 man

Per ulteriori passaggi di diagnosi, eseguire brew doctor.
slhck

Sfortunatamente, il medico della birra non fornisce alcuna informazione utile in questo caso. L'essenza menzionata ha risolto un problema simile per me, grazie :)
TheDeadSerious

una volta installato brew non ho avuto bisogno di usare sudo per quasi tutto. Forse hai fatto qualcosa che non avresti dovuto avere ad un certo punto che ha ottenuto i permessi e la proprietà fuori di testa?
dstarh,

@dstarh Di solito è questo il problema. In questi giorni Homebrew non dovrebbe fare nulla quando sudoviene utilizzato.
Slhck,

Perché Homebrew non ci consente di usare sudo? Continuiamo a dover pasticciare con le nostre autorizzazioni per collegare le cose quando dovrebbe permetterci di farlo proprio sudo brew link [package]come apt-get. Copio da solo le biblioteche dalla cantina ogni volta che voglio aggiornare qualcosa invece di provare a gestirlo.
sudo,

0

Non ho ancora provato l'essenza, ma ho provato a chmod 775nella cartella. Poiché di proprietà root:wheelnon può essere modificato. Ho fatto riferimento a un sito giapponese.

sudo chown yourusername:admin -R /usr/local/share/ghostscript
brew link ghostscript
brew doctor

allora funziona per me sopra.

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.