Jak zmienić domyślną powłokę w systemie Linux
Powłoka to interfejs, za pomocą którego możesz komunikować się z systemem Linux. Pozwala na wpisywanie poleceń i sterowanie komputerem. Każdy użytkownik Linuksa ma domyślną powłokę, którą w większości przypadków jest bash. Dostępnych jest również wiele innych opcji, w tym Zsh, ksh, rc i fish. Tutaj pokazujemy różne metody zmiany domyślnej powłoki w systemie Linux.
Jak znaleźć obecną nazwę powłoki
Zanim przejdziemy do zmiany domyślnej powłoki, dobrze jest wiedzieć, której powłoki aktualnie używasz. Możesz to sprawdzić, sprawdzając zmienną środowiskową systemu za pomocą następującego polecenia echo:
To polecenie wyświetli ścieżkę bieżącej powłoki, taką jak /bin/bash
lub /bin/zsh
.
Plik /etc/passwd
zawiera ważne informacje o koncie użytkownika. Możesz również użyć tego pliku, aby znaleźć swoją obecną powłokę:
Więcej informacji o bieżącej powłoce można uzyskać również, sprawdzając identyfikator procesu (PID), korzystając z polecenia ps:
Wynik potwierdza, że bieżącą powłoką jest bash.
Wyświetl wszystkie zainstalowane powłoki
Teraz, gdy znasz swoją obecną powłokę, możesz chcieć zobaczyć, jakie inne opcje są dostępne w Twoim systemie. Aby zlokalizować wszystkie zainstalowane powłoki w Twoim systemie, musisz zajrzeć do pliku /etc/shells
.
Użyjmy polecenia cat, aby wyświetlić listę wszystkich powłok dostępnych w systemie:
To da ci pojęcie, na jakie powłoki możesz się przełączyć. Możesz również zainstalować dowolną nową powłokę za pomocą menedżera pakietów i używać jej jako domyślnej powłoki.
Ponadto możesz wypróbować te wymienione powłoki tymczasowo, nie zmieniając domyślnej powłoki. Aby rozpocząć nową sesję powłoki, po prostu wpisz nazwę powłoki w terminalu.
Na przykład, aby wypróbować powłokę Zsh, wpisz:
Dzięki temu możesz eksperymentować z różnymi powłokami, zanim podejmiesz decyzję o trwałej zmianie.
Zmiana domyślnej powłoki w systemie Linux za pomocą polecenia Chsh
Najprostszym sposobem zmiany domyślnej powłoki w systemie Linux jest użycie polecenia chsh
. chsh
Polecenie oznacza „change shell” i jest używane wraz z -s
opcją, po której następuje ścieżka powłoki.
Jeśli nie znasz ścieżki powłoki, uruchom type zsh
w terminalu, aby uzyskać żądaną ścieżkę. Po uzyskaniu ścieżki powłoki możesz zmienić domyślną powłokę na swoją konkretną powłokę.
Na przykład, jeśli chcesz przełączyć się na Zsh, musisz użyć chsh -s
ścieżki powłoki Zsh:
Zostaniesz poproszony o podanie hasła. Po wykonaniu tej czynności musisz się wylogować i zalogować ponownie, aby potwierdzić zmiany.
Polecenie chsh
zmieni domyślną powłokę logowania na stałe. Możesz zweryfikować zmiany, uruchamiając to polecenie:
Zmiana powłoki innego użytkownika
Jeśli masz uprawnienia roota i możliwość korzystania z sudo
polecenia, możesz zmienić domyślną powłokę dla innych kont użytkowników. Może to być przydatne, jeśli chcesz zapewnić inne środowisko powłoki, takie jak fish, dla innego użytkownika.
Na przykład, aby zmienić powłokę innego użytkownika na Zsh, wykonaj to polecenie w terminalu:
To polecenie nakazuje systemowi zmianę domyślnej powłoki dla określonego użytkownika na powłokę Zsh, która znajduje się w /bin/zsh
.
Zmiana domyślnej powłoki w systemie Linux za pomocą Usermod
Inną metodą zmiany powłoki jest użycie polecenia usermod
. To polecenie służy do modyfikowania kont użytkowników i może być również używane do zmiany domyślnej powłoki.
Aby zmienić domyślną powłokę za pomocą usermod
, otwórz terminal z uprawnieniami roota i wpisz to polecenie:
Tutaj musisz zastąpić /path/to/new/shell
ją żądaną ścieżką powłoki i your_username
swoją rzeczywistą nazwą użytkownika.
Na przykład zmieńmy domyślną powłokę bash na zsh:
Tak jak poprzednio, wyloguj się, a następnie zaloguj ponownie do systemu Linux, aby zmiany zostały zastosowane.
Możesz sprawdzić, czy nastąpiło przełączenie na nową powłokę, sprawdzając szczegóły konta użytkownika za pomocą następującego polecenia:
Ręczna zmiana domyślnej powłoki w systemie Linux
Możesz również zmienić domyślną powłokę ręcznie, edytując /etc/passwd
plik. Możesz to zrobić, zastępując domyślną ścieżkę powłoki nową powłoką. Jednak bądź ostrożny z tą techniką, ponieważ może prowadzić do problemów, jeśli nie zostanie wykonana poprawnie.
Aby ręcznie zmienić powłokę, otwórz /etc/passwd
plik za pomocą ulubionego edytora tekstu (np. nano lub vim) z uprawnieniami roota:
Poszukaj swojej nazwy użytkownika w pliku. Ostatnie pole w Twoim wpisie użytkownika pokaże Twoją obecną powłokę. Zmień ją na ścieżkę do pożądanej powłoki.
Na przykład zmieńmy naszą domyślną /bin/bash
ścieżkę powłoki na /bin/zsh
:
Na koniec zapisz plik naciskając Ctrl+ Si wyjdź z edytora za pomocą Ctrl+ X. Ponownie wyloguj się i zaloguj ponownie, aby zastosować zmiany.
Alternatywa dla domyślnej powłoki
Choć Bash jest świetnym i potężnym narzędziem skryptowym, istnieje kilka innych powłok, które mogą usprawnić działanie wiersza poleceń i zapewnić lepsze opcje dostosowywania:
Ryba
fish odnosi się do Friendly Interactive Shell. Ta powłoka ma intuicyjny interfejs wiersza poleceń, z podświetlaniem składni, autosugestiami i uzupełnianiem tabulatorów, dzięki czemu wpisywanie poleceń jest dziecinnie proste.
fish zawiera również internetowe narzędzie konfiguracyjne. Oznacza to, że możesz modyfikować ustawienia i tworzyć funkcje bez zagłębiania się w pliki konfiguracyjne.
Zsz
Zsh, lub Z shell, jest wysoce konfigurowalny i ma wiele przydatnych funkcji. Niektóre z jego najlepszych funkcji to globbing, autokorekta, konfiguracje niestandardowe i zaawansowane uzupełnianie tabulatorów.
Zsh obsługuje również wtyczki i motywy, dzięki czemu możesz łatwo dostosować swoje środowisko powłoki do swoich upodobań. Dzięki Zsh możesz również pokazać swoją gałąź Git i wykonywać złożone manipulacje plikami za pomocą prostych wzorców.
Ksh
ksh, lub KornShell, czerpie najlepsze cechy z powłoki C i powłoki Bourne, dzięki czemu jest potężną i łatwą w użyciu powłoką z zaawansowanymi możliwościami tworzenia skryptów. Niektóre funkcje ksh obejmują wbudowane funkcje matematyczne, edycję wiersza poleceń, tworzenie skryptów powłoki i rozszerzalność.
Podsumowanie
Zmiana domyślnej powłoki w systemie Linux to prosty proces, który może ulepszyć Twoje doświadczenie z wierszem poleceń. Jeśli jesteś zaawansowanym użytkownikiem, zdecydowanie powinieneś wypróbować inne alternatywne powłoki systemu Linux.
Źródło obrazu: Lukas via Unsplash . Wszystkie zrzuty ekranu autorstwa Haroon Javed.
Dodaj komentarz