Určitě jste znali bash shell, který běžně používáme v systému Linux. Ve většině operačních systémů Linux je výchozí shell bash, ale víte, že můžeme změnit výchozí shell bash na jakýkoli jiný shell, jako je sh, fish, zsh, csh atd. V tomto článku se naučíme, jak změnit výchozího uživatele shell v OS Linux.
Najděte aktuální název shellu
Chcete-li změnit výchozí uživatelský shell, nejprve najděte aktuální shell, který používáte. V systému Linux je výchozím uživatelským prostředím bash. Existuje jeden soubor s názvem passwd v adresáři /atd který ukládá základní informace o uživatelském účtu, které jsou potřeba během přihlášení uživatele. Pomocí tohoto souboru můžeme identifikovat aktuální uživatelský shell.
Spuštěním následujícího příkazu zkontrolujte aktuální informace o uživateli uložené v souboru /etc/passwd.
$ grep <current_user> /etc/passwd
Příklad
$ grep aayush /etc/passwd
Ve výše uvedeném příkladu je aayush uživatelské jméno a bash je aktuální shell.
Také můžete použít příkaz echo ke kontrole aktuálního uživatelského prostředí.
$ echo $SHELL
Seznam dostupných shellů v Linuxu
Abychom mohli změnit výchozí shell uživatele, musíme zjistit dostupné seznamy shellů v systému Linux.
Nainstalované shelly lze vypsat pomocí následujícího příkazu.
$ cat /etc/shells
Je vidět, že v systému jsou k dispozici různé typy shellů, jako je bash, rbash a dash.
Před výměnou shellu si zapamatujte následující věci.
- Uživatel root může být použit ke změně přihlašovacího shellu jiných uživatelů
- Pokud má některý uživatelský účet omezený přihlašovací shell, může uživatelské prostředí změnit pouze uživatel root
- Uživatelé budou moci změnit pouze shell uvedený v /etc/shells.
Změna výchozího sh shellu na bash shell
V operačním systému Linux existuje mnoho způsobů, jak změnit výchozí přihlašovací shell. V tomto článku vysvětlíme některé běžně používané metody.
Použití nástroje chsh
Pokud chcete změnit výchozí uživatelské prostředí, pak chsh nástroj může být velmi užitečný. Spusťte příkaz chsh s možností -s pro změnu uživatelského prostředí. Také upravuje /etc/passwd soubor.
$ chsh -s /bin/sh aayush
Kde , aayush je uživatelské jméno a sh je skořápka, kterou se chystáme změnit.
V tomto příkladu byl výchozí uživatelský shell změněn z bash na sh.
Použití příkazu usermod
Nástroj usermod je další způsob, jak upravit uživatelský účet. Stačí zadat možnost -s nebo -shell změnit výchozí shell pro uživatele. Nezapomeňte, že k provedení změn potřebujete účet s privilegovaným oprávněním root. Použití usermod nezmění aktuální shell uživatele, ale nastaví výchozí shell, který se použije při příštím přihlášení.
$ sudo usermod -s /bin/bash aayush
Ve výše uvedeném příkladu byl výchozí shell uživatele změněn z bash do sh.
Úpravou v souboru passwd
V linuxovém systému jsou základní informace o uživateli uloženy v souboru /etc/passwd který je potřeba k přihlášení. Výchozí uživatelské prostředí lze také změnit ruční úpravou tohoto souboru. Za tímto účelem upravte soubor /etc/passwd pomocí libovolného textového editoru a změňte shell za uživatelským jménem a domovským adresářem uživatele a uložte soubor.
$ sudo vi /etc/passwd
Změna aktuálního uživatelského prostředí
Změna aktuálního uživatelského prostředí je jednoduchá a snadná. Stačí zadat shell, který chcete použít, do terminálu. To ale nezmění výchozí shell pro příští přihlášení.
$ rbash
Závěr
V tomto článku jsme se naučili různé způsoby, jak změnit výchozí uživatelské prostředí v OS Linux