
Antwort1
Das Festlegen von Umgebungsvariablen für Benutzeranwendungen über die Benutzeroberfläche funktioniert unter Windows und Linux etwas anders. Die von Ihnen verwendete Windows-Oberfläche ändert sowohl die Werte der Variablen in der aktuellen Sitzung als auch die Werte für zukünftige Sitzungen.
Unter Linux funktionieren die herkömmlichen Methoden zum Festlegen von Umgebungsvariablen beim Anmelden. Es gibt mehrere Möglichkeiten, dies zu tun, aber dabei werden Dateien geändert, die nur beim Anmelden gelesen werden. Sie gelten also nicht für die aktuelle Sitzung. Die wichtigsten Dateien, die Sie hierfür verwenden können, sind .profile
und .pam_environment
, beide in Ihrem Home-Verzeichnis; sieheWas ist die beste Distributions-/Shell-unabhängige Methode zum Festlegen von Umgebungsvariablen?für eine ausführlichere Diskussion.
Um Umgebungsvariablen für die aktuelle Sitzung festzulegen, müssen Sie sie in dem Prozess festlegen, der die Anwendungen startet: der GUI-Shell. Unter Windows ist das einfach, da es keine echte Auswahlmöglichkeit für eine GUI-Shell gibt. (Es ist technisch möglich, die Standard-Shell zu ersetzen, aber nur sehr wenige Benutzer tun dies.) Unter Linux gibt es Hunderte von möglichen GUI-Shells – die GUI-Shell ist normalerweise dieFenstermanager, manchmal eine separate Komponente einesDesktopumgebung. Es gibt keine Standardmethode zum Festlegen von Umgebungsvariablen im Fenstermanager oder in der Desktopumgebung: Jeder WM/DE hat seine eigene Methode (und manche haben leider keine).
Eine WM/DE-agnostische Möglichkeit zum Ändern von Umgebungsvariablen ist edit ~/.profile
. Eine grundlegende Syntax (es gibt auch andere Möglichkeiten) ist
export MYVAR='the value of the variable'
Starten Sie dann ein Terminal (auf dem eine Shell ausgeführt wird) und geben Sie in dieser Shell Folgendes ein:
. ~/.profile
Dadurch werden die neuen Werte der Umgebungsvariablen von geladen .profile
. Wenn Sie danach ein Programm von dieser Shell aus ausführen, gelten die neuen Variablen für dieses Programm. Wenn Sie jedoch ein Programm direkt von einem GUI-Menü aus ausführen, übernimmt das Programm die Umgebung des Programms, das das GUI-Menü bereitstellt. Wenn Sie dies also ändern möchten, müssen Sie die von diesem Programm bereitgestellte Methode verwenden (oder ein Begleitprogramm als Teil der Desktopumgebung).
Antwort2
Sie können die Variable in /etc/environment
der Datei festlegen. Das Format muss wie folgt aussehen:
VARIABLE=value
Beachten Sie, dass die Variablenerweiterung nicht funktioniert /etc/environment
und Sie alle Prozesse neu starten müssen, die diese/jene Variable(n) verwenden/benötigen.
Antwort3
Umgebungsvariablen sind aufgrund ihrer Natur allen Prozessen verfügbar, die von dem Prozess/der Shell gestartet werden, der/die die Umgebungsvariablen festlegt.
Eine Umgebungsvariable in Unix ist eine Shell-Variable, die exportiert wird mit export
, zB
MYVAR="my value"
export MYVAR
Normalerweise legen Sie Umgebungsvariablen in Ihrer Shell-Startdatei fest. Im Fall von bash
ist dies in ~/.bash_profile
, und viele andere Shells verwenden ~/.profile
.
/etc
Unter (zB ) gibt es systemweite Shell-Initialisierungsskripte /etc/profile
, die zum Anpassen der Umgebung für alle Benutzer verwendet werden können.
Umgebungsvariablen können auch global für alle Benutzer Shell-unabhängig festgelegt werden, dies geschieht jedoch je nach Unix-Variante unterschiedlich. Die meisten BSDs können dies durch Modifizierung tun, /etc/login.conf
während einige Linux-Versionen /etc/environment
oder andere Mechanismen verwenden.