Jak zmienić domyślną powłokę w systemie Linux

Jak zmienić domyślną powłokę w systemie Linux
Zmień domyślną powłokę w obrazie funkcji systemu 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:

wyświetlanie bieżącej ścieżki powłoki za pomocą polecenia echo

To polecenie wyświetli ścieżkę bieżącej powłoki, taką jak /bin/bashlub /bin/zsh.

Plik /etc/passwdzawiera ważne informacje o koncie użytkownika. Możesz również użyć tego pliku, aby znaleźć swoją obecną powłokę:

znalezienie aktualnej powłoki za pomocą polecenia grep w pliku zmiennej środowiskowej

Więcej informacji o bieżącej powłoce można uzyskać również, sprawdzając identyfikator procesu (PID), korzystając z polecenia ps:

wyświetlanie bieżących informacji o procesie powłoki za pomocą 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:

wylistowanie wszystkich zainstalowanych powłok w systemie Linux Ubuntu

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. chshPolecenie oznacza „change shell” i jest używane wraz z -sopcją, po której następuje ścieżka powłoki.

Jeśli nie znasz ścieżki powłoki, uruchom type zshw 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:

Zmiana domyślnej powłoki za pomocą polecenia chsh

Zostaniesz poproszony o podanie hasła. Po wykonaniu tej czynności musisz się wylogować i zalogować ponownie, aby potwierdzić zmiany.

Polecenie chshzmieni domyślną powłokę logowania na stałe. Możesz zweryfikować zmiany, uruchamiając to polecenie:

weryfikacja przełączania powłoki za pomocą polecenia grep w pliku /etc/passwd

Zmiana powłoki innego użytkownika

Jeśli masz uprawnienia roota i możliwość korzystania z sudopolecenia, 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:

zmiana powłoki innego użytkownika za pomocą polecenia chsh

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/shellją żądaną ścieżką powłoki i your_usernameswoją rzeczywistą nazwą użytkownika.

Na przykład zmieńmy domyślną powłokę bash na zsh:

zmiana domyślnej powłoki na inną za pomocą polecenia usermod

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:

Weryfikacja nowej powłoki po przełączeniu z domyślnej powłoki za pomocą getent

Ręczna zmiana domyślnej powłoki w systemie Linux

Możesz również zmienić domyślną powłokę ręcznie, edytując /etc/passwdplik. 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/passwdplik za pomocą ulubionego edytora tekstu (np. nano lub vim) z uprawnieniami roota:

otwieranie pliku /etc/passwd za pomocą edytora tekstu nano

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:

zmiana domyślnej powłoki bash na powłokę zsh w edytorze tekstowym /etc/passwd.

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

Twój adres e-mail nie zostanie opublikowany. Wymagane pola są oznaczone *