xf86cfg - Konfigurieren von XFree86 Version 4 |
Übersicht |
Da sich die Syntax der Konfigurationsdatei XF86Config für die X-Server-Versionen 4.x von denen ihrer Vorgänger unterscheidet, wurden auch neue Konfigurationswerkzeuge erforderlich, die auf die neuen Möglichkeiten eingehen können. xf86cfg ist eines der Werkzeuge, das zwar in der derzeitigen Implementierung noch nicht alle Feinheiten unterstützt, aber zumindest die Ansätze einer kompletten Konfigurationshilfe aufweist.
xf86cfg bedingt einen vorkonfigurierten X-Server. Damit ist es erforderlich, die Ersteinrichtung als Root vorzunehmen. Das Programm entscheidet anhand der Shellvariablen »DISPLAY«, ob eine existierende Datei XF86Config zum Start von X herangezogen werden soll (DISPLAY ist gesetzt) oder ob zuvor eine neue Konfigurationsdatei erzeugt werden muss (DISPLAY nicht gesetzt). xf86cfg startet in letzterem Fall implizit »XFree86 -configure«, was allerdings der Rootberechtigung bedarf.
Die durch »XFree86 -configure« ermittelten Daten landen in einer Datei »~root/XF86Config«, die xf86cfg nachfolgend zum Serverstart verwendet. Ein Problem könnte nun sein, dass die resultierende Auflösung zur raschen Ermüdung der Augen führt, da der X-Server mit der maximal möglichen Auflösung startet und das Konfigurationsprogramm winzig klein in der Ecke des Desktops sein Dasein fristet. Um eine vernünftige Darstellung zu erzwingen, könnten Sie die Datei »~root/XF86Config« editieren und in der Section Screen die hohen Auflösungen durch geringere ersetzen (bspw. »1600x1200« durch »800x600«).
Abbildung 1: xf86cfg - Hauptbildschirm
Wenn Sie mit xf86cfg erstmals die X-Server-Konfiguration vornehmen, sollten Sie sich nach dem Programmstart in einer Ansicht analog zur obigen Abbildung vorfinden, d.h. die Geräte Tastatur, Maus und Grafikkarte sind symbolisch mit dem X-Server (Rechner) und der Monitor mit der Grafikkarte verbunden. Eine solche Konfiguration von Geräten wird Layout genannt.
Indem Sie mit der rechten Maustaste auf den mit Configure Layout bezeichneten Schalter drücken, gelangen Sie in ein Menü, das den Wechsel in weitere Ansichten erlaubt. Wir werden in den Abschnitten Modelines, Auflösungen und Farbtiefen (screen) und Server-Zugriff (access) darauf zurück kommen.
Die Zeile der Gerätesymbole ermöglicht die Hinzunahme weiterer Hardware zu einem Layout. Dies ist bspw. sinnvoll, wenn Sie mehrere Monitore an mehreren Grafikkarten (oder einer Dualhead-Grafikkarte) betreiben und diese unter X verwenden möchten (»Xinerama«). Wir kommen auch darauf zurück. Vorläufig nehmen wir an, dass jedes Gerät nur einmal im System vorhanden ist.
Wenn Sie mit der Maus über einem der Symbole verweilen, so wird ein Textfeld mit der aktuellen Konfiguration eingeblendet. Betätigen Sie hingegen über dem Symbol die rechte Maustaste, so öffnet sich ein Menü mit folgenden Einträgen:
configure
options
enable
disable
remove
Nicht alle Menüeinträge sind für alle Geräte zugänglich. Andere Einträge werden kontextabhängig freigeschaltet, so ist ein (De)Aktivieren erst nach erfolgter Konfiguration sinnvoll.
Konfiguration der Maus |
Abbildung 2: xf86cfg - Mauskonfiguration
Falls Sie überhaupt bis in den Konfigurationsdialog vorgedrungen sind, heißt das, dass die Grundfunktionalität Ihrer Maus bereits gegeben ist (das Programm lässt sich nicht per Tastatur bedienen). Für 2-Tasten-Modelle sollten Sie sich noch vergewissern, dass Emulate 3 buttons aktiviert ist, womit sich die sinnvollen Änderungen in diesem Dialog auch schon erschöpfen.
Das Rad von Wheelmäusen bringen Sie hier nicht zum Rollen. Hierzu sollten Sie in den unter options erreichbaren Dialog wechseln und zunächst das Protokoll anpassen. Tragen Sie hierzu in das linke Eingabefeld »Protocol« ein und in das rechte den Protokolltyp. Für viele Mäuse sollte hier »IMPS/2« oder »IntelliMouse« stehen, für eine Logitech MouseMan+ lautet der Eintrag »MouseManPlusPS/2« und für Microsofts IntelliMouse Explorer »ExplorerPS/2«.
Abbildung 3: xf86cfg - Mausrad-Konfiguration
Als weitere Option tragen Sie in das linke Feld (Abbildung 3) »ZAxisMapping« und rechts zwei Werte »x y« ein, wobei x eine um 1 höhere Zahl ist als die Maus Tasten besitzt. y ist immer der Wert von x+1 (bei einer 3-Tastenmaus also »4 5«).
Hinweis: Für Anwendungen, die die Unterstützung von Wheel-Mäusen nicht integriert haben, benötigen Sie zusätzlich das Programm imwheel.
Konfiguration der Tastatur |
Abbildung 4: xf86cfg - Tastaturkonfiguration
Jede Änderung, die Sie hier vornehmen, wird bei Betätigung des Schalters Apply changes sofort wirksam. Unter einem laufenden X-Window-System könnten Sie somit in einem Terminalfenster das Verhalten der Tastatur kontrollieren. Falls die so bezeichneten »toten Tasten« (^ ~ `) nicht direkt verfügbar sind (sondern erst nach einem folgenden Drücken der Leertaste), so empfiehlt es sich, anschließend in den options-Dialog zu wechseln und den Wert XkbVariant auf nodeadkeys zu setzen.
Konfiguration der Grafikkarte |
Die Einrichtung der Grafikkarte ist der komplexeste Teil der gesamten Konfiguration. Mit etwas Glück finden Sie Ihr Modell in der Liste aufgeführt, womit sich die Administration auf die Selektion des Listeneintrags beschränkt. Ist die Karte nicht enthalten, kann vielleicht der Treiber des Vorgängermodells den Ausweg bedeuten.
Abbildung 5: xf86cfg - Konfiguration der Grafikkarte
Für den Fall, dass Ihre Karte in keinster Weise erwähnt wurde und die aktuelle Konfiguration (mit der xf86cfg startete) keinesfalls zufrieden stellend ist, sollten Sie alle Werte per Hand eintragen, indem Sie in den Dialog options wechseln. Informationen über Ihre Grafikkarte erhalten Sie zumeist aus deren Handbuch. Eventuell helfen auch die Ausgaben der Kommandos SuperProbe, X -scanpci oder lspci -v weiter.
In der Beschreibung zur Datei XF86Config erfahren Sie, welche Optionen in der zuständigen Sektion »Device« möglich sind.
Konfiguration des Monitors |
Auch das Menü zur Monitoreinrichtung erreichen Sie per Mausklick mit der rechten Taste auf das Monitorsymbol.
Abbildung 6: xf86cfg - Konfiguration des Monitors
Tragen Sie am einfachsten die Werte für die horizontale und vertikale Freuqenz ein. Diese sollten entweder auf der Monitorrückseite oder im Handbuch zu finden sein. Wählen Sie keinesfalls höhere als die zulässigen Werte!
Um den Monitor einer konkreten Grafikkarte zuzuorden, müssen Sie diese unterhalb des Feldes Select card connected to monitor auswählen (rechte Maustaste)!
Weitere Optionen (...im options-Dialog) werden nur selten von Nöten sein; eventuell kann bei TFT-Bildschirmen eine Option gamma erforderlich werden, falls die Darstellung dunkler (ein Wert zwischen 0.1 und 1.0) bzw. heller (1.0 bis 10.0) erfolgen soll.
Serveroptionen |
Im Menü des Servers ist einzig der Eintrag options zugänglich. Hinweise zu möglichen Einträgen finden Sie im Zusammenhang mit der Beschreibung der XF86Config-Datei.
Abbildung 7: xf86cfg - Serveroptionen
Modelines |
Die Ansicht der Modelines erreichen Sie, indem Sie auf dem obersten Schalter per rechtem Mausklick den gleichnamigen Menüpunkt markieren.
Abbildung 8: xf86cfg - Modelines
Die so genannten Modelines steuern die Lage und das Format des Bildschirms und beeinflussen damit maßgeblich die Bildwiederholfrequenz des Monitors. Spätestens seit Werkzeugen wie xvidtune oder eben xf86cfg haben die Modelines viel von Ihrem Schrecken verloren. Wer dennoch hinter den Sinn der vielen Werte steigen möchte, der sei auf den Abschnitt Monitor aus der Datei XF86Config verwiesen.
Für jede Kombination aus Auflösung und Monitor kann die Ausrichtung des Bildes separat vorgenommen werden. Welche Auflösungen überhaupt verfügbar sind, wird in der Konfiguration der »Screens« fest gelegt; der Wechsel zwischen diesen erfolgt mittels der Schaltflächen [<<] bzw. [>>]. Bei mehreren konfigurierten Monitoren sind diese über den in der Abbildung mit Monitor[0] beschrifteten Schalter einstellbar.
Es empfiehlt sich die Aktivierung von Auto, um die Wirkung einer Änderung unverzüglich an der Reaktion des Servers nachvollziehen zu können. Benutzen Sie die einfachen Pfeile, um das Bild in die entsprechende Richtung zu verschieben. Mit Hilfe der doppelten Pfeile kann das Bild vergrößert bzw. verkleinert werden. Versuchen Sie, das Bild mittig anzuordnen, sodass die größtmögliche Darstellung erzielt wird, ohne dass die Ränder verzerrt erscheinen. Füllt das Ergebnis den Bildschirm nicht komplett aus, so regulieren Sie »den Rest« per Einstellung am Monitor nach.
Eine jede Einstellung wird über Add gespeichert.
Auflösungen und Farbtiefen |
Die Screen-Ansicht ist über den Eintrag Screen des Menüs erreichbar, das bei Klick der rechten Maustaste auf den obersten Schalter aufklappt. Dargestellt werden alle Monitore, die bislang konfiguriert wurden. Klicken Sie zum Bearbeiten der unterstützten Farbtiefen und Auflösungen mit der rechten Maustaste auf einen Monitor. Die Einstellungen betreffen somit genau diesen Bildschirm.
Abbildung 9: xf86cfg - Auflösungen und Farbtiefen
Alle Auflösungen der rechten Liste stehen Ihnen später zur Verfügung. Beachten Sie, dass die höchste hier stehende Auflösung später die Dimension des so genannten virtuellen Desktops bestimmt. D.h. wann immer Sie eine geringere Auflösung verwenden, wird nur ein Ausschnitt des virtuellen Desktops entsprechender Größe dargestellt, den Sie verschieben, indem die Maus über den Rand hinaus geführt wird. Dieses Verhalten empfinden viele Benutzer als lästig, sodass die höchste Auflösung auch ihrer »Arbeitsauflösung« entsprechen sollte.
Die erste Auflösung in der Liste bestimmt später die Auflösung, mit der der Server startet; eine absteigende Anordnung ist daher sinnvoll.
Default color depth ist die Farbtiefe, die der Server in der Voreinstellung verwendet. 1 und 4 Bit sind wohl eher für Monochrom-Bildschirme gedacht. Die 8 Bit-Einstellung ist zwar keine Augenweide, aber bei älteren Grafikkarten die einzige Chance, mit einem mageren Speicherausbau (<1MB) eine höhere Auflösung (>800x600) zu erzielen. Der Unterschied zwischen 16 und 24 Bit ist nur bei großflächigen Farbverläufen wahrzunehmen. Bei schnellen Grafikkarten ist durchaus die 24 Bit-Option zu empfehlen, aber prinzipiell leidet die Geschwindigkeit der Darstellung mit jeder Erhöhung der Farbanzahl (...und manche Spiele laufen nur mit einer konkreten Farbtiefe).
Mit Rotate screen lässt sich die Darstellung um 90° im Urhzeigersinn [CW] bzw. entgegen [CCW] des Uhrzeigersinns drehen.
Server-Zugriff |
Abbildung 10: xf86cfg - Server-Zugriff
Die Einstellungen dieser Maske berühren in keinster Weise die Zugriffsrechte des Servers, auch wenn der Name dieses vermuten lässt. Hierüber lässt sich das Verhalten der Tastatur anpassen. Die getroffenen Einstellungen landen nach Abschluss in der Datei /etc/X11/xkb/X0-config.keyboard.
Um AccessX zu aktivieren, muss Enable AccessX gesetzt sein. Time Out bestimmt die Zeit, nach der, ohne dass eine Eingabe am Rechner erfolgte, die AccessX-Eigenschaften automatisch abgeschaltet werden. Dies kann bei Maschinen, an denen sich mehrere Benutzer abwechseln, sinnvoll sein, da nicht jeder dieselben Einstellungen vorteilhaft empfindet.
Unter Enable sticky keys erfolgt die Konfiguration, ob Mehr-Tasten-Kombinationen (bspw. [Ctrl][S]) in sequentieller Form möglich sind, d.h. anstatt solche Tasten gleichzeitig betätigen zu müssen, wird derselbe Effekt durch nacheinander folgendes Drücken derselben erreicht. Ob diese Eigenschaft automatisch aktiviert werden kann, ist unter Auto [on|off] konfigurierbar. Wenn ja, lässt sich das Einschalten noch akkustisch durch einen Piepton untermalen (Modifiers beep). Mit jedem wiederholten Drücken einer der Modifier-Tasten (bspw. [Ctrl], [Alt]...) wird die Eigenschaft im Wechsel aktiviert bzw. deaktiviert.
Die Option MouseKeys konfiguriert den Nummernblock der Tastatur so, dass die Mausbewegungen mittels der Cursortasten simuliert werden können, [5] wirkt dann wie ein Einfach-Klick, [0] ahmt das Halten einer Taste nach und [/], [*], [-] symbolisieren die drei Maustasten. Um demzufolge die rechte Maustaste zu drücken, müssen gleichzeitig [5] und [/] betätigt werden. Die Parameter Peek speed, Time to peek und Motion delay konfigurieren die Geschwindigkeit, mit der der Mauszeiger über den Bildschirm eilt.
RepeatKeys bestimmt die Wiederholrate, die eine dauerhaft betätigte Taste auslöst. Repeat rate bestimmt, wie viele Zeichen in einer Sekunde maximal erzeugt werden und Repeat delay ist die Zeitspanne, die mindestens vergehen muss, bis eine dauerhaft betätigte Taste ein erneutes Signal erzeugt.
Ist SlowKeys aktiviert, erzeugt ein Tastenanschlag nur ein Zeichen, wenn die Taste auch innerhalb der angegebenen Zeitspanne wieder losgelassen wird. Ob ein Zeichen akzeptiert wurde oder nicht, lässt sich durch die zusätzlichen Optionen akkustisch verdeutlichen.
BounceKeys konfiguriert letztlich eine Zeitspanne, die mindestens zwischen zwei Anschlägen auf einunddieselbe Taste verstreichen muss, bis dieses als zwei Anschläge gewertet wird.
Xinerama |
Zum Abschluss möchte ich skizzieren, wie der X-Server konfiguriert werden kann, um mehrere Grafikkarten und Monitore zu verwenden, wobei wir im Beispiel von einer zweiten Grafikkarte und einem zweiten Monitor ausgehen.
Wählen Sie im unter Layout befindlichen Menü den Eintrag für New server layout. Sie können diesem Layout einen beliebigen (aber eindeutigen) Namen geben.
Fügen Sie jeweils eine weitere Grafikkarte und einen weiteren Monitor hinzu, indem Sie das jeweilige Symbol aus der oberen Leiste anwählen. Konfigurieren Sie die Geräte wie oben beschrieben. Vergessen Sie nicht das Anlegen einer eigenen Screen-Section und die Konfiguration der Modelines für den neuen Monitor!
Klicken Sie nun der Reihe nach auf die einzelnen Geräte (außer Monitore) und wählen Sie enable aus dem per rechter Maustaste erreichbaren Menü. Die Monitore verbinden Sie im Monitor-Konfigurations-Dialog mit einer Grafikkarte.
Die voreingestellte Anordnung der beiden Monitors ist nebeneinander. Möchten Sie den zweiten Monitor anders positionieren, so müssen Sie in die Screen-Ansicht wechseln. Verschieben Sie die Symbole der Monitore entsprechend der gewünschten Anordnung.
Beenden Sie nun xf86cfg und Bestätigen das Speichern der Dateien. Abschließend sollten Sie den Device-Abschnitt der Datei XF86Config überprüfen. In den mir vorliegenden Programmversionen schlich sich ein Fehler in der Screen-Zeile ein:
Section "Device" BoardName "MGAG400" BusID "1:0:0" Driver "mga" Identifier "Device[1]" VendorName "Matrox" Videoram 32768 Screen "1" EndSection |
Die angegebene Screen-Nummer darf nicht in Anführungsstriche geschrieben werden, da die Server (in den von mir getesteten Versionen 4.0-4.0.2) mit einem Syntaxfehler abbrechen. Ändern Sie derartige Zeilen:
Section "Device" ... Screen 1 EndSection |
Haben Sie weitere Grafikkarten konfiguriert, sollten Sie deren Abschnitte ebenfalls anpassen.
Beim Start von X wählt der Server automatisch das Layout des ersten Abschnitts aus. Um ein alternatives Layout zu nutzen, muss dieses in der Kommandozeile angegeben werden:
user@sonne> startx -- -layout "Layout[2]" |
War die Konfiguration erfolgreich, sollte jetzt der zweite Monitor einen grauen Hintergrund zeigen. Der Desktop selbst ist noch immer vollständig auf dem ersten Monitor vorhanden, Sie können allerdings schon mit der Maus zwischen den Bildschirmen wechseln.
Um den Desktop über mehrere Bildschirme zu verteilen, muss erst noch die Xinerama-Erweiterung des Servers aktiviert werden. Per Kommandozeile genügt ein:
user@sonne> startx +xinerama |
Möchten Sie Xinerama permanent mit einem Layout verwenden, so ergänzen Sie die Zeile
Section "ServerLayout" Identifier "Layout[2]" ... Option "Xinerama" "on" EndSection |
in der entsprechende »Section ServerLayout« der Datei XF86Config.