Lehet, hogy minden nap használja a Linux shellt, de a használat módja nagyban meghatározza a viselkedését. Talán hallott már a bejelentkezési és a bejelentkezés nélküli shell közötti különbségről. És bár elsőre nem tűnik olyan nyilvánvalónak, számos különbség van a két héjtípus között.
Itt van minden, amit a Linuxon futó login shellekről tudnia kell.
Mi az a Login Shell?
A login shell pontosan ez: egy shell, amely akkor indul el, amikor közvetlenül bejelentkezik a Linux-gépre. Amikor bejelentkezik a rendszerébe a virtuális konzol vagy SSH felett az induló shell egy bejelentkezési shell.
Ezzel szemben, ha elindít egy terminálablakot, az a shell-munkamenet általában nem bejelentkezési rendszerhéj. Ugyanez vonatkozik arra az esetre is, ha a parancssorba beírva egy alhéjat indítunk el. Ez a héj csak egy interaktív héj.
A legfontosabb különbség a kettő között a héj viselkedésében van. A shell gyakran csak bizonyos fájlokat olvas be indításkor. Bash elolvassa a /etc/profile, aztán a .bash_profile
, .bash_login, és .profil fájlokat a saját könyvtárában csak akkor, ha bejelentkezési shellként van meghívva.Hogyan állapítható meg, hogy bejelentkezési shellt használ-e
Könnyen megállapítható, hogy bejelentkezési shellt futtat-e vagy sem. Ha a rendszerhéjat az asztali terminálalkalmazásból indította el, akkor valószínűleg nem, hacsak nem egy másik terminálkörnyezetben, például a WSL-ben vagy a macOS terminálban van.
Ezzel a paranccsal ellenőrizheti, hogy futtat-e bejelentkezési parancsértelmezőt;
visszhang$0
Ha bejelentkezési parancsértelmezőt használ, akkor a parancsértelmező nevét kötőjellel (-). Ha nem, akkor csak a shell nevét fogja látni.
A bejelentkezési shell beállítása Linuxon
A bejelentkezési shell beállításához használja a a chsh parancsot. A bejelentkezési shelljét beállíthatja a listában felsorolt bármely shell abszolút elérési útjára /etc/shells.
Bármely shell bejelentkezési parancsértelmezőként történő indításához általában egy parancssori opciót használhat. Például a Bash bejelentkezési parancsértelmezőként való indításához:
bash --Belépés
Ha Linux-asztalt használ, gyakran megadhatja, hogy melyik parancs futtasson egy terminálablak megnyitásakor. Ha azt szeretné, hogy a shell bejelentkezési parancsértelmezőként fusson, ezt a lehetőséget megadhatja.
Most már ismeri a login shelleket
Most már meg kell értenie, mik azok a login shells. A shell elindítása, akár közvetlenül a konzolról, akár egy terminálablakból, meghatározza, hogyan fog viselkedni.
Ha még nem ismeri a Linuxot, elgondolkodhat azon, melyik shell a legjobb. Maradhat az alapértelmezett Bash mellett, vagy felfedezheti az alternatív shell-ek, például a Fish vagy a Zsh által kínált speciális szolgáltatásokat.