startx >& .xerrorsDie Umleitung der Standard- und Fehlerausgabe in eine Datei ist wichtig, da sonst alle Fehlermeldungen auf der Console landen, d.h. der Graphikbildschirm scrollt durch, und die Fenster verschwinden oben aus dem Bildschirm.
Von startx werden zwei Dateien beachtet, die der Konfigurierung des Servers bzw. des Startups von clients dienen. Diese sollten im Home liegen, ansonsten werden Standardfiles aus /local/X11/lib/X11/xinit benutzt.
Die Datei .xserverrc wird als Kommandozeile zum Starten des X-Servers benutzt. Hier sollte
X :0 -auth .Xauthorityenthalten sein, damit der Authorisierungsmechanismus eingeschaltet wird.
Sehr viel interessanter ist das Script .xinitrc. Hier kann man seine X-Umgebung individuell gestalten. Dazu werden erst evtl. benötigte Shell-Variable gesetzt (mindestens DISPLAY) dann die Resourcen aus .Xdefaults in geladen. Danach kann man beliebige clients starten. Empfehlenswert ist mindestens einen Windowmanager und ein xterm zustarten.
Beachte: Da .xinitrc ein
Script ist, und von
xinit wie ein
normales Programm ausgeführt wird, muß es
ausführbar sein
(chmod +x) und in der
ersten Zeile einen
Shell-Script-Header
#!/bin/csh -f haben. Ist dies nicht der Fall, kann das zu
den unleserlichsten Fehlermeldungen führen.
Wenn das Script beendet ist, ist auch die X-Session beendet, d.h. der X-Server beendet sich und alle Clients sterben. Man muß also bei der Konstruktion seines .xinitrc - Scriptes beachten, daß am Ende ein Kommando steht, das nicht sofort terminiert, insbesondere natürlich nicht im Hintergrund gestartet wird. Standardmäßig startet man als letztes den Windowmanager im Vordergrund. Wenn man dann die Exit-Funktion des Managers aufruft (z.B. aus seinem PullDown Menü) beendet sich auch X.
Hat man einmal alle Shells (xterms) und den Windowmanager beendet und der Server läuft noch, kann man X nur noch per rlogin von einem anderen Rechner aus beenden. Dazu schießt man den Prozeß namens X ab (genaugenommen steht in der Ausgabe vom Prozeßlisting des ps genau der String, der in .xserverrc angegeben ist).