Das X-Server Konfigurations HOWTO
1.
Was ist der X-Window-Server?
Grafik gegen Texteingabe
Jeder normale Anwender hat wahrscheinlich Angst, wenn er daran denkt Befehle
eintippen zu müssen. Warum ist es nicht möglich sich durch die von Gentoo (und
Linux allgemein) zur Verfügung gestellte Freiheit einfach mit der Maus
durchzuklicken? Ok, natürlich ist dies möglich! Linux bietet uns dazu eine
große Palette an Benutzeroberflächen und -umgebungen, die man auf dem bereits
bestehenden System installieren kann.
Die größte Überraschung, die Sie dabei erleben ist die, dass eine grafische
Benutzeroberfläche lediglich ein Programm ist, das auf Ihrem System läuft. Es
ist kein Teil des Linux-Kernels oder des Systems. Es ist ein kraftvolles
Tool, welches die grafischen Fähigkeiten von Ihrem Computer aktiviert.
Da Standards wichtig sind, wurde ein Standard zur Erstellung und Bewegung von
Fenstern am Bildschirm, kommunizieren mit dem Benutzer über Maus und Tastatur
und anderen grundlegend wichtigen Dingen erschaffen. Benannt wurde dieser dann
X Window System, kurz X11 oder nur X. Verwendet wird er
auf Unix, Linux und Unix-ähnlichen Betriebssystemen auf der ganzen Welt.
Ein Programm, welches dem Benutzer ermöglicht, grafische Benutzeroberflächen zu
starten und den X11 Standard verwendet ist Xorg-X11, eine Abspaltung vom
XFree86-Projekt. XFree86 hat entschlossen, eine Lizenz zu verwenden, die nicht
kompatibel mit der GPL ist; die Verwendung von Xorg ist daher empfehlenswert.
Der offizielle Portage Baum stellt nunmehr keine XFree86 Pakete bereit.
Das X.org Projekt
Das X.org Projekt macht und wartet eine frei
kopierbare open-source Implementation des X11-Systems. Es ist eine Open Source
X11 basierende Desktop Infrastruktur.
Xorg unterstützt die Schnittstelle zwischen Hardware und der grafischen
Software, die Sie starten wollen. Nebenbei hat Xorg auch noch volle
Netzwerkunterstützung, was bedeutet, dass Programme auf einem Rechner laufen
und auf einem anderen angezeigt werden können.
2.
Installation von Xorg
Bevor Sie Xorg installieren müssen Sie zwei wichtige Variablen in der Datei
/etc/make.conf einstellen.
Die erste Variable ist VIDEO_CARDS. Dieser Wert wird verwendet um den
Videotreiber festzulegen den Sie verwenden wollen und richtet sich in der Regel
nach dem Hersteller und dem Typ Ihrer Videokarte. Die gängigsten Einstellungen
sind nvidia für Nvidia-Karten und fglrx für ATI Radeon Karten.
Diese Namen stehen für die proprietären Treiber von Nvidia bzw. von ATI. Falls
Sie lieber die Opensource-Treiber für diese Karten verwenden möchten, wählen Sie
nv anstatt nvidia, bedenken Sie aber bitte, dass bei diesem
Treiber keine 3D-Beschleunigung möglich ist. Die freien radeon und
radeonhd Treiber für ATI-Karten unterstützen volle 3D-Beschleunigung auf
älteren Radeon-Karten, aber funktionieren noch nicht alle Features der neueren.
Die Variable VIDEO_CARDS kann auch mehr als einen Treiber enthalten, in
diesem Fall kann man mehrere Werte mit Leerzeichen getrennt angeben.
Die zweite Variable ist INPUT_DEVICES und wird verwendet um festzulegen,
welche Treiber für die Eingabegeräte erstellt werden sollen. In den meisten
Fällen reicht aus hier keyboard mouse anzugeben. Falls Sie alternative
Eingabegeräte verwenden, z.B. ein Synaptics-Touchpad für ein Laptop, stellen Sie
sicher, diese auch zu INPUT_DEVICES hinzuzufügen.
Nun müssen Sie sich also entscheiden, welche Treiber Sie verwenden möchten
und die entsprechenden Einstellungen dann in /etc/make.conf
vornehmen:
Befehlsauflistung 2.1: Beispiel für Einträge in make.conf |
INPUT_DEVICES="keyboard mouse"
VIDEO_CARDS="nvidia"
VIDEO_CARDS="fglrx"
|
Mehr Beispiele und Informationen zur Konfiguration von nVidia und
ATI-Grafikkarten gibt es in Gentoo Linux
nVidia Guide und in Gentoo Linux ATI
FAQ. Falls Sie nicht wissen welchen Treiber Sie verwenden sollten, bitte
lesen Sie in diesen Anleitungen nach.
Notiz:
Falls die oben vorgeschlagenen Einstellungen für Sie nicht zutreffen, dann
starten Sie emerge -pv xorg-server, gucken Sie sich die angebotenen
Optionen an und wählen die aus, die für Ihr System zutreffen. Das folgende
Beispiel gilt für die amd64-Architektur und für xorg-server-1.2.
|
Befehlsauflistung 2.2: Anzeige aller vorhandenen Treiberoptionen |
# emerge -pv xorg-server
These are the packages that would be merged, in order:
Calculating dependencies... done!
[ebuild R ] x11-base/xorg-server-1.2.0-r3 USE="dri nptl xorg (-3dfx) -debug
-dmx -ipv6 -kdrive -minimal -sdl -xprint" INPUT_DEVICES="keyboard mouse -acecad
-aiptek -calcomp -citron -digitaledge -dmc -dynapro -elo2300 -elographics -evdev
-fpit -hyperpen -jamstudio -joystick -magellan -microtouch -mutouch -palmax
-penmount -spaceorb -summa -synaptics -tek4957 -ur98 -vmmouse -void -wacom"
VIDEO_CARDS="nvidia -apm -ark -chips -cirrus -cyrix -dummy -epson -fbdev -fglrx
-glint -i128 (-i740) -i810 (-impact) (-imstt) -mach64 -mga -neomagic (-newport)
(-nsc) -nv -r128 -radeon -rendition -s3 -s3virge -savage -siliconmotion -sis
-sisusb (-sunbw2) (-suncg14) (-suncg3) (-suncg6) (-sunffb) (-sunleo) (-suntcx)
-tdfx -tga -trident -tseng -v4l -vesa -vga -via -vmware -voodoo" 0 kB
|
Nachdem Sie die nötigen Variablen richtig gesetzt haben können Sie nun das
Xorg-Paket installieren.
Befehlsauflistung 2.3: Installation von Xorg |
# emerge xorg-server
|
Notiz:
Sie können anstelle des leichtgewichtigen Pakets xorg-server auch das Metapaket
xorg-x11 installieren.xorg-x11 und xorg-server haben die
gleiche Funktionalität. Jedoch bringt xorg-x11 viele weitere Pakete mit
sich, die Sie wahrscheinlich nicht benötigen, z.B. ein großes Sortiment
bestehend aus Schriftarten in verschiedensten Sprachen. Diese sind für einen
funktionierenden Desktop nicht erforderlich.
|
Wenn die Installation fertig ist, müssen Sie eventuell ein paar
Entwicklungsvariablen reinitialisieren. Dies geht mit folgenden zwei Befehlen
ganz einfach: env-update und dann source /etc/profile.
Befehlsauflistung 2.4: Reinitialisierung der Entwicklungsvariablen |
# env-update
# source /etc/profile
|
3.
Konfiguration von Xorg
Die xorg.conf Datei
Die Konfigurationsdatei von Xorg heißt xorg.conf und befindet sich
in /etc/X11. Xorg stellt ein Beispiel für eine solche
Konfigurationsdatei bereit, nämlich /etc/X11/xorg.conf.example,
welche Sie nutzen können, um Ihre eigene Konfiguration zu erstellen. Diese Datei
enthält jede Menge Kommentare, und falls Ihnen diese nicht genügen, können
Sie noch die Man-Seiten zu Rate ziehen:
Befehlsauflistung 3.1: Lesen der xorg.conf Man-Page |
# man 5 xorg.conf
|
Viel Spaß beim Lesen, wir werden diese Konfigurationsdatei nun jedoch
automatisiert erzeugen.
Standard: Automatische Erzeugung von xorg.conf
Xorg ist dazu fähig, die meisten Einstellungen für Sie zu übernehmen. In den
meisten Fällen wird es nur nötig sein, ein paar Zeilen zu ändern um die
Auflösung einzustellen. Wenn Sie etwas über Optimierung erfahren wollen,
schauen Sie am Ende dieses Kapitels nach! Aber zuerst werden wir nun versuchen,
eine (hoffentlich) lauffähige Xorg-Konfigurationsdatei zu generieren.
Befehlsauflistung 3.2: Generieren der xorg.conf Datei |
# Xorg -configure
|
Vergessen Sie nicht die letzten Zeilen die Xorg auf den Bildschirm schreibt, zu
lesen! Wenn irgendwo steht, dass etwas schief gegangen ist, müssen Sie die
xorg.conf Datei wohl oder übel selbst schreiben. Für den Fall,
dass es keine Fehler gab, wird bestätigt, dass die
/root/xorg.conf.new Datei bereit zum Testen ist. Also tun wir das
auch! ;)
Befehlsauflistung 3.3: Testen der xorg.conf.new Datei |
# X -config /root/xorg.conf.new
|
Wenn alles geklappt hat, sollten Sie ein simples schwarzweiß Muster sehen.
Stellen Sie sicher, dass Ihre Maus korrekt funktioniert und dass die Auflösung
gut genug ist. Falls Sie einen Fehler hinsichtlich "/dev/mouse" bekommen haben,
sollten Sie versuchen das Mausgerät auf /dev/input/mice, innerhalb des
"InputDevice" Abschnitts von xorg.conf, zu setzen. Sie werden
vielleicht nicht in der Lage sein die exakte Auflösung zu erraten, aber es
sollte Ihnen möglich sein zu erkennen ob sie zu niedrig ist. Sie können
jederzeit beenden indem Sie Strg-Alt-Backspace drücken.
Alternative: Halbautomatische Generierung der xorg.conf Datei
Xorg unterstützt ein Tool, genannt xorgconfig, welches Sie über die
verschiedenen Informationen von Ihrem System befragt (Grafikkarte, Tastatur,
...). Basierend auf diese Eingaben erstellt es dann eine xorg.conf
Datei.
Befehlsauflistung 3.4: Halbautomatische Generierung von xorg.conf |
# xorgconfig
|
Ein weiteres Hilfsprogramm von Xorg ist xorgcfg, welches zuerst
versuchen wird Xorg -configure auszuführen und dann den X Server
startet für weitere, abschließende Verbesserungen.
Befehlsauflistung 3.5: Verwenden von xorgcfg |
# xorgcfg
# xorgcfg -textmode
|
Kopieren der xorg.conf Datei
Kopieren Sie nun die xorg.conf.new nach
/etc/X11/xorg.conf, so dass Sie nicht immer X -config
tippen müssen, da X oder startx ein Stück leichter ist.
Befehlsauflistung 3.6: Kopieren der xorg.conf |
# cp /root/xorg.conf.new /etc/X11/xorg.conf
|
Verwenden von startx
Versuchen Sie nun startx um damit den X-Server zu starten. startx
ist ein Skript, welches eine X-Session ausführt. Das heißt, dass es den
X Server und einige graphische Anwendungen darauf startet. Es entscheidet
welche Anwendungen gestartet werden sollen mit folgender Logik:
-
Wenn eine Datei genannt .xinitrc im Home Verzeichnis
existiert, dann wird es die dort aufgeführten Befehle ausführen.
-
Ansonsten wird es den Wert der XSESSION Variable auslesen und eine der
verfügbaren Sitzungen in /etc/X11/Sessions/ entsprechend
ausführen. Sie können den Wert von XSESSION in
/etc/env.d/90xsession setzen, um es als einen Standard für alle
Benutzer des Systems zu definieren. Beispielsweise führen Sie als root
echo XSESSION="Xfce4" > /etc/env.d/90xsession aus. Dies erzeugt die
Datei 90xsession und setzt die standardmäßige X-Sitzung auf
Xfce4.
-
Wenn alles vorherige versagt wird auf einen simplen Window Manager
zurückgegriffen, normalerweise twm.
Befehlsauflistung 3.7: Starten von X |
# startx
|
Wenn sie einen hässlichen, ekelhaften, abstoßenden und deformierten
Window-Manager sehen, dann ist dies twm. Um die twm Sitzung zu beenden
können Sie exit oder Strg+D in den erscheinenden xterms eingeben. Sie
können die X-Session auch "töten" indem Sie die Strg-Alt-Backspace
Tastenkombination anwenden. Dies wird dazu führen, dass X abrupt beendet wird
-- etwas das nicht immer die richtige Wahl ist. Es tut jedoch nicht weh.
4.
Optimieren von xorg.conf
Einstellen der Auflösung
Wenn es Ihnen so vorkommt, dass die Bildschirmauflösung nicht richtig ist,
müssen Sie zwei Abschnitte in der Konfiguration kontrollieren. Als erstes den
Screen Abschnitt, in welchem die gesamten Auflösungen, mit denen der
X-Server dann läuft, enthält. Standardmäßig sind hier keine Einstellungen
vorgegeben. Wenn dies der Fall ist, nimmt Xorg die Auflösungen, die im
Abschnitt Monitor stehen.
Xorg kontrolliert die Einstellungen für HorizSync und VertRefresh
im Monitor Abschnitt und wählt daraus die richtige Auflösung.
Daher lassen wir diese Einstellungen noch wie sie sind. Nur, und nur dann, wenn
die Änderungen im Screen Abschnitt (darauf gehen wir gleich ein) nichts
bewirken, müssen Sie die Eigenschaften des Monitor herausfinden und richtig
eintragen. Ein Tool, um dies zu tun, ist zum Beispiel
sys-apps/ddcxinfo-knoppix.
Warnung:
Ändern Sie die Werte dieser beiden Variablen nicht, ohne zuvor die
genauen Spezifikationen des Bildschirms zu kennen. Dies kann im besten Fall
dazu führen, dass Sie eine Fehlermeldung des Monitors erhalten oder
schlimmstenfalls, dass der Monitor unter die Raucher geht ...
|
Nun ändern Sie die Auflösung. Im nächsten Beispiel von
/etc/X11/xorg.conf fügen Sie die Zeilen Modes und
DefaultDepth hinzu, damit der X-Server standardmäßig mit 24bit
Farbtiefe und 1024x768 startet. Beachten Sie dabei die anderen Werte nicht, sie
sind Beispiele und können abweichen!
Befehlsauflistung 4.1: Ändern der Screen Sektion in /etc/X11/xorg.conf |
Section "Screen"
Identifier "Default Screen"
Device "S3 Inc. ProSavage KN133 [Twister K]"
Monitor "Generic Monitor"
DefaultDepth 24
SubSection "Display"
Depth 24
Modes "1024x768"
EndSubSection
EndSection
|
Starte nun X (startx), um herauszufinden, ob die Auflösung auch wirklich
verwendet wird.
Konfiguration der Tastatur
Um X beizubringen, eine internationale Tastatur zu verwenden, suchen Sie in der
Konfigurationsdatei nach dem InputDevice Abschnitt, in dem die Tastatur
konfiguriert wird, und fügen Sie XkbLayout hinzu. Das Beispiel zeigt die
Konfiguration für ein deutsches Tastaturlayout.Für ein anderes Tastaturlayout
ist nur der Landes-Keycode zu ersetzen:
Befehlsauflistung 4.2: Ändern des Tastaturlayouts |
Section "InputDevice"
Identifier "Generic Keyboard"
Driver "keyboard"
Option "CoreKeyboard"
Option "XkbRules" "xorg"
Option "XkbModel" "pc105"
Option "XkbLayout" "de"
EndSection
|
Konfigurieren der Maus
Wenn Ihre Maus nicht funktioniert, sollten Sie zuerst kontrollieren, ob sie
überhaupt vom Kernel erkannt wird. Mäuse werden (vom Gerät her) als
/dev/input/mouse0 (oder /dev/input/mice wenn Sie
mehrere Mäuse verwenden möchten) erkannt. In einigen Fällen wird
/dev/psaux verwendet. In jedem Fall können Sie überprüfen, ob die
Maus erkannt wurde, indem Sie nachfolgenden Befehl eingeben und die Maus
bewegen. Sie werden normalerweise einiges wirres Zeug auf Ihrem Bildschirm
sehen. Um die Überprüfung zu beenden, drücken Sie Strg+C.
Befehlsauflistung 4.3: Überprüfen der Maus |
# cat /dev/input/mouse0
|
Wenn die Maus nicht erkannt wurde, sollten Sie sich vergewissern, dass alle
Module richtig geladen wurden.
Für den Fall, dass die Maus gefunden wurde, schreiben Sie das richtige Device
in die Option "Device" im Abschnitt InputDevice. Im nächsten Beispiel
werden wir auch noch zwei andere Einstellungen ändern: Protocol (Enthält
das Protokoll, mit dem die Maus läuft -- meistens PS/2) und
ZAxisMapping (Dies ermöglicht es, ein Mausrad (falls vorhanden) zu
verwenden).
Befehlsauflistung 4.4: Ändern der Mauseinstellungen in /etc/X11/xorg.conf |
Section "InputDevice"
Identifier "TouchPad Mouse"
Driver "mouse"
Option "CorePointer"
Option "Device" "/dev/input/mouse0"
Option "Protocol" "IMPS/2"
Option "ZAxisMapping" "4 5"
EndSection
|
Geben Sie nun erneut startx ein, und freuen Sie sich über die bereits
erzielten Ergebnisse. Gratulation, Sie haben nun ein funktionierendes Xorg auf
Ihrem System. Der nächste Schritt ist, diesen hässlichen
Leichtgewicht-Window-Manager zu entfernen und einen "richtigen" (zum Beispiel
KDE oder GNOME) zu installieren.
5.
Ressourcen
Erzeugen und Optimieren von xorg.conf
Zuallererst: man xorg.conf stellt eine gute Referenz aller Einstellungen
der Konfigurationdatei zur Verfügung. Halten Sie diese immer in der näheren
Umgebung geöffnet, wenn Sie Änderungen vornehmen!
Stellen Sie ebenfalls sicher, einen Blick in die
/etc/X11/xorg.conf.example zu werfen; Sie können diese kopieren
und als Basis zum Schreiben Ihrer eigenen xorg.conf verwenden.
Sie finden die X.org FAQ auf der
Website, zusätzlich zu weiteren Dokumentationen.
Es gibt auch jede Menge Beschreibungen im Internet. Wir führen hier nur ein
paar auf. Wenn Sie weitergehende Informationen benötigen, scheuen Sie sich
nicht davor Google zu verwenden. Da
xorg.conf und XF86Config (die Konfigurationsdatei vom
XFree86-Projekt) die selben Konfigurationen verwenden und im Internet mehr für
XF86Config zu finden ist, listen wir diese Ressourcen natürlich
auch auf.
Andere Ressourcen
Mehr Informationen zur Installion und Konfiguration verschiedener grafischer
Desktopumgebungen und Anwendungen finden Sie im Abschnitt Gentoo Desktop Dokumentationsressourcen
unserer Dokumentation.
Wenn Sie von einer früheren Version auf xorg-server-1.5 upgraden, lesen Sie auf
jeden Fall den Migrationsleitfaden.
Die Inhalte dieses Dokuments sind unter der Creative Commons -
Namensnennung / Weitergabe Lizenz lizenziert.
|