Shelli initsialiseerimisfailide ja kasutajaprofiilide mõistmine Linuxis


Linux on mitme kasutajaga ajajagamissüsteem, mis tähendab, et süsteemi saab sisse logida ja kasutada rohkem kui üks kasutaja. Ja süsteemiadministraatorite ülesandeks on hallata erinevaid aspekte, kuidas erinevad kasutajad saavad süsteemi hallata, näiteks tarkvara, nende käivitatavate programmide, vaadatavate/redigeeritavate failide installimine/värskendamine/eemaldamine.

Samuti võimaldab Linux kasutajate keskkondade loomist või hooldamist kahel peamisel viisil: kasutades kogu süsteemi hõlmavaid (globaalseid) ja kasutajale spetsiifilisi (personaalseid) konfiguratsioone. Tavaliselt on Linuxi süsteemiga töötamise põhimeetod kest ja kest loob keskkonna, mis sõltub teatud failidest, mida ta pärast edukat sisselogimist initsialiseerimise käigus loeb.

Selles artiklis selgitame kestade lähtestusfaile seoses kasutajaprofiilidega kohaliku kasutajahalduse jaoks Linuxis. Anname teile teada, kus hoida kohandatud shellifunktsioone, varjunimesid, muutujaid ja ka käivitusprogramme.

Tähtis: Selle artikli eesmärgil keskendume bashile, sh-ga ühilduvale kestale, mis on sealsetes Linuxi süsteemides kõige populaarsem/kasutatud kest.

Kui kasutate mõnda muud shell (zsh, ash, fish jne.) Programmi, lugege läbi selle dokumentatsioon, et saada lisateavet mõne seotud faili kohta, millest siin räägime.

Shelli initsialiseerimine Linuxis

Shelli käivitamisel on teatud loetud initsialiseerimis-/käivitamisfailid, mis aitavad seadistada keskkonda nii koore enda kui ka süsteemi kasutaja jaoks; see on eelnevalt määratletud (ja kohandatud) funktsioonid, muutujad, varjunimed ja nii edasi.

Kest loeb lähtestusfaile kahte kategooriasse:

  • kogu süsteemi hõlmavad käivitusfailid - teesid sisaldavad globaalseid konfiguratsioone, mis kehtivad kõigile süsteemi kasutajatele ja asuvad tavaliselt kataloogis/etc. Nende hulka kuuluvad:/etc/profiles ja/etc/bashrc või /etc/bash.bashrc.
  • kasutaja spetsiifilised käivitusfailid - need salvestuskonfiguratsioonid, mis kehtivad süsteemis ühele kasutajale ja asuvad tavaliselt punktide failidena kasutajate kodukataloogis. Need võivad alistada kogu süsteemi hõlmavad konfiguratsioonid. Nende hulka kuuluvad: .profiilid, .bash_profile, .bashrc ja .bash_login.

Jällegi saab kestale pöörduda kolmes võimalikus režiimis:

Kest käivitatakse pärast seda, kui kasutaja on süsteemi edukalt sisse loginud, kasutades/bin/login, pärast faili/etc/passwd salvestatud mandaatide lugemist.

Kui kest käivitatakse interaktiivse sisselogimiskoorina, loeb see profiili/etc/profiili ja selle kasutaja spetsiifilist samaväärsust ~/.bash_profile.

Kest käivitatakse käsureal, kasutades shelliprogrammi, näiteks $/bin/bash või $/bin/zsh. Seda saab käivitada ka käsku/bin/su käivitades.

Lisaks saab graafilisest keskkonnast interaktiivset mitte sisselogimisraket kasutada ka terminaliprogrammiga nagu konsole, xterm.

Kui kest selles olekus käivitatakse, kopeerib see vanema kesta keskkonna ja loeb kasutajale mõeldud faili ~/.bashrc täiendavate käivitamise seadistamise juhiste saamiseks.

$ su
# ls -la

Kest käivitatakse, kui töötab shelliskript. Selles režiimis töötleb see skripti (shelli- või üldiste süsteemi käskude/funktsioonide komplekti) ega nõua kasutajate käskude vahel sisestamist, kui pole teisiti. See töötab vanemakestalt päritud keskkonda kasutades.

Kogu süsteemi hõlmavate Shelli käivitusfailide mõistmine

Selles jaotises varjutame rohkem valgust shelli käivitusfailidele, mis salvestavad kõigi süsteemi kasutajate konfiguratsioone ja sisaldavad järgmist:

Fail/etc/profile - see salvestab kogu süsteemi hõlmavaid konfiguratsioone ja käivitamisprogramme sisselogimise seadistamiseks. Sellesse faili tuleks lisada kõik konfiguratsioonid, mida soovite rakendada kõigi süsteemikasutajate keskkondadele.

Näiteks saate siin määrata oma globaalse PATH-keskkonnamuutuja.

# cat /etc/profile

Märkus. Teatud süsteemides, näiteks RHEL/CentOS 7, saate selliseid hoiatusi nagu\"Seda faili pole soovitatav muuta, kui te ei tea, mida teete. Palju parem on luua kohandatud .sh shelliskript kataloogis/etc/profile.d/oma keskkonda kohandatud muudatuste tegemiseks, kuna see hoiab ära vajaduse ühendada tulevastes värskendustes.

Kataloog /etc/profile.d/ - salvestab shelliskripte, mida kasutatakse teie keskkonnas kohandatud muudatuste tegemiseks:

# cd /etc/profile.d/
# ls  -l 

Fail/etc/bashrc või /etc/bash.bashrc - sisaldab kogu süsteemi hõlmavaid funktsioone ja varjunimesid, sealhulgas muid seadistusi, mis kehtivad kõigile süsteemi kasutajatele.

Kui teie süsteemil on mitut tüüpi kestasid, on mõistlik sellesse faili lisada bash-spetsiifilised konfiguratsioonid.

# cat /etc/bashrc

Kasutaja-spetsiifiliste Shelli käivitusfailide mõistmine

Järgmisena selgitame rohkem kasutaja spetsiifiliste shell (bash) käivituspunktifailide kohta, mis salvestavad süsteemi konkreetse kasutaja konfiguratsioone, asuvad kasutaja kodukataloogis ja sisaldavad järgmist:

# ls -la

~/.Bash_profile fail - see salvestab kasutajale vastava keskkonna ja käivitusprogrammide konfiguratsioonid. Siin saate oma kohandatud keskkonnamuutuja PATH määrata, nagu on näidatud alloleval ekraanipildil:

# cat ~/.bash_profile

~/.Bashrc fail - see fail salvestab kasutaja spetsiifilisi varjunimesid ja funktsioone.

# cat ~/.bashrc

~/.Bash_login-fail - see sisaldab konkreetseid konfiguratsioone, mis täidetakse tavaliselt ainult süsteemi sisselogimisel. Kui ~/.bash_profile puudub, loeb bash seda faili.

~/.Profile fail - seda faili loetakse ~/.bash_profile ja ~/.bash_login puudumisel; see võib salvestada samu konfiguratsioone, millele pääseb juurde ka süsteemi teiste kestade kaudu. Kuna me oleme siin rääkinud peamiselt bashist, võtke arvesse, et teised kestad ei pruugi bashi süntaksist aru saada.

Järgmisena selgitame ka kahte muud olulist kasutajafaili, mis ei ole tingimata algdokumentide algandmed:

~/.Bash_history fail - bash säilitab käskude ajaloo, mille kasutaja on süsteemi sisestanud. Seda käskude loendit hoitakse kasutaja kodukataloogis failis ~/.bash_history.

Selle loendi vaatamiseks tippige:

$ history 
or 
$ history | less

~/.Bash_logout-fail - seda ei kasutata kesta käivitamisel, kuid see salvestab kasutaja väljalogimise protseduuri juhised. Seda loetakse ja täidetakse siis, kui kasutaja väljub interaktiivsest sisselogimiskoorist.

Üks praktiline näide oleks terminali akna tühjendamine väljalogimisel. See on oluline kaugühenduste jaoks, mis jätab pärast nende sulgemist puhta akna:

# cat bash_logout 

Lisateabe saamiseks vaadake nende kestade initsialiseerimisfailide sisu erinevates Linuxi distros ja lugege läbi ka bashi manuleht:

Praeguseks kõik! Selles artiklis selgitasime Linuxi kesta käivitamise/initsialiseerimise faile. Kasutage meile allkirjastamiseks allolevat kommentaarivormi.