Zmienne środowiskowe systemu linux: opis, właściwości

Zmienne środowiskowe systemu Linux są specjalnym rodzajem zmiennych, które są definiowane przez linię poleceń, system lub powłokę. Mogą być stosowane przez prawie każde oprogramowanie podczas realizacji funkcji. Są one szczególnie często wykorzystywane w funkcjach niskiego poziomu i poziomu sprzętowego. Na przykład polecenie PWN używa jednej z systemowych zmiennych środowiskowych do przechowywania poprzedniej ścieżki do pliku obrabianego w linii poleceń.

Rodzaje zmiennych środowiskowych

Zmienne środowiskowe wyprowadzane w systemie

Zgodnie z metodą deklaracji i metodami inicjalizacji, zmienne środowiskowe systemu Linux mogą być trzech różnych typów:

  1. Lokalne typy zmiennych i stałych są inicjalizowane przy starcie systemu i usuwane za pomocą wbudowanego destruktora po zakończeniu pracy. Tego typu dane zostaną usunięte w każdym przypadku, niezależnie od tego, w jaki sposób następuje połączenie ze sprzętem: poprzez urządzenia zdalnego dostępu, emulację terminala lub tworzenie sesji poprzez maszynę wirtualną. Podczas przetwarzania nie są one przechowywane w żadnych plikach ani katalogach. Zmienne są tworzone i dekonstruowane przez wyspecjalizowane polecenia w powłoce sterującej.
  2. Zmienne środowiskowe użytkownika systemu Linux są inicjalizowane dla każdego użytkownika systemu operacyjnego. Wykrywanie i pobieranie odbywa się podczas logowania do systemu operacyjnego. Podobnie jak w przypadku innych widoków, niezależnie od tego, czy użytkownik loguje się przez lokalny terminal, czy też uzyskuje dostęp zdalny, wykrywanie jest automatyczne. Dane zapisywane są w dokumentach, które odpowiadają za konfigurację urządzenia. Możliwe jest również przechowywanie ich w innych dokumentach umieszczonych w folderach użytkowników. Najczęściej spotykane w bash_profile, bash_login i innych plikach konfiguracyjnych.
  3. System. Jest to dostępne dla każdego użytkownika, gdy system jest uruchomiony. Używane do zarządzania funkcjami systemu i wymagane do prawidłowego działania systemu operacyjnego. Załadowany z katalogu z plikami systemowymi środowiska, profilu, itp / environment i wiele innych.
  1. Obsługa danych

Pliki, w których przechowywane są zmienne

Podczas pracy w systemie operacyjnym Linux, zarówno w trybie zdalnego uruchamiania, jak i w trybie lokalnego terminala, przetwarzane i zmieniane są zmienne. Niektóre z nich należy zachować do późniejszego wykorzystania. Inne są automatycznie inicjalizowane przez niektóre narzędzia. Aby je zmodyfikować i sterować niektórymi funkcjami, należy edytować pliki danych, w których przechowywane są ich wartości. Pliki te znajdują się w katalogach użytkownika i systemowym. Podstawowe pliki i przechowywane w nich dane zostały opisane poniżej.

Dokument BASHSRC

Tutaj przechowywane są prawie wszystkie dane użytkownika. Dla każdego użytkownika tworzony jest osobny plik. Ładowanie odbywa się podczas tworzenia sesji terminalowej.

Zmienne środowiskowe w systemie Linux

Zmienne są uruchamiane z nową sesją. W ten sposób ładowane są ustawienia użytkownika, dane i ewentualnie aplikacje z poprzedniego uruchomienia terminala.

Plik BaSH_Profile

Dane w tym pliku są wymagane, aby umożliwić nowemu użytkownikowi zdalne połączenie za pomocą bezpiecznej powłoki poprzez protokół sieciowy warstwy aplikacji oraz poprzez protokoły sterujące tunelowaniem. Taki plik może zostać usunięty przez system lub przez użytkownika. Dane mogą być następnie umieszczone w pliku Bash_login lub profilu. W przypadku ich usunięcia nie jest możliwe prawidłowe zarządzanie systemem. Załóżmy, że wykonanie funkcji przywracającej dane.

Plik środowiskowy

Dokument Environment, znajdujący się w katalogu systemowym ETC, jest repozytorium informacji o zmiennych środowiskowych systemu Linux, które są obsługiwane na poziomie systemu operacyjnego. Jest on rozpakowywany i pracuje przy każdym uruchomieniu w dowolnym z trybów (przez lokalny terminal lub ze zdalnym dostępem do narzędzi systemu operacyjnego przez SSH (Secure Shell)). Dane są dostępne dla każdego użytkownika zalogowanego do powłoki system operacyjny. Plik ten jest wykonywany przy każdym uruchomieniu systemu operacyjnego przez każdego użytkownika.

Przetwarzanie w Bashu

Pliki systemowe użytkownika

Oprócz plików edytowalnych przez użytkownika istnieją również pliki systemowe, w których zapisywane są dane. Przechowywane w katalogach systemu ETC. Możliwość edycji poprzez dodanie określonych parametrów zgodnie z wymaganiami.

Plik użytkownika do logowania przez lokalny terminal

Dokument, który znajduje się w katalogu /etc/ bash.bashrc, jest konieczny dla Ustawienia użytkownika i inne dane użytkownika są ładowane w trybie runtime. Działanie tego pliku i jego zmiennych środowiskowych jest możliwe tylko podczas uruchamiania aplikacji za pomocą lokalnego terminala. Próba dostępu do dokumentów za pomocą protokołu bezpiecznej powłoki może skutkować błędami o niewystarczających uprawnieniach.

Rodzaje muszli

Profil użytkownika dla dostępu do SSH

Plik Profile, który znajduje się w katalogu ETC, zawiera zmienne użytkownika. Plik może być wykonany tylko wtedy, gdy jest uruchamiany przez zdalny dostęp. W ten sposób ładowane są ustawienia użytkownika i inne dane. Zmienne z ETC/Profile nie są jednak dostępne dla użytkowników, którzy uzyskują dostęp do systemu operacyjnego poprzez lokalny terminal, czyli podczas normalnej pracy.

Główne zmienne środowiskowe

Podczas pracy z systemem Linux, środowisko składa się z wielu różnych zmiennych. Należą do nich: typ dostępu, katalog domowy, nazwa interpretowanego programu, pliki i programy wykonywalne, otwarte katalogi oraz funkcje dodatkowe. Wszystkie te parametry nazywane są środowiskami i określają działanie urządzenia. Dane są przechowywane w zmiennych środowiskowych systemu Linux. Wbudowany wiersz poleceń systemu operacyjnego pozwala na bezpośrednią kontrolę tych wartości, umożliwiając głębszy dostęp do plików i procesów.

powłoka linuxowa

Dzięki ulepszonej powłoce Bash możliwe jest użycie argumentów powłoki do tego celu. Po pewnych modyfikacjach możliwe jest wyeksportowanie tych zmiennych do środowiska Linuksa. Procesy są dodatkowo zarządzane i w ten sposób tworzone są nowe procesy. Pozwala to na dodawanie nowych danych do procesów uruchamianych przez interpreter. Dotyczy to zarówno narzędzia kontroli i sterowania, jak i innych interpreterów, które można uruchomić z głównego.

Polecenia środowiska Linux mają swoje unikalne identyfikatory. To samo dotyczy opcji powłoki bash. Aby uzyskać dostęp do tych parametrów, należy dodać typ referencyjny. Robi się to za pomocą znaku $.

Identyfikator

Wartość w wykonaniu, funkcja

UŻYTKOWNIK

Ta zmienna zawiera nazwę użytkownika, który jest zalogowany do systemu operacyjnego.

UID

Wartość liczbowa podawana użytkownikowi, który jest zalogowany do systemu operacyjnego.

Strona główna

Katalog, w którym przechowywane są dane bieżącego użytkownika.

PWD

Ścieżka do aktualnie przetwarzanych plików.

POWŁOKA

Identyfikator oprogramowania do przetwarzania danych (shell).

$

Dane o procesie prowadzącym powłokę.

PPID

ID procesu macierzystego, który rozpoczął bieżący proces.

?

Kod błędu lub zakończenia ostatniego wykonanego polecenia powłoki.

Istnieje również linuksowa zmienna środowiskowa path, która odpowiada za ścieżkę do pliku wykonywalnego. Ogólnie rzecz biorąc, powyższa tabela przedstawia prawie wszystkie podstawowe opcje powłoki.

Jak dodać zmienne środowiskowe w Linuksie

Można to zrobić ręcznie za pomocą systemu operacyjnego i powłoki bash. Aby dodać nowy parametr do środowiska będziesz musiał użyć pewnego zestawu poleceń.

Aby ustawić zmienną środowiskową w systemie Linux, wpisz parametr, który chcesz wprowadzić do powłoki var = parametr. Następnie należy wyeksportować ten parametr za pomocą polecenia export var = parametr. Aby uzyskać dostęp do tego linku, musisz dodać znak dolara do ciągu znaków. To tworzy zmienną tylko dla bieżącej sesji. I można to zrobić tylko po zalogowaniu się do powłoki poprzez lokalny terminal. W ten sposób nie można uzyskać dostępu do wariantu zdalnego. Przeglądanie zmiennych środowiskowych systemu Linux odbywa się za pomocą standardowych poleceń. Należy zauważyć, że jest to całkowicie niezależne od metody wprowadzania danych.

Do sprawdzenia zmiennych środowiskowych Linuksa potrzebne będzie również polecenie export. Alternatywą jest polecenie env, które wyprowadza parametr w czystej postaci. Jak usunąć zmienne środowiskowe w systemie Linux? Aby uzyskać pełną listę, można użyć zestawu poleceń.

Praca przez terminal

Usuwanie zmiennych środowiskowych

Aby zdekonstruować taką zmienną ze środowiska Linuksa, można użyć na kilka sposobów. Każda metoda ma swoją specyfikę i Cechy.

Polecenie ENV w swojej zwykłej formie jest używane do ustawiania zmiennych powłoki. Jednak dodanie -i powoduje, że parametry są usuwane lokalnie. W ten sposób polecenie jest wykonywane bez wywoływania zmiennych. Polecenie w pełnej formie brzmi następująco:

env -i [Var = Parametr] Działanie, które ma być wykonane.

Zamiast Var można ustawić dowolną wartość zmiennej środowiskowej. Na przykład, $env -i bash uruchomi powłokę bez żadnych parametrów. Nie jest możliwa zmiana lub inicjalizacja wartości podczas działania powłoki, ale przy kolejnych uruchomieniach bez parametru -i możliwa jest praca z wszystkimi wbudowanymi funkcjami.

Polecenie Unset odsyła do polecenia lub parametru. Podobnie jest w przypadku zmiennych środowiskowych. Są one całkowicie usunięte z powłoki zaprogramowanej przez interpreter poleceń do końca bieżącej sesji. Składnia polecenia wygląda tak:

$ unset Nazwa zmiennej.

Ponadto, wyłączyć parametr jest dozwolony w Linuksie, aby ustawić zmienną środowiskową na pustą wartość. Zapewnia to, że parametr zostanie usunięty przed zakończeniem bieżącej sesji. Ustawienie pustej zmiennej działa dla każdego typu połączenia.

Zmienne środowiskowe procesu linuksowego

Proces tworzenia lub inicjalizacji zmiennych w powłoce odbywa się przy użyciu wbudowanych funkcji. Jeśli parametry zostaną utworzone w ten sposób, są one zapisywane dla wszystkich kolejnych uruchomień systemu. W podczas gdy większość wersje i dystrybucje systemu operacyjnego Linux zalecenie zmiany lub dodania nowych zmiennych w katalogu ETC / PROFILE. Warto wziąć pod uwagę, że większość procesów może zarządzać i zmieniać tego typu parametry. Każdy skrypt może zastosować zmianę wartości. Jest to jednak zabronione przez konwencje uniksowe.

Aby ustawić parametry systemu, należy edytować lub wpłynąć na następujące pliki:

  • /etc/profile - w czasie pracy z tym dokumentem, realistyczne jest ustawienie wartości zmiennych środowiskowych dla powłok;
  • /etc /bash.bashrc - używany do tworzenia i przypisywania wartości zmiennym dla powłoki interaktywnej, oraz potrzebny do biegu skrypty bash.
  • /etc/environment jest potrzebny do uruchomienia wtyczki env.

W systemie Linux zmienne środowiskowe typu systemowego ustawiane są tylko w tych plikach.

Zmienne środowiskowe mogą być deklarowane i inicjowane wielkimi i małymi literami. Za bardziej poprawne uważa się jednak tworzenie ich wyłącznie wielkimi literami, tj. Ich zaletą jest możliwość wykonania kodu przez każdego użytkownika z osobna oprogramowanie inaczej. Więc narzędzia będą uruchamiane z wybranymi ustawieniami zależnymi od zmiennej środowiskowej UID lub USER. Informacje mogą być również pobierane z katalogu HOME.

Różne systemy operacyjne z różnymi typami dostępu i użytkowników wymagają różnych zestawów parametrów. Aby wyświetlić zmienne środowiskowe Linuksa dla użytkowników, może być konieczne użycie konsolowej powłoki poleceń i poleceń Env lub Set. W tym przypadku zostanie wyświetlona lista aktualnych parametrów. Kiedy potrzeba aktualizacji użyj polecenia Source i nazwy pliku, w którym zostanie dodana nowa zmienna środowiskowa.

Artykuły na ten temat