Kuelewa Faili za Kuanzisha Shell na Wasifu wa Mtumiaji katika Linux


Linux ni mfumo wa watumiaji wengi, wa kugawana wakati, ikimaanisha kuwa zaidi ya mtumiaji mmoja anaweza kuingia na kutumia mfumo. Na wasimamizi wa mfumo wana kazi ya kusimamia vipengele mbalimbali vya jinsi watumiaji mbalimbali wanaweza kuendesha mfumo katika suala la kusakinisha/kusasisha/kuondoa programu, programu wanazoweza kuendesha, faili wanazoweza kutazama/kuhariri na kadhalika.

Linux pia huruhusu mazingira ya watumiaji kuundwa au kudumishwa kwa njia mbili kuu: kutumia mfumo mzima (ulimwenguni) na usanidi mahususi wa mtumiaji (wa kibinafsi). Kwa kawaida, njia ya msingi ya kufanya kazi na mfumo wa Linux ni shell, na shell hujenga mazingira kulingana na faili fulani ambazo husoma wakati wa kuanzishwa kwake baada ya kuingia kwa mtumiaji kwa mafanikio.

Katika makala haya, tutaelezea faili za uanzishaji wa ganda kuhusiana na wasifu wa mtumiaji kwa usimamizi wa ndani wa mtumiaji katika Linux. Tutakujulisha mahali pa kuweka vitendaji maalum vya ganda, lakabu, viambajengo pamoja na programu za kuanzisha.

Muhimu: Kwa madhumuni ya kifungu hiki, tutazingatia bash, ganda linalolingana na sh ambalo ni ganda maarufu/linalotumika zaidi kwenye mifumo ya Linux huko nje.

Ikiwa unatumia mpango tofauti wa shell (zsh, ash, samaki nk ..) , soma kupitia nyaraka zake ili kujua zaidi kuhusu baadhi ya faili zinazohusiana ambazo tutazungumzia hapa.

Uanzishaji wa Shell katika Linux

Wakati ganda limealikwa, kuna faili fulani za uanzishaji/uanzishaji ambazo zinasaidia kusanidi mazingira ya ganda lenyewe na mtumiaji wa mfumo; ambayo imefafanuliwa (na kubinafsishwa) kazi, vigeu, lakabu na kadhalika.

Kuna aina mbili za faili za uanzishaji zilizosomwa na ganda:

  • faili za kuanzia za mfumo mzima - nadharia zina usanidi wa kimataifa unaotumika kwa watumiaji wote kwenye mfumo, na kwa kawaida ziko kwenye saraka ya /etc. Zinajumuisha: /etc/profiles na /etc/bashrc au /etc/bash.bashrc.
  • faili za kuanzisha mahususi za mtumiaji - usanidi huu wa hifadhi ambao hutumika kwa mtumiaji mmoja kwenye mfumo na kwa kawaida hupatikana katika saraka ya nyumbani ya watumiaji kama faili za nukta. Wanaweza kubatilisha usanidi wa mfumo mzima. Zinajumuisha: .profiles, .bash_profile, .bashrc na .bash_login.

Tena, ganda linaweza kuvutiwa kwa njia tatu zinazowezekana:

Ganda hilo linaalikwa baada ya mtumiaji kuingia kwenye mfumo kwa mafanikio, kwa kutumia /bin/login, baada ya kusoma hati tambulishi zilizohifadhiwa kwenye /etc/passwd faili.

Wakati ganda linapoanzishwa kama ganda la kuingiliana la kuingia, husoma /etc/profile na sawa na mtumiaji mahususi ~/.bash_profile.

Gamba huanzishwa kwa safu ya amri kwa kutumia programu ya ganda kwa mfano $/bin/bash au $/bin/zsh. Inaweza pia kuanzishwa kwa kuendesha /bin/su amri.

Zaidi ya hayo, ganda shirikishi lisilo la kuingia linaweza pia kutumiwa na programu ya mwisho kama vile konsole, xterm kutoka ndani ya mazingira ya picha.

Wakati ganda linapoanzishwa katika hali hii, linakili mazingira ya ganda kuu, na kusoma faili maalum ya ~/.bashrc kwa maagizo ya ziada ya usanidi wa uanzishaji.

$ su
# ls -la

Gamba huombwa wakati hati ya ganda inaendeshwa. Katika hali hii, inachakata hati (seti ya ganda au amri/shughuli za mfumo wa jumla) na hauhitaji ingizo la mtumiaji kati ya amri isipokuwa vinginevyo. Inafanya kazi kwa kutumia mazingira yaliyorithiwa kutoka kwa ganda la wazazi.

Kuelewa Faili za Kuanzisha Shell za Mfumo mzima

Katika sehemu hii, tutaweka mwanga zaidi kwenye faili za kuanzisha ganda ambazo huhifadhi usanidi kwa watumiaji wote kwenye mfumo na hizi ni pamoja na:

Faili /etc/profile - huhifadhi usanidi wa mazingira ya mfumo mzima na programu za kuanzisha kwa ajili ya kuanzisha kuingia. Mipangilio yote ambayo ungependa kutumia kwa mazingira ya watumiaji wote wa mfumo inapaswa kuongezwa kwenye faili hii.

Kwa mfano, unaweza kuweka utofauti wako wa mazingira wa PATH hapa.

# cat /etc/profile

Kumbuka: Katika mifumo fulani kama RHEL/CentOS 7, utapata maonyo kama vile \Haipendekezwi kubadilisha faili hii isipokuwa kama unajua unachofanya. Ni bora zaidi kuunda hati maalum ya .sh katika /etc/ profile.d/ kufanya mabadiliko maalum kwa mazingira yako, kwani hii itazuia hitaji la kuunganishwa katika sasisho za siku zijazo.

Saraka ya /etc/profile.d/ - huhifadhi hati za ganda zinazotumiwa kufanya mabadiliko maalum kwa mazingira yako:

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

Faili ya /etc/bashrc au /etc/bash.bashrc - ina utendakazi wa mfumo mzima na lakabu ikijumuisha usanidi mwingine unaotumika kwa watumiaji wote wa mfumo.

Ikiwa mfumo wako una aina nyingi za makombora, ni wazo nzuri kuweka usanidi maalum wa bash kwenye faili hii.

# cat /etc/bashrc

Kuelewa Faili za Kuanzisha Shell mahususi za Mtumiaji

Ifuatayo, tutaelezea zaidi kuhusu faili za nukta maalum za mtumiaji (bash), ambazo huhifadhi usanidi wa mtumiaji fulani kwenye mfumo, ziko kwenye saraka ya nyumbani ya mtumiaji na zinajumuisha:

# ls -la

Faili ya ~/.bash_profile - hii huhifadhi mazingira mahususi ya mtumiaji na usanidi wa programu za uanzishaji. Unaweza kuweka kutofautisha kwa mazingira yako ya PATH hapa, kama inavyoonyeshwa kwenye picha ya skrini hapa chini:

# cat ~/.bash_profile

Faili ya ~/.bashrc - faili hii huhifadhi lakabu na vitendaji mahususi vya mtumiaji.

# cat ~/.bashrc

Faili ya ~/.bash_login - ina usanidi maalum ambao kwa kawaida hutekelezwa tu unapoingia kwenye mfumo. Wakati ~/.bash_profile haipo, faili hii itasomwa na bash.

~/.faili ya wasifu - faili hii inasomwa bila ~/.bash_profile na ~/.bash_login; inaweza kuhifadhi usanidi sawa, ambao unaweza pia kufikiwa na makombora mengine kwenye mfumo. Kwa sababu tumezungumza juu ya bash hapa, kumbuka kuwa makombora mengine yanaweza yasielewe syntax ya bash.

Ifuatayo, tutaelezea pia faili zingine mbili muhimu za mtumiaji ambazo sio lazima faili za uanzishaji wa bash:

Faili ~/.bash_history - bash hudumisha historia ya amri ambazo zimeingizwa na mtumiaji kwenye mfumo. Orodha hii ya amri huwekwa katika saraka ya nyumbani ya mtumiaji katika ~/.bash_history faili.

Ili kutazama orodha hii, andika:

$ history 
or 
$ history | less

Faili ya ~/.bash_logout - haitumiwi kuanzisha ganda, lakini huhifadhi maagizo mahususi ya mtumiaji kwa utaratibu wa kuondoka. Inasomwa na kutekelezwa wakati mtumiaji anatoka kutoka kwa ganda la kuingiliana la kuingia.

Mfano mmoja wa vitendo ungeweza kwa kufuta kidirisha cha wastaafu wakati wa kuondoka. Hii ni muhimu kwa viunganisho vya mbali, ambavyo vitaacha dirisha safi baada ya kuifunga:

# cat bash_logout 

Kwa ufahamu zaidi, angalia yaliyomo kwenye faili hizi za uanzishaji wa ganda kwenye distros mbalimbali za Linux na pia usome kupitia ukurasa wa bash man:

Ni hayo tu kwa sasa! Katika nakala hii, tulielezea faili za uanzishaji/uanzishaji wa ganda kwenye Linux. Tumia fomu ya maoni hapa chini kutuandikia.