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.


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


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).


1

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

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

Durch die Nutzung unserer Website bestätigen Sie, dass Sie unsere Cookie-Richtlinie und Datenschutzrichtlinie gelesen und verstanden haben.
Licensed under cc by-sa 3.0 with attribution required.