X11 starten

Willemers Informatik-Ecke

Man kann aus einer normalen Anmeldung heraus den Grafikschirm starten oder beim Booten bereits in den grafischen Login gelangen, um sich von dort direkt in seine Sitzung einzuloggen.

Nacktstart mit xinit

xinit ohne .xinitrc

Wenn Sie sehen möchten, wie X startet und wie die einzelnen Komponenten arbeiten, können Sie einmal ein wenig experimentieren. Starten Sie dazu von der Kommandozeile den X-Server durch den direkten Aufruf von xinit. xinit ist ein Programm, das normalerweise durch startx gestartet wird. Bevor Sie dies tun, müssen Sie aber die Datei .xinitrc im Heimatverzeichnis umbenennen. Im Anschluss an das Experiment sollten Sie nicht vergessen, die Datei zurück zu benennen.

cd
mv .xinitrc .xinitrc.orig
xinit
..
mv .xinitrc.orig xinitrc

Fenster werden erst durch den Manager aktiv

Der Bildschirm wird grau, es erscheint ein fettes, diagonales Kreuz als Cursor und in der linken oberen Ecke befindet sich ein helles Rechteck, in dem sich offensichtlich ein Shellprompt befindet. Fährt man mit dem Cursor in das helle Feld, wird der Cursor offensichtlich aktiv. Die Überraschung: dieses helle Feld ist ein Fenster. Es fehlt ihm nur der Fensterrahmen, den normalerweise der Fenstermanager zur Verfügung stellt. Diesen kann man an dieser Stelle von Hand aufrufen. Je nachdem, welcher Fenstermanager auf dem System zu finden ist, starten Sie mwm (Motif, CDE) oder kwm (KDE), sawfish (GNOME), fvwm (Linux), twm oder uwm (alter MIT Fenstermanager). Danach sollte sich das Bild verändern. Vermutlich erscheinen Fensterrahmen und nun ist es auch möglich, das helle Fenster zu verschieben. Sofern Sie kein & hinter den Aufruf des Fenstermanagers gesetzt haben, wird dieser durch ctrl-C oder die Del-Taste wieder verschwinden. Sobald Sie sich aus dem Fenster ausloggen, wird auch xinit und damit der X-Server wieder enden.

Regulärer Start von X: startx

startx startet X Window aus der Shell

Wenn UNIX von sich aus in den Runlevel 2 bootet, findet man nur eine textuelle Umgebung. Um X aus der Shell zu starten, verwendet man den Befehl startx. Dieser startet den Prozess xinit, der die Datei .xinitrc im Heimatverzeichnis des Benutzers ausführt und anschließend endet. Ist keine Datei .xinitrc im Heimatverzeichnis des angemeldeten Benutzers vorhanden, wird die Systemdatei /usr/X11/lib/X11/xinit/xinitrc verwendet. In dieser Datei stehen die Startaufrufe aller Programme, die mit dem X auf dem Bildschirm erscheinen sollen. Alle diese Programme werden in den Hintergrund mit einem & gestellt. An letzter Stelle muss aber ein Programm ohne & gestartet werden und das ist normalerweise der Fenstermanager, der in seinem Namen meist auf >>wm<< endet. Er wird mit dem Kommando exec aufgerufen. Das führt dazu, dass er an die Stelle des Prozesses xinit tritt. Dadurch, dass er in der xinitrc an die Stelle des xinit tritt, endet die X-Sitzung, sobald der Fenstermanager beendet wird.

Damit ist die .xinitrc die wichtigste Konfigurationsdatei. Sie gestaltet den Initialdesktop und bestimmt den Fenstermanager.

Grafisches Einloggen: Display Manager xdm

Der Display Manager xdm wird durch den Übergang in den Runlevel 3 oder wie bei Linux 5 gestartet. Entsprechend kann der Start von xdm einfach durch einen Eintrag in der /etc/inittab erreicht werden.1)

x:5:respawn:/usr/bin/X11/xdm -nodaemon

Oft wird xdm in einem Initskript gestartet. Der Link befindet sich dann in /etc/rc.d/rc3.d, wenn xdm im Runlevel 3 gestartet wird.

.Xsession

Zwei Dateien bestimmen den Desktop des Anwenders nach dem Einloggen per xdm: .Xsession und .Xdefaults. Die Datei .Xsession wird wie die .xinitrc verwandt. Es werden Applikationen gestartet. Ist die .Xsession abgelaufen, endet auch die Sitzung und kehrt zurück zum Einloggen. Darum werden die Befehle so sortiert, dass der letzte derjenige ist, der läuft, solange die Sitzung läuft. Meist ist das der Fenstermanager. Dieses Programm wird mit exec aufgerufen. Alle anderen Programme werden mit einem & am Ende aufgerufen, also in den Hintergrund gestellt.

Eine kleine Beispielsitzung mit xdm

Die Aufgabenstellung für die Beispielsitzung soll es sein, sich anzumelden, ein Terminalfenster zu öffnen und zu schließen, sich auszuloggen und zu guter Letzt den Rechner geregelt herunterzufahren. Die gleiche Aufgabe wird später mit anderen Display Managern durchgeführt.

Einloggen

Nach dem Einschalten eines mit xdm installierten Rechners erscheint als Eingabeforderung eine große Dialogbox. Als Überschrift erscheint groß der Rechnername. Darunter befinden sich die Eingabefelder für login und Passwort. Nach Eingabe der Benutzerkennung, die durch Return abgeschlossen wird, wechselt der Cursor zur Eingabeaufforderung für das Passwort, das blind einzugeben ist. Es erscheint keine Rückmeldung auf dem Bildschirm. Nach einem weiteren Return ist man am System angemeldet.

Ausloggen durch Beenden des xterm

Das Aussehen des Bildschirms kann sich nun grundlegend unterscheiden, je nachdem, welcher Fenstermanager auf dem System läuft. Mit etwas Glück befindet sich auf dem Bildschirm bereits ein Terminalfenster. In diesem Fall ist es möglich, dass man sich ausloggt, indem man dieses Fenster mit ctrl-D oder dem Befehl exit beendet.

Menüeinträge prüfen

Im anderen Fall muss man untersuchen, was die Menüs hergeben, die erscheinen, wenn man mit der rechten und dann mit der linken Maustaste auf den Bildhintergrund klickt. X-Terminal oder xterm sind eindeutig Punkte zum Starten des Fensters. Durch ctrl-D oder den Befehl exit schließt das Fenster wieder. Man loggt sich über einen Menüpunkt aus, der je nach System Quit oder Exit heißt.

Herunterfahren aus dem xterm

Um das System herunterzufahren, darf man sich allerdings nicht ausloggen, sondern bleibt in dem Fenster, meldet sich mit dem Befehl su als root an und leitet mit einem der Befehle für den Shutdown das Herunterfahren der Maschine ein.

Es ist aber denkbar, dass der Systemadministrator auch ein Pseudo-Login definiert hat, um das Herunterfahren von Workstations zu ermöglichen.

Varianten des xdm

Neben dem klassischen xdm gibt es inzwischen auch andere Display Manager. Beispielsweise hat KDE mit dem kdm seinen eigenen Login. Praktischerweise reagiert er auch auf die Konfigurationsdateien des xdm. Eine der auffallendsten Verbesserungen ist die Möglichkeit, an dieser Stelle die Maschine herunterfahren zu können. Für Workstations ist dies eine wichtige Sache. Natürlich ist die Liste der berechtigten Personen begrenzbar.

Wie später noch gezeigt wird, kann xdm noch mehr. Vor allem kann man sich mit seiner Hilfe auch über das Netzwerk einloggen.


1 vgl. Eßer, Hans-Georg: KDE Der neue Desktop für Linux. Sybex, 1999. S. 95

Diese Seite basiert auf Inhalten aus dem Buch Arnold Willemer: Wie werde ich UNIX-Guru
Verlagsrechte bei galileo computing


Homepage (C) Copyright 2002 Arnold Willemer