Zmienne środowiskowe - gdzie są przechowywane przez Linuksa, jak je zmienić i czy jest to bezpieczne?


13

Próbuję skonfigurować kompilację ze źródła starej wersji gcc na moim komputerze deweloperskim. Dokumentacja wyróżnia kilka zmiennych środowiskowych, które należy zmienić w tym celu. Zastanawiałem się, jak to zrobić, a także gdzie je przechowuje Linux i czy wymagane jest ponowne uruchomienie systemu, aby jakieś zmiany zostały zarejestrowane?


Czy możesz wymienić zmienne środowiskowe, które należy zmienić?
Hashken,

Odpowiedzi:


14

Te globalne zmienne środowiskowe w systemie są przechowywane w /etc/environment.
Wszelkie zmiany tutaj zostaną odzwierciedlone w całym systemie i wpłyną na wszystkich użytkowników systemu. Potrzebny jest także restart, aby wprowadzone tu zmiany zostały wprowadzone.

Poziom użytkownika Zmienne środowiskowe są najczęściej przechowywane w folderze domowym, .bashrca .profilepliki. Zmiany tutaj dotyczą tylko tego konkretnego użytkownika. Wystarczy zamknąć i otworzyć terminal, aby nastąpiły zmiany konfiguracji.

Edycja : Jeśli nie chcesz ponownie uruchamiać ani restartować terminala, możesz skorzystać z polecenia source.
Na przykład. source /etc/environmentlubsource .bashrc


4
Nie potrzebujesz restartu. Możesz użyć polecenia source, aby załadować zmienne po zmianie. np .: source / etc / environment or source .bashrc
Manula Waidyanatha

W przypadku tego, co próbujesz zrobić, zmiana .profilenie jest właściwa. .bashrcnie powinien być stosowany, ponieważ może w niektórych sytuacjach powodować problemy. I /etc/environmentjest wyjście (nie zmieniaj systemu, aby wykonać jedną pracę).
ctrl-alt-delor

2

Potrzebne są lokalne zmiany czasowe. Nie będziesz ich potrzebować jutro, kiedy robisz coś innego, może to zepsuć to, co robisz jutro. Możesz jednak zapisać go jako skrypt / plik makefile do użytku jutro.

export VARIABLE=value
export VARIABLE2=another_value
gcc …

lub

VARIABLE=value VARIABLE2=another_value gcc …

Uwaga: Jeśli używasz make, pierwszy przykład nie zadziała. Make uruchamia nową powłokę (sh) dla każdej linii.


1

Powinieneś umieścić swoje zmienne środowiskowe dla poszczególnych użytkowników w ~ / .pam_environment

Utwórz plik, jeśli nie istnieje. Zobacz tutaj

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.