Környezeti változók

Környezeti változók

Mi ez?

Környezeti változó egy elnevezett objektum, amely egy vagy több alkalmazás által használt információkat tartalmaz. Számos felhasználó (különösen a Linux újoncjai) ezt a megközelítést valami furcsa vagy irányíthatatlannak találja. De ez a benyomás téves: a környezeti változók használatával nagyon könnyű megváltoztatni a különböző programok beállításait.

Fontos példák

Az alábbi táblázat a Linux rendszerben használt számos változót ismerteti. Az alábbiakban példák a jelentésükre.

Ez a változó kettőspontokkal elválasztott könyvtárak listáját tartalmazza, amelyben a rendszer futtatható fájlokat keres. Ha megadja a végrehajtható fájl nevét, például ls. rc-update vagy emerge), amely nem szerepel az itt felsorolt ​​könyvtárakban, akkor ez a fájl nem fog elindulni (kivéve, ha természetesen megadta a teljes elérési utat, például / bin / ls).

Ez a változó értéke ugyanaz, mint a PATH. de csak azokat a könyvtárakat sorolja fel, amelyeket meg kell tekinteni, amikor a felhasználó gyökérként adja be a parancsot.

Ez a változó kettőspontokkal elválasztott könyvtárak listáját tartalmazza, amelyben a dinamikus linker könyvtárakat keres.

Ez a változó kettőspontokkal elválasztott könyvtárak listáját tartalmazza, amelyben az ember parancs a súgóoldalakat keresi.

Ez a változó tartalmazza a kettőspontokkal elválasztott könyvtárak listáját, amelyben az info parancs az információs oldalakat keresi.

Ez a változó tartalmazza a program elérési útját, amely lehetővé teszi a fájlok tartalmának oldalszámozását, például kevesebbet vagy többet.

Ez a változó a fájlok módosításához használt program útvonalát tartalmazza, például vi vagy nano.

Ez a változó tartalmazza a KDE erőforrásokat tartalmazó kettőspontokkal elválasztott könyvtárak listáját.

Ez a változó a könyvtárak listáját tartalmazza, kettőspontokkal elválasztva, amelyeken a Java osztályok találhatók.

Ez a változó a frissítés során a Portage által védett könyvtárak listáját tartalmazza, szóközzel elválasztva.

Ez a változó a Portage biztonsági kiszolgálásból kizárt könyvtárak listáját tartalmazza, frissítve, szóközökkel elválasztva.

Az alábbiakban bemutatjuk az összes ilyen változó meghatározását:

A változók globális meghatározása

Katalógus /etc/env.d

Ezeknek a változóknak a központi meghatározásához a /etc/env.d könyvtár a Calculate-ban található. Számos fájlt tartalmaz, például 00basic. 05gcc és így tovább, amelyek meghatározzák a fájl nevében megadott programok által megkövetelt változókat.

Például a gcc telepítésekor az ebuild létrehozza a /etc/env.d/05gcc fájlt. amely tartalmazza a következő változókat:

Más terjesztéseknél javasoljuk az / etc / profile vagy máshol a környezeti változók definícióinak módosítását vagy hozzáadását. A kiszámítás viszont megkönnyíti az Ön számára a környezeti változók támogatását és kezelését, kiküszöbölve a különféle változatokat tartalmazó fájlok figyelmének figyelembevételét.

Például, ha a gcc frissül. A /etc/env.d/05gcc a legkevesebb felhasználói bevitel nélkül is frissül.

Ez nemcsak a Portage, hanem Ön, a felhasználó számára is előnyös. Előfordulhat, hogy globálisan egy változót kell beállítania. Vegye például a http_proxy változót. Ahelyett, hogy a / etc / profile-ot elcseszte volna. Most létrehozhatsz egy fájlt (/etc/env.d/99local), és hozzáadhatod hozzá a szükséges fogalommeghatározásokat:

Ha ugyanazt a fájlt használja az összes változóhoz, gyorsan megtekintheti az összes megadott változót.

Env-update parancsfájl

A PATH változó több fájlban található az /etc/env.d fájlban. Nem, nem, ez nem hiba: ha az env-update indítása megtörtént, a környezeti változók frissítése előtt különböző definíciók vannak társítva, így a csomagok (vagy felhasználók) saját változóértékeket adhatnak hozzá anélkül, hogy befolyásolnák a meglévőket.

Az env-update parancsfájl a változók értékeit egyesíti a /etc/env.d fájlokból. betűrendben. A fájlneveknek két tizedesjegyből kell indulniuk. Az env-update által használt frissítési sorrend:

Az egyesülés nem mindig történik, de csak a következő változók esetében: KDEDIRS. PATH. CLASSPATH. LDPATH. MANPATH. INFODIR. InfoPath. ROOTPATH. CONFIG_PROTECT. CONFIG_PROTECT_MASK. PRELINK_PATH és PRELINK_PATH_MASK. Minden más változó esetében az utolsó fájlban megadott értéket (betűrendben az /etc/env.d) használják.

Az env-update parancsfájl futtatásakor minden környezeti változó létrejön, és elhelyezve a /etc/profile.env fájlban (az / etc / profile fájl használja). Ezenkívül a /etc/ld.so.conf létrehozása az LDPATH érték alapján történik. Ezután elindul az ldconfig. újra létrehozni az /etc/ld.so.cache fájlt. amelyet a dinamikus linker használ.

Ha azt szeretné, hogy az env-update eredmények azonnal hatályba lépjenek, frissítse a környezetet a következő paranccsal:

Megjegyzés: Ez a parancs csak az aktuális terminálon, új konzolokon és utódainkban frissíti a változókat. Vagyis, ha az X11-ben dolgozik, vagy be kell írnia a forrásokat / etc / profilt minden megnyitott terminálban, vagy újra kell indítania az X-et, hogy minden új terminál hozzáférjen az új változókhoz. Ha a bejelentkezési kezelőt használja, gyökér felhasználónak kell lennie, és írja be a /etc/init.d/xdm restart parancsot. Ha nem, akkor újra ki kell jelentkeznie, és újra be kell jelentkeznie, hogy a X elhagyta a leszármazókat a változók új értékeivel.

A változók helyi meghatározása

Egyéni változók

Nem mindig szükséges globálisan definiálni a változókat. Például, hozzá kell adnia a / home / my_user / bin és az aktuális munkakönyvtárat (ahol vannak) a PATH változóhoz. de ez a kiegészítő nem jelenik meg a többi felhasználó PATH változójában. Ha a környezeti változót helyileg kívánja meghatározni, használja

/.bash_profile. Példa egy PATH bővítményre a

/.bashrc a helyi igényekhez:

A PATH változó frissítése akkor fog megtörténni, ha kilép, és újra bejelentkezik.

Session változók

Néha szigorúbb korlátozásokra van szükség. Előfordulhat, hogy futtatható fájlokat kell futtatnia egy speciálisan kialakított ideiglenes könyvtárból anélkül, hogy megadná a teljes elérési útvonalat, és módosítaná a fájlt

/.bashrc néhány percig.

Ebben az esetben egyszerűen definiálhatja az aktuális munkamenet PATH változóját az export parancs segítségével. A változó ideiglenes értéket kap, amíg befejezi a munkamenetet. Példa a munkamenet környezeti változó meghatározására:

Kapcsolódó cikkek