Userspezifisch
Aliase und Umgebungsvariablen können spezifisch pro User festgelegt werden. Hierzu verwendet man das ‚.bashrc‘ File im eigenen Home-Verzeichnis:
Alias/Umgebungsvariable
vi ~/.bashrc
Neue Zeile
alias ll='ls -l'
einfügen
ll wird nun den Befehl ls -l im Terminal ausführen.
Auf diese Art und Weise können Umgebungsvariablen (z.B. JAVA_HOME) gesetzt werden:
JAVA_HOME=/usr/lib/JDK1.5 export JAVA_HOME
Global
Um globale Aliase und Umgebungsvariablen zu setzen, hat man mehrere Möglichkeiten:
- /etc/profile
- /etc/bash.bashrc
- /etc/environment
- Wrapper-Skript
/etc/profile
Dieses File ist dann der richtige Ort, wenn man von der Console bootet und das GUI (Gnome/KDE) über startx aufruft. Das /etc/profile wird also auch dann gelanden, wenn kein Window-Manager gelanden wird.
/etc/bash.bashrc
Dieses File ist dann der richtige Ort, wenn man direkt per „Login-Manager“ grafisch einloggt. Man darf aber nicht vergessen, dass dieses File ignoriert wird, sobald man ein weiteres Terminal (per Alt-F?) öffnet.
/etc/environment
Hier kann man statische Variablen definieren, die für das ganze System von Interesse sind. Als Beispiel werden hier alle Umgebungsvariablen für die Programmiersprache Java definiert, die sowohl für das Ausführen als auch die Entwicklung von Java-Programmen nötig sind. Die Variable PATH kann man auch in
/etc/environment
definieren, sie wird aber in der Regel von der Shell wieder überschrieben. Somit ist es besser, PATH in der Datei
/etc/profile
zu definieren und gegebenenfalls über die benutzerspezifischen Dateien
${HOME}/.bash_profile
(Login-Shell) und
${HOME}/.bashrc
(interaktive Shell) anpassen.
Wrapper-Skript
Es kursiert in der Debian-Welt die Idee, dass Umgebungsvariablen für das Starten eines Programmes nicht nötig sein sollten. Aus diesem Grunde wird oft ein so genanntes Wrapper-Script erstellt, welches die nötigen Variablen setzt und danach das eigentlich gewünschte Programm aufruft. Das kann z.B. folgendermassen aussehen:
#!/bin/sh export JAVA_HOME=/wo/auch/immer exec $0.real "$@"
Das speichert man unter dem Namen nachdem das effektive ‚PROGRAMM‘ zu ‚PROGRAMM.real‘ umbenannt worden ist. Danach noch das execute-Falg setzen:
chmod +x PROGRAMM