Jak ustawić zmienne środowiskowe w systemie Linux

How Set Environment Variables Linux



Ustawienie zmiennych środowiskowych w systemie Linux to dobry sposób na zdefiniowanie wspólnych i powtarzalnych zmiennych, które są używane w wielu aplikacjach i poleceniach terminala. Te zmienne środowiskowe pomagają w ograniczeniu szczegółowości, ułatwiają obsługę i usprawniają pracę programistyczną.

Zmienna środowiskowa w systemie Linux może służyć do przekazywania informacji lub wpływania na zachowanie aplikacji lub procesu. W tym artykule wyjaśnimy różne sposoby ustawiania zmiennych środowiskowych i sposoby ich używania.







Aby ustawić zmienną środowiskową dla aktualnie używanej powłoki, zdefiniuj zmienną w następującym formacie:



$MYVAR=xyz

Definicja jest oczywista, MYVAR to nazwa zmiennej, a xyz to jej wartość. Uruchomienie poniższego polecenia zweryfikuje, czy zmienna środowiskowa została poprawnie ustawiona:



$wyrzucił $MYVAR





Zwróć uwagę na składnię zmiennych środowiskowych. Chociaż działają one jak inne zmienne powłoki, ogólnie dobrą praktyką jest używanie wielkich liter i podkreśleń dla lewej strony (nazwa zmiennej).

Aby usunąć zmienną, użyj poniższego polecenia:



$nieoprawnyMYVAR

Jeśli ponownie sprawdzisz zmienną za pomocą wspomnianego powyżej polecenia echo, żadne dane wyjściowe nie zostaną wyświetlone. Zauważ, że unset będzie działać tylko dla bieżącej sesji terminala. Jeśli w systemie są zdefiniowane globalne, ogólnosystemowe zmienne środowiskowe, będą one ponownie dostępne w nowej sesji terminala.

Aby ustawić zmienną środowiskową dla aktualnie używanej powłoki, a także dla wszelkich procesów potomnych / powłok uruchamianych z niej, użyj zmiennej w następującym formacie:

$eksport MYVAR=xyz

Aby na stałe ustawić zmienną środowiskową dla powłok bash (większość domyślnych aplikacji terminalowych w dystrybucjach systemu Linux jest skonfigurowana dla powłoki bash), dodaj zmienną (ze słowem kluczowym export) na końcu ukrytego pliku .bashrc w katalogu domowym.

eksportuj MYVAR=xyz

Możesz edytować plik .bashrc, uruchamiając poniższe polecenie:

$subl ~/.bashrc

Zastąp subl poleceniem swojego ulubionego edytora tekstu. Będziesz musiał ponownie załadować plik .bashrc, aby włączyć zmiany. Uruchom poniższe polecenie, aby to zrobić:

$źródło~/.bashrc

Poniżej znajduje się przykład niestandardowych zmiennych środowiskowych, które ustawiłem dla Ruby Gems.

Możesz wyświetlić wszystkie zmienne środowiskowe włączone w systemie, uruchamiając poniższe polecenie:

$zazdrościć

Aby konkretnie sprawdzić, czy niestandardowa zmienna środowiskowa dodana do pliku .bashrc została włączona, czy nie, uruchom poniższe polecenie:

$zazdrościć | chwyt MYVAR=

Aby ustawić zmienną środowiskową dla całego systemu dla wszystkich aplikacji, powłok i procesów, dodaj swoją niestandardową zmienną w pliku /etc/environment bez słowa kluczowego export.

MYVAR=xyz

Możesz edytować plik /etc/environment, uruchamiając poniższe polecenie:

$sudosubl/itp/środowisko

Zastąp subl swoim ulubionym edytorem tekstu. Może być konieczne ponowne uruchomienie systemu, aby zmiany zaczęły obowiązywać. Aby sprawdzić, czy zmienna niestandardowa została prawidłowo ustawiona, uruchom poniższe polecenie:

$zazdrościć | chwyt MYVAR=

Alternatywnie możesz użyć polecenia printenv, aby zweryfikować zmiany:

$printenv MYVAR

Zauważ, że wyjaśnione powyżej polecenie unset działa dla wszystkich niestandardowych zmiennych środowiskowych, niezależnie od tego, czy są to zmienne specyficzne dla sesji, czy globalne. Jednak unset usuwa zmienną tylko dla działającej sesji powłoki i nie usunie na stałe żadnej zmiennej systemowej ani globalnej.

Niektóre z predefiniowanych zmiennych środowiskowych w Ubuntu obejmują:

  • USER – nazwa zalogowanego użytkownika
  • HOME – katalog domowy zalogowanego użytkownika (zwykle /home/username)
  • WYŚWIETLACZ – aktywny monitor w użyciu (zwykle automatycznie ustawiany przez menedżera logowania)
  • PWD – katalog roboczy, w którym używana lub wywoływana jest powłoka
  • SHELL – powłoka używana w całym systemie (zwykle /bin/bash)
  • LANG – język używany przez system (zdefiniowany przez użytkownika, można go zmienić)
  • PATH – skrypty/binaria/pliki wykonywalne są przeszukiwane w katalogach ustawionych w zmiennej PATH

Niektóre zmienne środowiskowe, które są powszechnie używane do wpływania na zachowanie aplikacji:

  • LC_ALL – wymusza nadpisanie ustawień regionalnych użytkownika wartością określoną w zmiennej
  • LD_LIBRARY_PATH – służy do definiowania dodatkowych katalogów, w których będą przeszukiwane biblioteki uruchomieniowe
  • PATH – służy do definiowania dodatkowych katalogów, w których będą przeszukiwane skrypty/binaria/pliki wykonywalne
  • LD_PRELOAD – służy do ładowania niestandardowych/obniżonych/zaktualizowanych bibliotek w aplikacji

To oznacza koniec tego artykułu. Zmienne środowiskowe w systemie Linux pomagają w uruchamianiu zmodyfikowanych poleceń i aplikacji bez faktycznej modyfikacji bazowego źródła i plików binarnych, zapewniając sposób definiowania i używania zmiennych globalnych w całym systemie.