Zmień domyślną powłokę dla Terminatora

12

Chcę zmienić domyślną powłokę Terminatora na zsh. W /etc/passwd/zmieniłem domyślną powłokę na /bin/zsh. To ustawienie zmienia domyślną powłokę w LXTerminal (domyślny terminal w Lubuntu), ale nie w Terminatorze. Próbowałem chsh -s /bin/zsh, ale to też nie działa.

Terminator dokumentacja mówi:

Jak zmienić domyślną powłokę?

Terminator zawsze uruchamia powłokę określoną przez zmienną środowiskową SHELL. (Powróci do / bin / sh, jeśli zmienna środowiskowa SHELL nie jest ustawiona). Możesz po prostu wpłynąć na środowisko Terminatora, ale najlepszym rozwiązaniem jest poinformowanie systemu operacyjnego, którą powłokę chcesz, i zapewni to, że SHELL jest ustawiony poprawnie dla wszystkich aplikacji, nie tylko Terminatora. Szczegółowe informacje na temat zmiany domyślnej powłoki znajdują się w dokumentacji systemu operacyjnego.

Spodziewałem się więc moich prób, ale nie. Jak mogę zmienić domyślną powłokę w Terminatorze.

OrangeTux
źródło

Odpowiedzi:

24

Użyj `chsh`, aby zmienić powłokę

Możesz użyć chshdo zmiany domyślnej powłoki. Uruchomienie tego polecenia poprosi o podanie pełnej ścieżki powłoki.

Możesz także biegać

chsh -s <ścieżka_do_ powłoki>

aby zmienić powłokę bezpośrednio.

Zmień preferencje terminatora

Możesz także bezpośrednio zmienić preferencje Terminatora.

  • Otwórz terminator.
  • Kliknij prawym przyciskiem myszy Terminator i wybierz Preferencje .
  • Przejdź do Profile > Command .
  • Zaznacz Uruchom polecenie jako powłokę logowania , Uruchom niestandardowe polecenie zamiast mojej powłoki i wpisz adres powłoki.

wprowadź opis zdjęcia tutaj - Zamknij okno dialogowe.

Zielony
źródło
4

Po ponownym uruchomieniu Terminater użył zsh. Wypełniłem raport o błędzie .

OrangeTux
źródło
4

Starożytne pytanie, ale po odrobinie walki z tym:

tl; dr : Terminator odczytuje $SHELLzmienną środowiskową. Jeśli jesteś w graficznym X sesson, ta zmienna została ustawiona podczas logowania i nie zostanie zresetowana, dopóki nie zalogujesz się ponownie , nawet po uruchomieniu chsh.

Jeśli przełączysz się na terminal tekstowy i zalogujesz się tam, zobaczysz, że chshjuż działa. Po wyjściu i zalogowaniu się $SHELLzostanie zresetowane do tego, co znajduje się w powłoce /etc/passwd.

Mikey TK
źródło