Kif Issettja u Tneħħi Varjabbli Ambjentali Lokali, Utent u Sistema Mifruxa fil-Linux
Il-Varjabbli tal-Ambjent huma xi varjabbli speċjali li huma definiti fil-qoxra u huma meħtieġa mill-programmi waqt l-eżekuzzjoni. Jistgħu jkunu definiti minn sistema jew definiti mill-utent. Il-varjabbli definiti tas-sistema huma dawk li huma stabbiliti mis-sistema u li jintużaw minn programmi fil-livell tas-sistema.
Għal eż. Il-kmand PWD huwa varjabbli tas-sistema komuni ħafna li jintuża biex jaħżen id-direttorju tax-xogħol preżenti. Varjabbli definiti mill-utent huma tipikament stabbiliti mill-utent, jew temporanjament għall-qoxra attwali jew b'mod permanenti. Il-kunċett kollu ta 'l-issettjar u t-tneħħija ta' varjabbli ambjentali jdur madwar xi sett ta 'fajls u ftit kmandi u qxur differenti.
F'termini usa', varjabbli ambjentali jista' jkun fi tliet tipi:
Wieħed definit għas-sessjoni attwali. Dawn il-varjabbli ambjentali jdumu biss sas-sessjoni attwali, kemm jekk tkun sessjoni ta' login mill-bogħod, jew sessjoni terminali lokali. Dawn il-varjabbli mhumiex speċifikati fl-ebda fajls ta 'konfigurazzjoni u huma maħluqa, u mneħħija bl-użu ta' sett speċjali ta 'kmandi.
Dawn huma l-varjabbli li huma definiti għal utent partikolari u huma mgħobbija kull darba li utent jidħol billi juża sessjoni ta' terminal lokali jew dak l-utent ikun illoggjat billi juża sessjoni ta' login mill-bogħod. Dawn il-varjabbli huma tipikament stabbiliti u mgħobbija mill-fajls ta' konfigurazzjoni li ġejjin: .bashrc
, .bash_profile
, .bash_login
, .profile
fajls li huma preżenti fid-direttorju tad-dar tal-utent.
Dawn huma l-varjabbli ambjentali li huma disponibbli fis-sistema kollha, jiġifieri għall-utenti kollha preżenti fuq dik is-sistema. Dawn il-varjabbli huma preżenti fil-fajls tal-konfigurazzjoni tas-sistema kollha preżenti fid-direttorji u l-fajls li ġejjin: /etc/environment
, /etc/profile
, /etc/profile.d /
, /etc/bash.bashrc
. Dawn il-varjabbli huma mgħobbija kull darba li s-sistema tixgħel u tilloggja jew lokalment jew mill-bogħod minn kwalunkwe utent.
Fehim tal-fajls tal-Konfigurazzjoni għall-Utent Wide u s-Sistema kollha
Hawnhekk, aħna niddeskrivu fil-qosor diversi fajls ta 'konfigurazzjoni elenkati hawn fuq li jżommu Varjabbli Ambjentali, jew għas-sistema kollha jew speċifiċi għall-utent.
Dan il-fajl huwa fajl speċifiku għall-utent li jitgħabba kull darba li l-utent joħloq sessjoni lokali ġdida jiġifieri fi kliem sempliċi, jiftaħ terminal ġdid. Il-varjabbli ambjentali kollha maħluqa f'dan il-fajl jidħlu fis-seħħ kull darba li tinbeda sessjoni lokali ġdida.
Dan il-fajl huwa fajl tal-login remot speċifiku għall-utent. Il-varjabbli ambjentali elenkati f'dan il-fajl huma invokati kull darba li l-utent ikun illoggjat mill-bogħod jiġifieri billi juża s-sessjoni ssh. Jekk dan il-fajl ma jkunx preżenti, is-sistema tfittex jew fajls .bash_login
jew .profile
.
Dan il-fajl huwa fajl kollu tas-sistema għall-ħolqien, l-editjar jew it-tneħħija ta 'kwalunkwe varjabbli ambjentali. Il-varjabbli ambjentali maħluqa f'dan il-fajl huma aċċessibbli kollha fis-sistema kollha, minn kull utent, kemm lokalment kif ukoll mill-bogħod.
Fajl bashrc
tas-sistema kollha. Dan il-fajl jitgħabba darba għal kull utent, kull darba li dak l-utent jiftaħ sessjoni tat-terminal lokali. Il-varjabbli ambjentali maħluqa f'dan il-fajl huma aċċessibbli għall-utenti kollha iżda biss permezz ta' sessjoni tat-terminal lokali. Meta kwalunkwe utent fuq dik il-magna jiġi aċċessat mill-bogħod permezz ta' sessjoni ta' login mill-bogħod, dawn il-varjabbli ma jkunux viżibbli.
Fajl tal-profil tas-sistema kollha. Il-varjabbli kollha maħluqa f'dan il-fajl huma aċċessibbli minn kull utent fis-sistema, iżda biss jekk is-sessjoni ta 'dak l-utent tiġi invokata mill-bogħod, jiġifieri permezz ta' login remot. Kwalunkwe varjabbli f'dan il-fajl mhux se jkun aċċessibbli għal sessjoni ta' login lokali jiġifieri meta l-utent jiftaħ terminal ġdid fis-sistema lokali tiegħu.
Nota: Il-varjabbli tal-ambjent maħluqa bl-użu ta' fajls ta' konfigurazzjoni tas-sistema kollha jew tal-utent kollha jistgħu jitneħħew billi jitneħħew minn dawn il-fajls biss. Hekk biss wara kull bidla f'dawn il-fajls, jew illoggja u illoggja mill-ġdid jew sempliċement ittajpja l-kmand li ġej fuq it-terminal biex il-bidliet jidħlu fis-seħħ:
$ source <file-name>
Issettja jew Tneħħi Varjabbli Ambjentali Lokali jew mas-Sessjoni kollha fil-Linux
Varjabbli Ambjentali Lokali jistgħu jinħolqu bl-użu tal-kmandi li ġejjin:
$ var=value OR $ export var=value
Dawn il-varjabbli huma sessjoni kollha u huma validi biss għas-sessjoni terminali attwali. Biex Tnaddaf dawn il-varjabbli ambjentali tas-sessjoni kollha jistgħu jintużaw il-kmandi li ġejjin:
B'mod awtomatiku, il-kmand \env\
jelenka l-varjabbli ambjentali attwali kollha. Iżda, jekk jintuża bi swiċċ -i
, ineħħi temporanjament il-varjabbli ambjentali kollha u jħalli lill-utent jesegwixxi kmand fis-sessjoni attwali fin-nuqqas tal-varjabbli ambjentali kollha.
$ env –i [Var=Value]… command args…
Hawnhekk, var=value
tikkorrispondi għal kwalunkwe varjabbli tal-ambjent lokali li trid tuża b'dan il-kmand biss.
$ env –i bash
Se tagħti bash qoxra li temporanjament ma jkollu ebda varjabbli ambjentali. Iżda, hekk kif toħroġ mill-qoxra, il-varjabbli kollha jiġu restawrati.
Mod ieħor biex tnaddaf il-varjabbli tal-ambjent lokali huwa billi tuża kmand mhux issettjat. Biex titneħħa kwalunkwe varjabbli ambjentali lokali temporanjament,
$ unset <var-name>
Fejn, var-name
huwa l-isem tal-varjabbli lokali li trid tneħħi jew tikklerja.
Mod ieħor inqas komuni jkun li tissettja l-isem tal-varjabbli li trid tneħħi, għal (Volja). Dan jikklerja l-valur tal-varjabbli lokali għas-sessjoni kurrenti li għaliha hija attiva.
NOTA – TISTA’ ANKE TLAGĦBU MAL-VALURI TA’ VARJABBLI TA’ SISTEMA JEW TA’ L-AMBJENT TA’ L-UTENTI, IMMA TIBDILJIET JIRRIFETTU FIS-SESSJONI TERMINALI KURRENTI BISS U MA JKUNX PERMANENTI.
Tgħallem Kif Oħloq Varjabbli Ambjentali, Mifruxa mal-Utent u Mas-Sistema kollha fil-Linux
Fit-taqsima, se nitgħallmu kif nissettjaw jew tneħħi varjabbli ambjentali lokali, utent u sistema wiesgħa fil-Linux bl-eżempji hawn taħt:
a.) Hawnhekk, noħolqu varjabbli lokali VAR1
u nissettjawha għal kwalunkwe valur. Imbagħad, nużaw unset biex inneħħu dik il-varjabbli lokali, u fl-aħħar dik il-varjabbli titneħħa.
$ VAR1='TecMint is best Site for Linux Articles' $ echo $VAR1 $ unset VAR1 $ echo $VAR1
b.) Mod ieħor kif toħloq varjabbli lokali huwa billi tuża kmand export
. Il-varjabbli lokali maħluqa se tkun disponibbli għas-sessjoni attwali. Biex titneħħa l-varjabbli sempliċement issettja l-valur tal-varjabbli għal .
$ export VAR='TecMint is best Site for Linux Articles' $ echo $VAR $ VAR= $ echo $VAR
c.) Hawnhekk, ħloqna varjabbli lokali VAR2
u waqqafna għal valur. Imbagħad sabiex inħaddmu kmand li jneħħi temporanjament il-varjabbli kollha lokali u ambjentali oħra, wettaqna kmand env –i
. Dan il-kmand hawn eżegwit bash shell billi kklerja l-varjabbli ambjentali l-oħra kollha. Wara li ddaħħal exit
fuq il-bash shell invokat, il-varjabbli kollha jiġu restawrati.
$ VAR2='TecMint is best Site for Linux Articles' $ echo $VAR2 $ env -i bash $ echo $VAR2
a.) Immodifika l-fajl .bashrc
fid-direttorju tad-dar tiegħek biex tesporta jew issettja l-varjabbli ambjentali li trid iżżid. Wara dak is-sors il-fajl, biex il-bidliet jidħlu fis-seħħ. Imbagħad int tara l-varjabbli (CD
fil-każ tiegħi), tieħu effett. Din il-varjabbli tkun disponibbli kull darba li tiftaħ terminal ġdid għal dan l-utent, iżda mhux għal sessjonijiet ta' login mill-bogħod.
$ vi .bashrc
Żid il-linja li ġejja mal-fajl .bashrc
fil-qiegħ.
export CD='This is TecMint Home'
Issa mexxi l-kmand li ġej biex tieħu bidliet ġodda u tittestjah.
$ source .bashrc $ echo $CD
Biex tneħħi din il-varjabbli, neħħi biss il-linja li ġejja fil-fajl .bashrc u erġa' ġġibha:
b.) Biex iżżid varjabbli li tkun disponibbli għal sessjonijiet ta' login mill-bogħod (jiġifieri meta tissh lill-utent minn sistema remota), immodifika l-fajl .bash_profile
.
$ vi .bash_profile
Żid il-linja li ġejja mal-fajl .bash_profile
fil-qiegħ.
export VAR2='This is TecMint Home'
Meta takkwista dan il-fajl, il-varjabbli tkun disponibbli meta ssh lil dan l-utent, iżda mhux malli tiftaħ xi terminal lokali ġdid.
$ source .bash_profile $ echo $VAR2
Hawnhekk, VAR2
mhix disponibbli inizjalment iżda, meta tagħmel ssh lill-utent fuq localhost, il-varjabbli ssir disponibbli.
$ ssh [email $ echo $VAR2
Biex tneħħi din il-varjabbli, neħħi biss il-linja fil-fajl .bash_profile
li żidt, u erġa' jġib il-fajl.
NOTA: Dawn il-varjabbli se jkunu disponibbli kull darba li tkun illoggjat mal-utent attwali iżda mhux għal utenti oħra.
a.) Biex iżżid varjabbli bla login tas-sistema kollha (jiġifieri waħda li hija disponibbli għall-utenti kollha meta xi wieħed minnhom jiftaħ terminal ġdid iżda mhux meta kwalunkwe utent tal-magna jiġi aċċessat mill-bogħod) żid il-varjabbli ma '/etc/bash. bashrc
fajl.
export VAR='This is system-wide variable'
Wara dan, sors il-fajl.
$ source /etc/bash.bashrc
Issa din il-varjabbli se tkun disponibbli għal kull utent meta jiftaħ xi terminal ġdid.
$ echo $VAR $ sudo su $ echo $VAR $ su - $ echo $VAR
Hawnhekk, l-istess varjabbli hija disponibbli għall-utent root kif ukoll għall-utent normali. Tista' tivverifika dan billi tidħol ma' utent ieħor.
b.) Jekk trid li kwalunkwe varjabbli ambjentali tkun disponibbli meta xi utent fuq il-magna tiegħek ikun illoggjat mill-bogħod, iżda mhux malli tiftaħ xi terminal ġdid fuq magna lokali, allura trid teditja l-fajl - /etc/ profil
.
export VAR1='This is system-wide variable for only remote sessions'
Wara li żżid il-varjabbli, erġa' poġġi l-fajl. Imbagħad il-varjabbli tkun disponibbli.
$ source /etc/profile $ echo $VAR1
Biex tneħħi din il-varjabbli, neħħi l-linja mill-fajl /etc/profile
u erġa' jġibha.
c.) Madankollu, jekk trid iżżid xi ambjent li trid tkun disponibbli fis-sistema kollha, kemm fuq sessjonijiet ta' login mill-bogħod kif ukoll sessjonijiet lokali (jiġifieri tiftaħ tieqa terminali ġdida) għall-utenti kollha, esporta biss il-varjabbli f' fajl /etc/environment.
export VAR12='I am available everywhere'
Wara dan biss sors il-fajl u l-bidliet jidħlu fis-seħħ.
$ source /etc/environment $ echo $VAR12 $ sudo su $ echo $VAR12 $ exit $ ssh localhost $ echo $VAR12
Hawnhekk, kif naraw il-varjabbli ambjentali hija disponibbli għall-utent normali, l-utent root, kif ukoll fuq is-sessjoni ta 'login remot (hawn, għal localhost).
Biex tneħħi din il-varjabbli, neħħi biss l-iskrizzjoni fil-fajl /etc/environment u erġa' tagħmel sors jew idħol mill-ġdid.
NOTA: Il-bidliet jidħlu fis-seħħ meta tieħu l-fajl. Iżda, jekk le, jista' jkun li jkollok bżonn illoggja u terġa' tidħol.
Konklużjoni
Għalhekk, dawn huma ftit modi kif nistgħu nimmodifikaw il-varjabbli ambjentali. Jekk issib xi tricks ġodda u interessanti għall-istess semmi fil-kummenti tiegħek.