Jak domyślnie używasz powłoki innej niż bash na terminalu?

14

Po upuszczeniu na terminal via Applications -> Terminallub Ctrl+ Alt+ F1itp. Domyślnie używany jest bash do interpretacji poleceń. Jeśli chcesz użyć innego interpretera poleceń (takiego jak zsh lub fish), jak to zrobić, aby zacząć jako domyślny?

Antony
źródło

Odpowiedzi:

18

Jeśli chcesz zmienić powłokę jako użytkownik, wpisz:

chsh -s /path/to/your/shell

lub po prostu

chsh

Musisz podać hasło, a powłoka logowania jest ustawiona na tę, którą wybrałeś. Możesz wybrać tylko powłokę wymienioną w /etc/shells.

qbi
źródło
2
Myślę, że jest to lepszy sposób na przejście do aktualnie zalogowanego użytkownika. Nie wymaga również uprawnień administratora do korzystania.
Antony
9

Zmień domyślną powłokę. Można to zrobić za pomocą wiersza polecenia:

$ sudo usermod -s /path/to/newshell username

ale może to być łatwiejsze w ustawieniach GUI.

System -> Administracja -> Użytkownicy i grupy -> [wybierz użytkownika] -> Ustawienia zaawansowane -> Zaawansowane

następnie wybierz powłokę z rozwijanej listy.

Jeśli żądanej powłoki nie ma na liście, to prawdopodobnie nie jest zainstalowana.

Musisz się wylogować i ponownie zalogować, aby to zadziałało. Możesz sprawdzić, którą powłokę uruchamiasz w nowym terminalu, uruchamiając „ps”.

Jeśli jesteś bardzo ciekawy, domyślna powłoka jest przechowywana w / etc / passwd (która tak naprawdę nie ma haseł pomimo nazwy).

Dave Jennings
źródło
1
Dla kogoś z uprawnieniami administratora jest to świetne. Na razie zdecydowałem się udzielić odpowiedzi qbi, ponieważ nie wymaga to uprawnień administratora.
Antony