X11: Erste Schritte mit Linux
So grau wie die Theorie ohne Praxis ist ein X-Server ohne X-Clients (siehe Abb. rechts). Es
erscheint lediglich ein schwarz-weißes Bitmuster auf dem
Bildschirm.
In der Regel ist Linux nach einer
Standard-Installation aber so
eingestellt, dass bereits unmittelbar nach dem Booten der X-Server
startet und ein graphisches Login-Fenster anbietet. Nach dem Einloggen
fährt dann eine X-Session mit dem kompletten Desktop (normalerweise KDE
oder gnome) hoch.
Soweit sind wir hier noch nicht. Es ist zwar nicht obligatorisch, aber
doch lehrreich, die folgenden Trockenschwimmübungen in X11
nachzuvollziehen. Die Grundzusammenhänge zwischen X-Server, X-Clients
und X-Window-Manager werden mit diesen "ersten Schritten"
veranschaulicht; darüber hinaus wird gezeigt, wie bei knappen
Resourcen, z.B. auf einem betagten Rechner, mit einfachen Mitteln eine
brauchbare X11-Arbeitsoberfläche gebastelt werden kann.
Dazu ist zunächst erforderlich, Linux
im
Textmodus zu starten. Dies wird über den Runlevel geregelt. Den
Textmodus erhält durch Booten mit einer "3" als Parameter, z.B. Eingabe
von linux 3 am Bootpromt, oder indem
man
in /etc/inittab den Runlevel 3 konfiguriert:
# The default runlevel is defined here
id:3:initdefault:
Auch im laufenden Betrieb kann man als Superuser
"root" den Runlevel mit
der Eingabe
init 3
in den Textmodus wechseln.
Tip: Alternativ kann man in einer laufenden
X-Sitzung mit den Programmen Xnest
oder Xephyr einen X-Server
im X-Server starten und damit auch ohne root-Rechte X11-Experimente
durchführen.
X-Client und X-Server starten
Das Kommando xinit
startet gleichzeitig X-Clients und X-Server:
xinit X-Client --
X-Server
In der Regel kann -- X-Server weggelassen werden,
da xinit ohne
diese Angaben den lokalen X-Server mit startet.
Ein denkbar einfaches Beispiel:
xinit
xterm -ls -fn 9x15
Anschließend
erscheint ein "nacktes" Xterm auf dem grauem
Default-Hintergrund
des X-Servers. Es fehlt auch jeglicher Fensterrahmen, so dass das Xterm
weder
verschoben noch verkleinert oder vergrößert werden kann.
Wirklich arbeiten kann man damit nicht. Startet man ein weiteres
X-Programm, z.B. xclock , so erscheint dieses im Vordergrund und man
hat keine Möglichkeit, das Xterm wieder in den Vordergrund zu bringen.
Anmerkung: Um diese Schritte mit Xnest oder dem moderneren Xephyr durchzuführen,
generiert man zunächst mit
Xnest :100.0 &
oder Xephyr :100.0 &
ein zusätzliches Display mit der Nr. 100. Nun gilt es, dem Xterm
mitzuteilen, dieses Display zu verwenden:
xterm -ls -fn 9x15 -display :100.0
&

Das Kommando
xsetroot -solid NavyBlue
bringt Farbe in das sog. Root-Fenster. Damit
bezeichnet man in der X11-Terminologie das Grundfenster bzw. den
Hintergrund für alle anderen Fenster.
Eine wesentliche Verbesserung der Arbeitssituation ist das aber nicht.

Brauchbar wird das Ganze erst mit einem X-Window-Manager.
Für die einfachste Variante, die auf so ziemlich jedem Linux-
oder UNIX-System vorhanden ist, startet man
twm &
Nun kann man die Fenster zumindest verschieben, ihre Größe verändern
und sogar zu Icons minimieren (sowie per Doppelklick aus diesem
Zusatand wiederherstellen).
Eine X-Session
Um nicht jedes Mal diese Kommandos von neuem eingeben zu müssen,
hinterlegt
man in seinem Home-Verzeichnis eine Datei names .xinitrc
(Backup von der bereits vorhandenen .xinitrc
nicht vergessen!).
#!/bin/sh
#
#
Eine sehr einfache X-Session
#
xterm
-ls -sb -fn 9x15 -bg LightYellow2 -geometry 80x40+0+0 &
xclock
-update 1 -bg LightYellow2 -geometry -0-0 &
xeyes -geometry -0+0 &
xsetroot
-solid SteelBlue
twm
Ruft man nun xinit
ohne weitere
Angaben auf, so wird - sofern vorhanden - des .xinitrc-Skript ausgeführt.
Das Gleiche leistet das
Kommando xstart
, das zusätzlich für mehr Sicherheit
durch Abschottung des X-Servers gegen andere User sorgt.
Der twm ist einer der ältesten X-Window-Manger und gehört seit 1989
Standardausstattung jeder X11-Distribution. Mit dieser X-Session ist
zwar produktives Arbeiten schon möglich, aber die meisten Anwender
erwarten etwas mehr Komfort. Zu diesem Zweck wurde eine ganze Herde von Window-Managern und ganzen
Desktop-Umgebungen entwickelt, so dass sie ein eigenes Kapitel verdient haben.
|