È necessario l'account amministratore per utilizzare shell come zsh e fish?

Ho una situazione strana. Sto utilizzando Mac OS X 10.11 (El Capitan) e iTerm2.

Zsh è elencato per impostazione predefinita in /etc/shells come /bin/zsh , e questo consente di utilizzare Zsh senza problemi sul mio account standard .

Tuttavia, quando creo brew install Zsh e quindi utilizzare chsh o System Preferences -> User Groups -> etc , ho un login: /usr/local/bin/zsh: Permission denied errore. Questo è dopo aver aggiunto /usr/local/bin/zsh a /etc/shells .

Ho affrontato lo stesso problema con Fish , che è in realtà la shell che preferirei utilizzare. Ora posso utilizzare la shell senza problemi quando sono su un account con accesso di amministratore, ma non posso utilizzare queste shell sul mio account standard.

Come ho già detto, i routes vengono aggiunti a /etc/shells e ho impostato le autorizzazioni a 755, ma non ho ancora fortuna.

Sto facendo qualcosa di sbagliato qui? O devo semplicemente utilizzare un account amministrativo per usufruire di queste conchiglie?

Ciò è veramente deludente, perché apprezzo la sicurezza aumentata di lavorare in un account standard, ma succhi non essere in grado di get le shell migliori al di fuori del mio account amministratore.


Voglio sottolineare che sono in grado di get Zsh che lavora sul mio account standard solo quando utilizza il path impostato per impostazione predefinita, che è /bin/zsh in /etc/shells . Questo mi fa domandare se c'è qualche problema con il path in /usr/local/bin/zsh .

Tuttavia, questo è il valore predefinito, quindi mi chiedo se ci sono altri che usano un account standard con pesce o un zsh preparato con successo.

Ho trovato poco su nessuna documentazione su questo.

Il tuo Homebrew è stato configurato per più utenti? In caso contrario, dare un'occhiata a questa semplice spiegazione: http://blog.strug.de/2012/06/my-homebrew-multi-user-setup/ .

Se è così, assicuratevi che il brew doctor buono per each utente che intendi dare l'accesso alla brew .


Se non si desidera impostare per più utenti e si desidera solo che zsh e il fish lavorino per più utenti, dovrai eseguire alcune autorizzazioni manuali.

Homebrew non si installa in /usr/local . "Homebrew installa i pacchetti nella propria directory e poi unisce i loro file in / usr / local". Quindi 755 perms su /usr/local/bin/fish sono inutili. Infatti, i simlinks dovrebbero essere impostati su 777 .

Dovrai seguire i collegamenti e impostare 755 sugli eseguibili effettivi invece. Inoltre, assicurati che tutti i dir che conducano ai simlinks siano impostati su +x modo che altri visualizzino i simlinks.

La citazione di cui sopra è dal sito web di Homebrew: brew.sh