Verwenden Sie auf Ubuntu-Systemen die folgenden Speicherorte:
-
Systemweite persistente Variablen im Format
JAVA_PATH=/usr/local/java
speichern in/etc/environment
-
Systemweite persistente Variablen, die auf Variablen wie z
export PATH="$JAVA_PATH:$PATH"
speichern in/etc/.bashrc
-
Benutzerspezifische persistente Variablen im Format
PATH DEFAULT=/usr/bin:usr/local/bin
speichern in~/.pam_environment
Weitere Einzelheiten zu Nr. 2 finden Sie in dieser Frage zu Ubuntu-Antwort. HINWEIS:Nr. 3 ist die Ubuntu-Empfehlung, kann aber in der realen Welt Sicherheitsbedenken haben.
Sie können es Ihrer Shell-Konfigurationsdatei hinzufügen, z. $HOME/.bashrc
oder globaler in /etc/environment
.Nach dem Hinzufügen dieser Zeilen werden die Änderungen nicht sofort in GUI-basierten Systemen angezeigt. Sie müssen das Terminal verlassen oder ein neues erstellen und sich auf dem Server von der Sitzung abmelden und anmelden, um diese Änderungen widerzuspiegeln.
füge die Zeile zu deinem .bashrc
hinzu oder .profile
. Die in $HOME/.profile
gesetzten Variablen für den aktuellen Benutzer aktiv sind, die in /etc/profile
sind global. Die .bashrc
wird bei jedem Bash-Sitzungsstart gezogen.
Sie müssen drei Dateien bearbeiten, um eine permanente Umgebungsvariable wie folgt zu setzen:
-
~/.bashrc
Wenn Sie ein Terminalfenster öffnen, wird diese Datei ausgeführt. Wenn Sie also eine permanente Umgebungsvariable in allen Ihren Terminalfenstern haben möchten, müssen Sie die folgende Zeile am Ende dieser Datei hinzufügen:
export DISPLAY=0
-
~/.profile
Das gleiche wie bashrc Sie müssen die erwähnte Befehlszeile am Ende dieser Datei einfügen, damit Ihre Umgebungsvariable in jeder Anmeldung Ihres Betriebssystems enthalten ist.
-
/etc/environment
Wenn Sie Ihre Umgebungsvariable in jedem Fenster oder jeder Anwendung (nicht nur im Terminalfenster) haben möchten, müssen Sie diese Datei bearbeiten. Fügen Sie den folgenden Befehl am Ende dieser Datei hinzu:
DISPLAY=0
Beachten Sie, dass Sie in dieser Datei nicht export schreiben müssen Befehl
Normalerweise müssen Sie Ihren Computer neu starten, um diese Änderungen zu übernehmen. Aber Sie können Änderungen in bashrc anwenden und Profil durch diese Befehle:
$ source ~/.bashrc
$ source ~/.profile
Aber für /etc/environment Sie haben keine andere Wahl, als neu zu starten (soweit ich weiß)
Eine einfache Lösung
Ich habe ein einfaches Skript für diese Prozeduren geschrieben, um all diese Arbeit zu erledigen. Sie müssen nur den Namen und Wert Ihrer Umgebungsvariable festlegen.
#!/bin/bash
echo "Enter variable name: "
read variable_name
echo "Enter variable value: "
read variable_value
echo "adding " $variable_name " to environment variables: " $variable_value
echo "export "$variable_name"="$variable_value>>~/.bashrc
echo $variable_name"="$variable_value>>~/.profile
echo $variable_name"="$variable_value>>/etc/environment
source ~/.bashrc
source ~/.profile
echo "do you want to restart your computer to apply changes in /etc/environment file? yes(y)no(n)"
read restart
case $restart in
y) sudo shutdown -r 0;;
n) echo "don't forget to restart your computer manually";;
esac
exit
Speichern Sie diese Zeilen in einer Sh-Datei, machen Sie sie dann ausführbar und führen Sie sie einfach aus!