Umgebungsvariablen - wo werden sie unter Linux gespeichert, wie ändere ich sie und ist dies sicher?

12

Ich versuche, einen Build aus dem Quellcode einer alten Version von gcc auf meinem Entwicklungscomputer zu konfigurieren. In der Dokumentation werden mehrere Umgebungsvariablen hervorgehoben, die dazu geändert werden müssen. Ich habe mich gefragt, wie das geht und wo Linux sie speichert und ob ein Neustart des Systems erforderlich ist, damit Änderungen registriert werden können.

Mathematiker 1975
quelle
Können Sie die Umgebungsvariablen auflisten, die geändert werden müssen?
Hashken

Antworten:

12

Die globalen Umgebungsvariablen Ihres Systems werden in gespeichert /etc/environment.
Alle hier vorgenommenen Änderungen werden im gesamten System berücksichtigt und wirken sich auf alle Benutzer des Systems aus. Außerdem benötigen Sie einen Neustart, damit alle hier vorgenommenen Änderungen wirksam werden.

Umgebungsvariablen auf Benutzerebene werden meistens in .bashrcund .profileDateien in Ihrem Home-Ordner gespeichert . Änderungen hier wirken sich nur auf diesen bestimmten Benutzer aus. Schließen und öffnen Sie einfach das Terminal, damit Konfigurationsänderungen vorgenommen werden können.

Bearbeiten : Wenn Sie Ihr Terminal nicht neu starten oder neu starten möchten, können Sie den Quellbefehl verwenden.
Z.B. source /etc/environmentodersource .bashrc

Hashken
quelle
4
Sie brauchen keinen Neustart. Sie können den Quellbefehl verwenden, um die Variablen nach einer Änderung zu laden. Beispiel: Quelle / etc / Umgebung oder Quelle .bashrc
Manula Waidyanatha
Für das, was Sie versuchen zu ändern, ist es .profilenicht das Richtige. .bashrcsollte nicht verwendet werden, da dies unter Umständen zu Problemen führen kann. Und /etc/environmentist ein Ausweg (ändern Sie das System nicht, um einen Job zu erledigen).
Strg-Alt-Delor
2

Was Sie brauchen, sind lokale zeitliche Änderungen. Sie werden sie morgen nicht brauchen. Wenn Sie etwas anderes tun, kann dies das zerstören, was Sie morgen tun. Sie können es jedoch als Build-Skript / Makefile für die Verwendung morgen speichern.

export VARIABLE=value
export VARIABLE2=another_value
gcc …

oder

VARIABLE=value VARIABLE2=another_value gcc …

Hinweis: Bei Verwendung makefunktioniert das erste Beispiel nicht. Make startet für jede Zeile eine neue Shell (sh).

Strg-Alt-Delor
quelle
1

Sie sollten Ihre Umgebungsvariablen auf Benutzerbasis in ~ / .pam_environment platzieren

Erstellen Sie die Datei, wenn sie nicht vorhanden ist. Siehe hier

Jules Moules
quelle