Kā iestatīt un atiestatīt lokālos, lietotāju un visas sistēmas mainīgos Linux


Vides mainīgie ir daži īpaši mainīgie, kas ir definēti čaulā un ir nepieciešami programmām izpildes laikā. Tie var būt sistēmas definēti vai lietotāja definēti. Sistēmas definētie mainīgie ir tie, kurus nosaka sistēma un kurus izmanto sistēmas līmeņa programmas.

Par piem. PWD komanda ir ļoti izplatīts sistēmas mainīgais, ko izmanto pašreizējā darba direktorija glabāšanai. Lietotāja definētos mainīgos lielumus parasti nosaka lietotājs, vai nu uz laiku pašreizējam apvalkam, vai arī uz visiem laikiem. Viss vides mainīgo iestatīšanas un atiestatīšanas jēdziens griežas ap dažiem failu komplektiem un dažām komandām un dažādām čaulām.

Plašākā nozīmē vides mainīgais var būt trīs veidu:

Viens, kas noteikts pašreizējai sesijai. Šie vides mainīgie ilgst tikai līdz pašreizējai sesijai, vai tā būtu attālās pieteikšanās sesija vai vietējā termināla sesija. Šie mainīgie lielumi nav norādīti nevienā konfigurācijas failā, un tie tiek izveidoti un noņemti, izmantojot īpašu komandu kopu.

Šie ir mainīgie, kas ir definēti konkrētam lietotājam un tiek ielādēti katru reizi, kad lietotājs piesakās, izmantojot vietējo termināla sesiju, vai šis lietotājs ir pieteicies, izmantojot attālās pieteikšanās sesiju. Šie mainīgie parasti tiek iestatīti un ielādēti no šādiem konfigurācijas failiem: .bashrc , .bash_profile , .bash_login , .profile faili, kas atrodas lietotāja mājas direktorijā.

Tie ir vides mainīgie, kas ir pieejami visā sistēmā, t.i., visiem lietotājiem, kas atrodas šajā sistēmā. Šie mainīgie atrodas visas sistēmas konfigurācijas failos, kas atrodas šādos direktorijos un failos: /etc/environment , /etc/profile , /etc/profile.d/, /etc/bash.bashrc . Šie mainīgie tiek ielādēti katru reizi, kad sistēmu ieslēdz un pierakstās vai nu lokāli, vai attālināti jebkurš lietotājs.

Izpratne par lietotāja un visas sistēmas konfigurācijas failiem

Šeit mēs īsi aprakstām dažādus iepriekš uzskaitītos konfigurācijas failus, kuros ir vides mainīgie - sistēmas mērogā vai katram lietotājam.

Šis fails ir lietotāja specifisks fails, kas tiek ielādēts katru reizi, kad lietotājs izveido jaunu vietējo sesiju, t.i., vienkāršiem vārdiem sakot, atver jaunu termināli. Visi šajā failā izveidotie vides mainīgie stāsies spēkā katru reizi, kad tiek sākta jauna vietējā sesija.

Šis fails ir lietotāja specifisks attālās pieteikšanās fails. Šajā failā uzskaitītie vides mainīgie tiek izsaukti katru reizi, kad lietotājs ir pieteicies attālināti, t.i., izmantojot ssh sesiju. Ja šī faila nav, sistēma meklē failus .bash_login vai .profile .

Šis fails ir visas sistēmas fails, lai izveidotu, rediģētu vai noņemtu visus vides mainīgos. Šajā failā izveidotie vides mainīgie ir pieejami visā sistēmā, katram lietotājam gan lokāli, gan attālināti.

Sistēmas mēroga fails bashrc . Šis fails tiek ielādēts vienreiz katram lietotājam, katru reizi, kad lietotājs atver vietējā termināla sesiju. Šajā failā izveidotie vides mainīgie ir pieejami visiem lietotājiem, bet tikai caur vietējo termināla sesiju. Kad jebkuram šīs mašīnas lietotājam piekļūst attālināti, izmantojot attālās pieteikšanās sesiju, šie mainīgie nebūtu redzami.

Sistēmas plaša profila fails. Visi šajā failā izveidotie mainīgie ir pieejami visiem sistēmas lietotājiem, taču tikai tad, ja šī lietotāja sesija tiek izsaukta attālināti, t.i., izmantojot attālo pieteikšanos. Jebkurš mainīgais šajā failā nebūs pieejams vietējai pieteikšanās sesijai, t.i., kad lietotājs savā lokālajā sistēmā atver jaunu termināli.

Piezīme. Vides mainīgos, kas izveidoti, izmantojot visas sistēmas vai lietotāja konfigurācijas failus, var noņemt, noņemot tos tikai no šiem failiem. Vienkārši pēc katrām izmaiņām šajos failos vai nu izrakstieties un piesakieties vēlreiz, vai vienkārši ievadiet šādu komandu terminālā, lai izmaiņas stātos spēkā:

$ source <file-name>

Linux iestatiet vai atiestatiet lokālos vai visā sesijā pieejamos vides mainīgos

Vietējās vides mainīgos var izveidot, izmantojot šādas komandas:

$ var=value 
OR
$ export var=value

Šie mainīgie ir visā sesijā un ir derīgi tikai pašreizējai termināla sesijai. Lai notīrītu šos visas sesijas vides mainīgos, var izmantot šādas komandas:

Pēc noklusējuma komandā "env" ir uzskaitīti visi pašreizējie vides mainīgie. Bet, ja to izmanto ar slēdzi -i , tas īslaicīgi notīra visus vides mainīgos un ļauj lietotājam izpildīt komandu pašreizējā sesijā, ja nav visu vides mainīgo.

$ env –i [Var=Value]… command args…

Šeit var = value atbilst jebkuram vietējās vides mainīgajam, kuru vēlaties izmantot tikai ar šo komandu.

$ env –i bash

Dos bash apvalku, kuram īslaicīgi nebūtu neviena vides mainīgā. Bet, izejot no čaumalas, visi mainīgie tiks atjaunoti.

Vēl viens veids, kā notīrīt vietējo vides mainīgo, ir izmantot komandu Unset. Lai īslaicīgi atiestatītu jebkuru vietējās vides mainīgo,

$ unset <var-name>

Kur var-name ir vietējā mainīgā nosaukums, kuru vēlaties atiestatīt vai notīrīt.

Vēl viens retāk sastopams veids ir iestatīt mainīgā mainīgā nosaukumu (Empty). Tas notīrīs vietējā mainīgā vērtību pašreizējai sesijai, kurā tas ir aktīvs.

PIEZĪME - JŪS VARAT SPĒLĒT AR SISTĒMAS VAI LIETOTĀJA VIDES MAINĪTĀJU VĒRTĪBĀM UN MAINĪT TĀS, BET IZMAIŅAS ATŠĶIRSTOS TIKAI PAŠREIZĒJĀ TERMINĀLA SESIJĀ UN NEBŪTU PASTĀVĪGAS.

Uzziniet, kā Linux vidē izveidot, lietotājam un sistēmai raksturīgus vides mainīgos

Sadaļā mēs uzzināsim, kā iestatīt vai atiestatīt lokālos, lietotāja un visas sistēmas mainīgos Linux Linux ar tālāk minētajiem piemēriem:

a.) Šeit mēs izveidojam lokālo mainīgo VAR1 un iestatām to uz jebkuru vērtību. Pēc tam mēs izmantojam atiestatīšanu, lai noņemtu šo lokālo mainīgo, un beigās šis mainīgais tiek noņemts.

$ VAR1='TecMint is best Site for Linux Articles'
$ echo $VAR1
$ unset VAR1
$ echo $VAR1

b.) Vēl viens veids, kā izveidot lokālo mainīgo, ir izmantot komandu export . Izveidotais lokālais mainīgais būs pieejams pašreizējai sesijai. Lai atiestatītu mainīgo, vienkārši iestatiet mainīgā vērtību uz .

$ export VAR='TecMint is best Site for Linux Articles'
$ echo $VAR
$ VAR=
$ echo $VAR

c.) Šeit mēs izveidojām lokālo mainīgo VAR2 un iestatījām to uz vērtību. Pēc tam, lai palaistu komandu, īslaicīgi notīrot visus vietējos un citus vides mainīgos, mēs izpildījām komandu env –i . Šī komanda šeit izpildīja bash apvalku, notīrot visus citus vides mainīgos. Pēc izsauktā bash apvalka ievadīšanas exit , visi mainīgie tiks atjaunoti.

$ VAR2='TecMint is best Site for Linux Articles'
$ echo $VAR2
$ env -i bash
$ echo $VAR2   

a.) Modificējiet .bashrc failu mājas direktorijā, lai eksportētu vai iestatītu pievienojamo vides mainīgo. Pēc šī faila avota, lai izmaiņas stātos spēkā. Tad jūs redzētu, ka mainīgais (manā gadījumā CD ) stājas spēkā. Šis mainīgais būs pieejams katru reizi, kad šim lietotājam atverat jaunu termināli, bet ne attālās pieteikšanās sesijām.

$ vi .bashrc

Pievienojiet šo rindiņu faila .bashrc apakšdaļā.

export CD='This is TecMint Home'

Tagad izpildiet šo komandu, lai veiktu jaunas izmaiņas un pārbaudītu to.

$ source .bashrc 
$ echo $CD

Lai noņemtu šo mainīgo, vienkārši noņemiet šādu rindiņu failā .bashrc un atjaunojiet tā avotu:

b.) Lai pievienotu mainīgo, kas būs pieejams attālās pieteikšanās sesijām (t.i., kad ssh saņemat lietotājam no attālās sistēmas), modificējiet failu .bash_profile .

$ vi .bash_profile

Pievienojiet šo rindiņu faila .bash_profile apakšdaļā.

export VAR2='This is TecMint Home'

Iegūstot šo failu, mainīgais būs pieejams, kad ssh šim lietotājam, bet ne pēc jauna vietējā termināla atvēršanas.

$ source .bash_profile 
$ echo $VAR2

Šeit VAR2 sākotnēji nav pieejams, taču, veicot ssh lietotājam localhost, mainīgais kļūst pieejams.

$ ssh [email 
$ echo $VAR2

Lai noņemtu šo mainīgo, vienkārši noņemiet pievienoto .bash_profile faila rindiņu un atjaunojiet faila avotu.

PIEZĪME. Šie mainīgie būs pieejami katru reizi, kad esat pieteicies pašreizējam lietotājam, bet ne citiem lietotājiem.

a.) Lai pievienotu visas sistēmas mainīgo bez pieteikšanās (ti, tādu, kas ir pieejams visiem lietotājiem, kad kāds no viņiem atver jaunu termināli, bet ne tad, kad jebkuram mašīnas lietotājam tiek piekļūta attālināti), pievienojiet mainīgo /etc/bash. bashrc fails.

export VAR='This is system-wide variable'

Pēc tam avotu failu.

$ source /etc/bash.bashrc 

Tagad šis mainīgais būs pieejams ikvienam lietotājam, kad viņš atver jebkuru jaunu termināli.

$ echo $VAR
$ sudo su
$ echo $VAR
$ su -
$ echo $VAR

Šeit viens un tas pats mainīgais ir pieejams gan root, gan parastam lietotājam. To var pārbaudīt, piesakoties pie cita lietotāja.

b.) Ja vēlaties, lai jebkurš vides mainīgais būtu pieejams, kad kāds no jūsu datora lietotājiem ir pieteicies attālināti, bet ne atverot jaunu termināli vietējā mašīnā, jums ir jārediģē fails - /etc/profils .

export VAR1='This is system-wide variable for only remote sessions'

Pēc mainīgā pievienošanas vienkārši atjaunojiet faila avotu. Tad mainīgais būtu pieejams.

$ source /etc/profile
$ echo $VAR1

Lai noņemtu šo mainīgo, noņemiet līniju no faila /etc/profile un atkārtoti avotu.

c.) Tomēr, ja vēlaties pievienot jebkuru vidi, kuru vēlaties izmantot visā sistēmā, gan attālās pieteikšanās sesijās, gan vietējās sesijās (ti, atverot jaunu termināļa logu) visiem lietotājiem, vienkārši eksportējiet mainīgo/etc/vides fails.

export VAR12='I am available everywhere'

Pēc tam tikai iegūstiet failu, un izmaiņas stāsies spēkā.

$ source /etc/environment
$ echo $VAR12
$ sudo su
$ echo $VAR12
$ exit
$ ssh localhost
$ echo $VAR12

Kā redzam, vides mainīgais ir pieejams parastam lietotājam, root lietotājam, kā arī attālās pieteikšanās sesijā (šeit, vietējam serverim).

Lai notīrītu šo mainīgo, vienkārši noņemiet ierakstu/etc/environment failā un atkārtoti iegūstiet avotu vai piesakieties vēlreiz.

PIEZĪME. Izmaiņas stājas spēkā, kad avots ir fails. Bet, ja nē, jums, iespējams, būs jāpiesakās un jāpiesakās vēlreiz.

Secinājums

Tādējādi šie ir daži veidi, kā mēs varam modificēt vides mainīgos. Ja atrodat jaunus un interesantus trikus par to pašu, pieminiet to savos komentāros.