Zmień domyślną powłokę z bash na zsh

25

Próbowałem przełączyć moją domyślną powłokę sięzsh , używając chsh:

chsh -s /bin/zsh

i:

chsh -s `which zsh` 

Oba polecenia zakończyły się na:

Changing shell for adamatan.
Password for adamatan:
chsh: Operation is not supported by the directory node.  Operation is not supported by the directory node.
chsh: no changes made

Jak mogę zmienić domyślną powłokę w OSX Lion?

Adam Matan
źródło
Czy możesz edytować swój post, aby potwierdzić (lub zaprzeczyć), że jesteś (lub nie jesteś) użytkownikiem sieci w katalogu?
jnovack
Próbowałem z Sierra (10.12) i to działa.
Ɱark Ƭ
Nawiasem mówiąc, od MacOS Catalina The domyślna powłoka to zsh .
Basil Bourque,

Odpowiedzi:

40

macOS Catalina i nowsze wersje (10.15+)

Jabłko zastąpiony bash z zsh jako domyślnej powłoki. Zobacz artykuł .

Więc nie musisz nic robić.

Możesz zweryfikować domyślną powłokę, wpisując echo $0terminal.

macOS Mojave i wcześniejsze (10.14-)

Zobacz stronę pomocy technicznej Apple. Użyj zsh jako domyślnej powłoki na komputerze Mac

Zaskakujące, że nie działa to z narzędziami wiersza poleceń, jak można się spodziewać. Należy to zrobić za pomocą aplikacji Preferencje systemowe .

Poniższe kroki dotyczą wielu wersji systemu Mac OS X do wersji co najmniej 10.11 ( El Capitan ).

  1. Otwórz panel „Użytkownik i grupy” w aplikacji „Preferencje systemowe”.
  2. Upewnij się, że panel jest odblokowany (lewy dolny róg)
  3. Wciśnij Control i kliknij swoją nazwę użytkownika (lewy górny róg) i wybierz „Opcje zaawansowane ...” Ta opcja jest dostępna tylko, jeśli jesteś administratorem.

wprowadź opis zdjęcia tutaj 4. Zmień wartość „Powłoka logowania” na /bin/zsh.

wprowadź opis zdjęcia tutaj 5. Naciśnij przycisk OK, aby zapisać zmianę.

Należy uważać, aby nie zmieniać żadnych innych pól, zgodnie z ostrzeżeniem u góry tego okna dialogowego. Jeśli masz wątpliwości, naciśnij przycisk „Anuluj” i spróbuj ponownie.

Ɱark Ƭ
źródło
Uwaga dla czytelnika: Krok 4 wymaga menu kontekstowego, przytrzymania Controlklawisza podczas klikania elementu lub korzystania z funkcji dodatkowego przycisku myszy / gładzika.
Basil Bourque,
7

Jeśli dołączasz do serwera Open Directory lub dowolnego innego serwera katalogów, musisz tam określić domyślną powłokę.

Zawsze możesz po prostu dodać zsh do swojego profilu bash, aby był on wywoływany podczas logowania jako obejście.

MDMarra
źródło
1

Wystarczy użyć polecenia, chsh -u usernameaby edytować swój profil

dragonxlwang
źródło