Konfiguration der Benutzerumgebung
Die Benutzerumgebung, die man beim Start einer Sitzung auf einer
UNIX-Workstation erhält, ist weitgehend durch den Benutzer
konfigurierbar. Falls der Benutzer keine eigenen Maßnahmen
ergreift, erhält er die System-"Defaults" (Voreinstellungen).
Unterscheiden kann man zwischen der Konfiguration der Shell
(also des Kommando-Interpretierers, CLI = Command Line Interpreter),
des Terminals und - bei graphischen Benutzeroberflächen
(GUI = Graphical User Interface, z.B. X Window) - des
Window-Managers sowie des Erscheinungsbildes der X-Applikationen
(Clients) über Resources.
Der Login-Prozeß
Beim
login werden einige Umgebungsvariablen gesetzt
(PATH, LOGNAME, IFS, MAIL, CDPATH, HOME, SHELL), sodann werden
die für die (in der passwd-Datei angegebene) Login-Shell
(z.B. tcsh, csh, ksh, sh) spezifischen Initialisierungen durchgeführt.
(Einige Meldungen wie "motd" oder "lastlog" werden ggf. unterdrückt,
wenn die Datei $HOME/.hushlogin existiert.)
tcsh (erweiterte C-Shell)
- Initialisierungen erfolgen in der Reihenfolge:
- /etc/csh.cshrc
- /etc/csh.login
- $HOME/.tcshrc oder
- $HOME/.cshrc
- $HOME/.login
- (Hinweis: ".login" wird nur durchgeführt, wenn es sich
um eine Login-Shell handelt, während ".cshrc" beim Öffnen
jeder neuen C-Shell abläuft. Prinzipiell kann die tcsh auch so
konfiguriert werden, daß ".login" vor ".cshrc" abläuft.
Bei manchen Installationen gilt "/etc/cshrc" anstelle von "/etc/csh.cshrc".)
- Logout:
- /etc/csh.logout
- $HOME/.logout
- Hinweis: Beim Einrichten neuer Accounts werden hier die Dateien
.cshrc, .login und .profile aus dem Verzeichnis /user/defaults in die
HOME-Verzeichnisse der Benutzer kopiert.
csh (C-Shell)
- Initialisierungen erfolgen in der Reihenfolge:
- /etc/cshrc
- $HOME/.cshrc
- $HOME/.login
- (Hinweis: ".login" wird nur durchgeführt, wenn es sich
um eine Login-Shell handelt, während ".cshrc" beim Öffnen
jeder neuen C-Shell abläuft.)
- Logout:
- $HOME/.logout
ksh (Korn Shell)
- Initialisierungen erfolgen in der Reihenfolge:
- /etc/profile
- $HOME/.profile
sh (Bourne Shell)
- Initialisierungen erfolgen in der Reihenfolge:
- /etc/profile
- $HOME/.profile
bash (GNU Bourne-Again Shell)
(hier nicht implementiert) - Initialisierungsdateien sind
/etc/profile, $HOME/.bash_profile und ggf. $HOME/.bashrc.
X Window: Login über
xdm
Der X Display Manager (xdm) startet einen login-Prozeß.
(Die Konfiguration von xdm ist in /usr/lib/X11/xdm/xdm-config
angegeben.) Die Benutzervalidierung kann per Tastatur oder
graphisch über Icons erfolgen (pandora). Die Initialisierung
der Shells erfolgt wie im voranstehenden Abschnitt beschrieben;
bei einem xterm erfolgt eine Initialisierung als Login-Shell
allerdings nur, wenn die Option "-ls" gesetzt wird.
Nach erfolgreicher Benutzer-Validierung wird über
/usr/lib/X11/xdm/Xsession (an der Konsole) bzw.
/usr/lib/X11/xdm/Xsession-remote (an einem X Terminal) das
X Window System und ein Window-Manager (4Dwm, mwm, twm oder uwm)
gestartet. Nähere Informationen dazu finden sich im folgenden
Abschnitt.
Konfiguration des X Window Systems
Eine (englische) Kurzbeschreibung mit "frequently asked questions"
findet man
hier. Sofern mit xdm gearbeitet wird, kann ein Benutzer
mit Hilfe des Shell Scripts $HOME/.xsession die Konfiguration
(einschließlich des Window Managers) festlegen; im Falle
von xinit ist hingegen das Shell Script $HOME/.xinitrc relevant.
(Hinweis: Das .xsession-Script erbt im Gegensatz zu .xinitrc nicht
das Login-Shell Environment.)
Resources
Resources kontrollieren das Erscheinungsbild der X-Applikationen
(Clients), wie z.B. Geometrie, Farben und Fonts. Es gibt vielfältige
Möglichkeiten, sie zu modifizieren. Systemweite Einstellungen
für die Clients findet man im Verzeichnis
-
- /usr/lib/X11/app-defaults
Beispielsweise kontrolliert die Datei "XTerm" (also
/usr/lib/X11/app-defaults/XTerm) das Erscheinungsbild eines "xterm".
Ein typischer Eintrag sieht folgendermaßen aus:
-
- XTerm*background: cadetblue
Vor dem Doppelpunkt steht der Name der Variable, die eine bestimmte
Eigenschaft beschreibt; dabei ersetzt das Sternchen (*) eine oder
mehrere Komponenten des Variablennamens. (Diese Komponenten werden
durch Punkte getrennt, z.B. XTerm.VT100.background.) Hinter dem
Doppelpunkt steht der Wert (Text oder Zahl), der der Variablen
zugewiesen wird.
Die erste Komponente des Variablennamens ist der Name des Clients.
Dieser kann entweder ein Klassenname (class name) oder ein individueller
Name (instance name) sein. Ein Klassenname (hier "XTerm") fängt
üblicherweise mit ein oder zwei Großbuchstaben an.
Ein Aufruf von "xterm" nutzt die Resourcen mit "XTerm" oder "xterm",
ein individualisierter Aufruf wie "xterm -name console" hingegen
solche mit dem Namen "console" (mit geringerer Priorität auch
"XTerm", aber nicht "xterm").
Der Benutzer kann jeweils individuelle "application defaults" setzen,
sofern eine Umgebungsvariable (XAPPLRESDIR, XFILESEARCHPATH,
XUSERFILESEARCHPATH) auf ein entsprechendes Verzeichnis zeigt.
Anstelle der Verwendung solcher individueller Dateien empfiehlt
es sich im allgemeinen, eine Datei $HOME/.Xdefaults anzulegen,
in der die Modifikationen der Resources aller Clients zusammengefaßt
sind.
Resource-Dateien:
- $HOME/.Xdefaults
- Diese Datei wird bei jedem Start eines Clients konsultiert, sofern
nicht mit xrdb gearbeitet wird.
- $HOME/.Xresources
- Falls diese Datei (hier) existiert, werden ihre Resources
beim Start des X Servers (über Xsession) von diesem
geladen:
- xrdb -load -quiet $HOME/.Xresources
- Alternativ kann über ein Shell Script $HOME/.xsession mittels
xrdb eine Resource-Datei geladen werden.
- Hinweis: xrdb prozessiert die Resource-Datei zunächst
über den C-Präprozessor.
Wichtige Konfigurationsdateien im HOME-Verzeichnis
Hinweis: kommentierte Beispieldateien findet man im Verzeichnis
~tutor/Customize.
- .xsession
- Shell-Script, das - falls vorhanden - die gesamte Konfiguration
des X Window Systems vornimmt. Es löst also die systemweite
Default-Konfiguration ab. (Im allgemeinen empfiehlt es sich hier,
statt dessen mit .sgisession zu arbeiten.)
- .Xresources
- Resource-Datei, die - falls vorhanden - vom systemweiten
"Xsession" über xrdb geladen wird.
- .Xdefaults
- Default-Resource-Datei. Falls nicht mit xrdb gearbeitet wird,
wird sie bei jedem Start eines Clients konsultiert.
- .sgisession
- Shell-Script, das ggf. weitere Konfigurationen vornimmt bzw.
Clients startet.
- .4Dwmrc
- Konfiguration (Menü, Knöpfe, Tastenbelegung) des Window
Managers
4Dwm. Die Default-Konfiguration erfolgt in /usr/lib/X11/system.4Dwmrc
- .mwmrc
- Konfiguration (Menü, Knöpfe, Tastenbelegung) des Window
Managers
mwm. Die Default-Konfiguration erfolgt in /usr/lib/X11/system.mwmrc
- .chestrc
- Konfiguration des
Toolchest. Die Default-Konfiguration erfolgt in /usr/lib/X11/system.chestrc
- Hinweis: Es ist (je nach verwendeter Version des
Betriebssystems) sinnvoller, statt dessen die Datei ~/.toolchestrc
(Irix 4, überschreibt die Systemkonfiguration) bzw.
~/.auxchestrc (Irix 5, ergänzt die Systemkonfiguration) zu
verwenden. Siehe hierzu die
ausführlichere Erläuterung.
Hilfen zur Konfiguration
- Farben:
- Toolchest - Tools Customization Color Names
- colorview, Liste: showrgb
- Fonts:
- Toolchest - Tools Customization Font Names
- xfontsel, Liste: xlsfonts
- Fenster (Windows):
- xwininfo, xprop
- Hinweis zur Geometrie-Angabe (-geometry X0xY0+XOFFSET+YOFFSET):
- Die Angabe der Geometrie (Größe und Lage) erfolgt in
Pixeln (Größe eines xterm: SpaltenxZeilen). Positive
Offsets zählen von der linken oberen Bildschirmecke, negative
vom rechten bzw. unteren Rand. Beispiele:
- xterm -geometry 80x24+0+0 (links oben)
- xterm -geometry 80x24-0+0 (rechts oben)
- xterm -geometry 80x24+0-0 (links unten)
- xterm -geometry 80x24-0-0 (rechts unten)
- Display:
- xdpyinfo
Umlaute
Nützliche Hinweise bezüglich diverser Probleme mit deutschen
Umlauten findet man in der
ISO 8859-1 National Character Set FAQ.
Burkhard Kirste, 1994/10/01