SuSE Linux: Versionen 7.0 bis 8.0
XFree86: Version 4.x.x
Nach der Installation wird die grafische Oberfläche unsauber dargestellt oder funktioniert gar nicht. Daher möchten Sie die Komponenten (Maus, Tastatur, Grafikkarte und Monitor) neu konfigurieren um evtl. andere Einstellungen auszuprobieren.
Dieser Artikel soll Probleme aufzeigen, die im Zusammenhang mit der Konfiguration des X11-System entstehen und wie Sie diese ggf. beseitigen können.
STRG+ALT+F1
init 3 (init 2 für SuSE Linux 7.0)
aus um in den Runlevel 3 zu fahren. Anschliessend erhalten Sie eine Meldung wie:
MASTER RESSOURCE: CONTROL LEVEL 3 HAS BEEN REACHED
boot:
linux 3
Da Benutzer der Version 7.0 diesen LILO-Bootbildschirm nicht haben kann mit dem Befehl
linux 2
gestartet werden. Ab SuSE Linux 7.2 wählen Sie den Eintrag aus dem lilo-Menü, den Sie starten möchten und hängen Sie einfach eine 3 (der Eintrag linux ist bereits vorhanden) hinten an.
Nachdem sich das System nun im Runlevel 3 befinden, können Sie mit der Konfiguration beginnen.
Alle neueren Grafikkarten (Radeon, Rage Fury Maxx, GeForce 2 GTS/MX, Matrox G450 u.w.) können nur mit Sax2 konfiguriert werden, wohin gegen ältere Grafikkarten (wie ATI Rage128er Serie, Mach64, S3-Karten, Matrox G100-G400, Nvidia Riva128 sowie TNT und TNT2 u.w.) noch teilweise von XFree 3.3.6 unterstützt werden. Sollten Sie also Probleme mit den XFree 86 4.x.x Treiber haben können Sie bei älteren Grafikkarten auf Sax ausweichen.
Welchen Chipsatz Ihre Grafikkarte nun benutzt lässt sich recht einfach mit einem Befehl herausfinden:
/sbin/lspci
01:00.0 VGA compatible controller: nVidia Corporation NV11 (rev a1)
sax2 -p
ausführen. Dieser gibt dann aus:
Chip: 0 is -> Nvidia GeForce 2 MX 1:0:0 0x10de 0x0110 AGP nv
Chip: 0 = erster gefundener Grafikchipsatz Nvidia GeForce 2 MX = Typ der Grafikkarte. U.U. kann hier unknown unknown angezeigt werden. Sollte als letzte Position fbdev angegeben werden, wurde Ihre Karte als nicht unterstützt klassifiziert und es wird versucht den Framebuffer einzurichten. 1:0:0 = Beschreibt in welchem Slot die Karte steckt. Diese ist nur wichtig wenn Sie eine Konfi- guration mit mehreren Garfikkarten planen. Beachten Sie aber bitte, dass der Installationssupport für solche Fragen nicht in Anspruch genommen werden kann. 0x10de 0x0110 = Hersteller und Kartennummer AGP = es handelt sich um eine AGP-Karte nv = Das Treibermodul mit dem Sax startet, wenn nicht andere Parameter übergeben werden
Die Konfigurationsdatei XF86Config für XFree 4.x.x wird in /etc/X11/ abgelegt.
Um die Konfiguration der grafischen Oberfläche mit Sax2 zu starten führen Sie einfach das Kommando
sax2
aus. Benutzer der SuSE Linux Version 7.0 werden hier evtl. die Frage gestellt bekommen, ob Sie von XFree 3.3.6 auf Xfree 4.0 umstellen möchten. Bestätigen Sie diese Frage mit yes. Anschliessend wird Sax2 gestartet.
Bei manchen Grafikkarten kann es vorkommen, dass kein passendes Modul für die eingebaute Grafikkarte gefunden werden kann, in diesem Fall wird dann Sax gestartet und Sie können die Konfiguration wie bereits oben beschrieben durchgehen. Mit Version 7.1 sollte nehezu jede Grafikkarte mittels XFree 4.0.2 konfigurierbar sein, Ausnahmen und besondere Grafikkarten natürlich ausgeschlossen.
Sax2 bietet einige Möglichkeiten um mit verschiedenen Parametern evtl. auftretende Probleme zu umgehen. Nachfolgend ein Auflistung der wichtigsten Optionen:
sax2 -p = Liest den Bus aus und listet alle als Grafikkarten erkannten Karten auf. sax2 -q = Deaktiviert die Hardwareerkennung sax2 -l = Startet Sax2 mit 640*480@60Hz. DDC-probing ist abgeschaltet. Diese Option ist hilfreich falls der Monitor beim Start von Sax2 abschaltet oder Sie einen schwarzen Bildschirm haben. sax2 -m 0= = Mit dieser Optionenkette wird Sax2 mitgeteilt, welches Modul zum Starten benutzt werden soll um die Grafikkarte anzusprechen. z.B. sax2 -m 0=r128 lädt das Modul für die Rage-128-Karten Alle verfügbaren Module für XFree 4.x.x sind zu finden unter: /usr/X11R6/lib/modules/drivers/ apm_drv.o fbdev_drv.o neomagic_drv.o sis_drv.o ark_drv.o glide_drv.o nv_drv.o tdfx_drv.o ati_drv.o glint_drv.o nvidia_drv.o tga_drv.o atimisc_drv.o i128_drv.o r128_drv.o trident_drv.o chips_drv.o i740_drv.o radeon_drv.o tseng_drv.o cirrus_alpine.o i810_drv.o vesa_drv.o rendition_drv.o cirrus_drv.o s3virge_drv.o vga_drv.o cirrus_laguna.o mga_drv.o savage_drv.o cyrix_drv.o mga_hal_drv.o siliconmotion_drv.o sax2 -c CHIP = Beispiel: Sie haben eine Voodoo-Add-on-Karte und eine AGP-Karte. Sax2 -p erkennt die Voodoo-Karte als Chip 0 und die AGP-Karte als Chip 1. Sax2 bricht jedoch beim konfigurieren ab, da wahrscheinlich versucht wird die PCI-Karte zu konfigurieren. Starten Sie Sax2 dagegen mit sax2 -c 1 wird der "zweite" Grafikchip angesprochen und Sie können mit der Konfiguration fortfahren. sax2 -n = Wie bereits unter Sax beschrieben bietet auch Sax2 die Möglichkeit beim starten die Optionen für die Maus zu laden, falls die Maus nicht funktioniert oder Fehlfunktionen ausführt. Dieser Befehl benötigt noch den Zusatz -t, mit -n wird die Maus- Gerätedatei festgelegt. sax2 -t = Legt das Protokoll für die Maus fest. Somit heisst die Zeile: z.B. :sax2 -n /dev/usbmouse -t ps/2 für eine USB-Maus. sax2 -F = Diese Option ist ab Version 4.3 verfügbar. Mit ihr ist es möglich die einzelnen Module von Sax2 zu starten. Wenn Sie z.B. Veränderungen an der Maus vornehmen möchten können Sie Sax2 mit sax2 -F mouse starten. Die Liste der verschiedenen Möglichkeiten: [ -F | --fastpath ] set the fastpath to configure single parts of the configuration. Available are: a) mouse b) keyboard c) desktop d) layout sax2 -a = Mittels der Option -a / --auto wird eine automatische Konfiguration unter Berücksichtigung aller von SaX2 automatisch erkannten Hardwaredaten erzeugt. Sie können direkt im Anschluss an den "sax2 -a" Aufruf die graphische Oberfläche starten und bei Gefallen das Bild mittels xfine2 justieren oder erneut SaX2 starten, um die bestehende Konfiguration anzupassen. Natürlich können Sie Optionen miteinander verknüpfen z.B.: sax2 -m 0=r128 -n /dev/psaux -t imps/2 -a
Sie möchten andere Modelines verwenden als die, die in der XF86Config verwendet werden. Das Kommando xmode kann Ihnen hierbei die entsprechenden Modelines berechnen. Bedenken Sie aber, dass Sie nur Auflösungen/Bildwiederholraten benutzen, die Ihre Hardware (Grafikkarte/Monitor) zulassen. Sie können mit falschen Werten Ihre Hardware beschädigen!
Um z.B. eine Auflösung 1024*768@60Hz zu erzeugen müsste der Befehl für xmodewie folgt lauten:
xmode -x 1024 -y 768 -r 60
Sie erhalten anschliessend als Ausgabe:
44 55 Modeline "1024x768" 61.19 1024 1040 1216 1400 768 768 775 802 xmode Optionen: [ -d | --dacspeed ] ramdac speed in Mhz [ -r | --refresh ] refresh rate in Hz [ -s | --sync ] horizontal sync rate in Khz [ -x | --xdim ] X - dimension in pixels [ -y | --ydim ] Y - dimension in pixels [ -n | --nocheck ] do not check the geometry [ -f | --fbdev calculate framebuffer mode
Diese Option, die Modelines manuell einzutragen, sollten Sie allerdings nur dann wählen wenn alles andere keinen Erfolg gebracht hat oder Sie eine spezielle Modeline gebrauchen.
Tragen Sie diese dann in die XF86Config unter Section "Modes" ein und kommentieren Sie alle anderen Modelines aus. Beipiel:
Die obige Modeline soll in die Section "Modes" eingefügt werden:
Bisher eingetragene Modelines:
Section "Modes" Identifier "Modes[0]" Modeline "640x480" 27.96 640 656 720 864 480 480 485 501 Modeline "800x600" 43.68 800 816 928 1072 600 600 606 626 Modeline "1024x768" 79.55 1024 1040 1216 1328 768 768 777 802 EndSection
Nach der Veränderung:
Section "Modes" Identifier "Modes[0]" # Modeline "640x480" 27.96 640 656 720 864 480 480 485 501 # Modeline "800x600" 43.68 800 816 928 1072 600 600 606 626 # Modeline "1024x768" 79.55 1024 1040 1216 1328 768 768 777 802 Modeline "1024x768" 61.19 1024 1040 1216 1400 768 768 775 802 EndSection
Sax2 wurde in der vergangenen Zeit (seit SuSE Linux 7.0) mehrfach angepasst um eine einfachere Konfiguration zu ermöglichen. Da dieser Artikel eine möglichst aktuelle Darstellung über die Möglichkeiten von Sax2 bieten soll, konzentrieren wir uns daher auf die aktuellste Sax2-Version.
sax2
starten, erhalten Sie folgende Ausgabe:
SaX: root Password: SaX: using hardware information from database SaX: to avoid this run SaX the following: sax2 -f SaX: abort sequence is [ Ctrl-C ]... SaX: continue [ yes | no ]
Wenn die Hardware ausgelesen werden soll, benutzen Sie bitte die Option -f, ansonsten können Sie diese Meldung mit yes bestätigen, wenn Sie nur Änderungen an Ihrer bestehenden Konfiguration vornehmen wollen.
Card: Nvidia GeForce 2 MX Do you want to enable 3D for this card ? [ yes | no ]
Sax2 hat eine Karte gefunden die fähig ist 3D-Unterstützung zu leisten. Wenn Sie sich nicht sicher sind ob diese Funktion unter Linux (!) unterstützt ist, wählen Sie bitte nein. Derzeitig haben Sie mit den Nvidia- und Voodoo-Grafikkarten recht gute Chancen 3D-Hardwarebeschleunigung für Spiele und andere Applikationen zu aktivieren. Beachten Sie aber, dass evtl. spezielle Treiber für diesen Support notwendig sind. Daher empfiehlt sich ein Blick in unsere Supportdatenbank http://sdb.suse.de/de/sdb/html/.
Some packages are missing. Do you want to install the missing packages now ?
antworten Sie bitte mit no. Die Treiber haben Sie, falls Sie jetzt nochmal konfigurieren wollen, bereits mit YaST oder den rpm-Befehlen eingespielt. Benutzen Sie für Nvidia-Karten bitte ausschliesslich die Treiber von der Nvidia-Homepage, (http://www.nvidia.com/view.asp?PAGE=linux) wenn Sie 3D-Unterstützung nutzen wollen.
Enable SaX autodetection mode
und
Use the current configuration
Wenn Sie eine neue Konfiguration erstellen möchten benutzen Sie bitte Enable SaX autodetection mode. Sollten Sie nur Veränderungen vornehmen wollen ist Use the current configuration die richtige Wahl. Nachdem Sie Ihre Auswahl getroffen haben, geht es mit Next >> weiter.
Mouse settings: Eigenschaften der Maus. Klicken Sie auf Properties um bereits bestehende Mauseinstellungen zu laden. Falls Sie eine PS2- oder USB-Maus besitzen sollten die Werte automatisch eingetragen werden. Allerdings werden spezielle Mauseigenschaften (z.B. Wheelunterstützung) nicht durch die Produktnamen automatisch geladen da manche Mäuse mit dem imps/2-Protokoll nicht arbeiten können. Auf der Karte Expert haben Sie die Möglichkeit, dies manuell einzustellen. Setzen Sie dazu folgende Werte für eine Maus mit PS/2 oder USB-Anschluss:
Protocol = imps/2 Device = /dev/psaux oder /dev/input/mice
Anschliessend scrollen Sie nach unten wo Sie dann den Eintrag Wheel Mouse finden. Ändern Sie diese Einträge wie folgt:
Buttons = bitte anklicken Negative Movement = 4 Positive Movement = 5
Mit OK bestätigen und auf Next >> klicken.
Sie können natürlich auch die Werte in eine bereits vorhandene XF86Config manuel eintragen. Öffnen Sie dazu als root die XF86Config und suchen Sie folgenden Einträge:
Section "InputDevice" Driver "mouse" Identifier "Mouse[1]" Option "Device" "/dev/mouse" Option "Emulate3Buttons" "on" Option "Emulate3Timeout" "50" Option "InputFashion" "Mouse" Option "Name" "Autodetection" Option "Protocol" "ps/2" Option "Vendor" "Sysp" EndSection
Ändern Sie in diese Fall das Protokol von "ps/2" auf "imps/2" und fügen Sie zudem die Zeile
Option "ZAxisMapping" "4 5"
hinzu. Die veränderte Section "Input Device" sieht anschliessend wie folgt aus:
Section "InputDevice" Driver "mouse" Identifier "Mouse[1]" Option "Device" "/dev/mouse" Option "Emulate3Buttons" "on" Option "Emulate3Timeout" "50" Option "InputFashion" "Mouse" Option "Name" "Autodetection" Option "Protocol" "imps/2" Option "Vendor" "Sysp" Option "ZAxisMapping" "4 5" EndSection
Bei Laptops sieht die Konfiguration manchmal so aus, dass Sie zu Ihrem internen Touchpad auch noch eine externe Maus (z.B. eine PS/2- oder USB-Maus) benutzen möchten. Um diese Funktionalität zu gewährleisten fügen Sie einfach eine zweite Section "Input Device" (also die dritte) in Ihre XF86Config ein und geben Sie in dieser das richtige Device und das richtige Protokoll an. Beachten Sie auch, dass die internen Touchpads nicht mit dem imps/2 Protokoll arbeiten.
Zum Beispiel
Section "InputDevice" Driver "mouse" Identifier "Mouse[1]" Option "Device" "/dev/psaux" Option "Emulate3Buttons" "on" Option "Emulate3Timeout" "50" Option "InputFashion" "Mouse" Option "Protocol" "ps/2" Option "Vendor" "Sysp" Option "CorePointer" EndSection Section "InputDevice" Driver "mouse" Identifier "Mouse[2]" Option "Device" "/dev/input/mice" Option "Emulate3Buttons" "on" Option "Emulate3Timeout" "50" Option "InputFashion" "Mouse" Option "Protocol" "imps/2" Option "Vendor" "Sysp" Option "ZAxisMapping" "4 5" Option "SendCoreEvents" "yes" EndSection
Beachten Sie bitte, dass es bei einer externen PS/2-Maus zu Konflikten kommen kann, da das Touchpad ebenfalls auf /dev/psaux zugreift.
Wie bereits erwähnt kann es in einigen Fällen vorkommen, dass Mäuse mit bestimmten Protokollen (ps/2 & imps/2) nicht arbeiten. Das Symptom ist dann, dass die Maus unbrauchbar in einer der Bildschirmecken verschwindet und z.B. auf dem Desktop scheinbar das Auslösen von Befehlen verursacht. In diesem Fall könnte eine Fehlerlösung wie folgt aussehen:
Benutzen Sie Ihren Lieblingseditor (vi,emacs,pico,mcedit) um die Datei zu öffnen. Der Befehl sieht wie folgt aus:
mcedit /etc/init.d/boot.local
und tragen Sie am Ende der Datei folgendes ein:
/usr/sbin/sysp -s mouse > /dev/null
Somit wird die Maus richtig initialisiert und die Maus funktioniert mit dem imps/2-Protokoll.
Eine weitere Möglichkeit ist die Veränderung des Mausprotokolls. Sollte die Maus bei der Verwendung des imps/2-Protokolls Probleme haben, ändern Sie das Protokoll in der XF86Config bitte aus ps/2.
Sollten Funktionen der Maus (oder die ganze Maus) nicht verfügbar sein, ist eine weitere Option in der Datei /etc/rc.config den Eintrag START_GPM auf"no" zu setzen. Anschliessend müssen Sie SuSEconfig ausführen. Sie können auch probeweise, bevor Sie den gpm vollständig deaktivieren, den Befehl gpm -k ausführen (dieser schaltet den gpm ab) und X neu starten (wenn Sie ein grafisches Login haben STRG+ALT+BACKSPACE drücken).
Symptom: Die Grafikkarten sind für die Zeichnung des Mauszeigers zuständig. In manchen Fällen kann es vorkommen, dass der Mauszeiger nicht dargestellt wird.
Lösung: Dieses Problem können Sie dadruch beheben, dass Sie die Section "Device" Ihrer XF86Config editieren und folgende Veränderungen vornehmen:
Section "Device" BoardName "AutoDetected" Driver "r128" Identifier "Device[0]" VendorName "AutoDetected" EndSection
Fügen Sie hier folgende Zeile hinzu:
Section "Device" BoardName "AutoDetected" Driver "r128" Identifier "Device[0]" VendorName "AutoDetected" Option "sw_cursor" EndSection
Somit wird die Darstellung an den X-Server übergeben und die Maus sollte wie gewohnt dargestellt werden.
Symptom: Der Mauszeiger bewegt sich ruckartig, zu langsam oder kann nur mit einer bestimmten Geschwindigkeit über den Bildschirm geführt werden.
Lösung: Jede Maus besitzt eine bestimmte Auflösung (dpi) die in der XF86Config definiert werden kann. Dieser Eintrag wird mit folgender Syntax vorgenommen:
Option "Resolution" "WERT"Beispiel:
Option "Resolution" "400"Demnach sieht die Section "Input Device" der Maus in Ihrer XF86Config mit diesem Eintrag anschliessend so aus:
Section "Device" BoardName "AutoDetected" Driver "r128" Identifier "Device[0]" VendorName "AutoDetected" Option "Resolution" "400" EndSection
Um den Auflösungswert Ihrer Maus zu ermitteln lesen Sie bitte die technische Daten die Ihrer Maus beiliegen (sollten). Diese Option funktioniert derzeitig nicht bei USB-Mäusen!
http://sdb.suse.de/de/sdb/html/chofman_ttf_71.html http://sdb.suse.de/de/sdb/html/chofman_ttf_72.html
Klicken Sie auf Next >> um die Grafikkarte zu konfigurieren.
Driver = Hier können Sie die Treiber einstellen. Normalerweise ist dies nicht notwendig, sollten Sie allerdings Extra-Treiber benutzen (nvidia) kann dieser Treiber hier explizit eingestellt werden. Memory = Legt den Speicher für die Karte fest. Sollten Sie eine Karte mit mehr als 32 MB besitzen können Sie diesen Wert (1024*64 = 65536) manuell eintragen. Options = Hier können nun verschiedene Optionen gesetzt werden wie: SWcursor - Falls der Mauszeiger nicht oder fehlerhaft dargestellt wird noaccel - Falls Probleme beim starten verschiedener Grafikchipsätze aufreten Raw Definition = Um z.B. die Ausgabe einer Grafikkarte mit Digitalausgang an einem geeigneten Monitor zu gewährleisten können Sie hier eintragen: Option "ConnectedMonitor" "DFP" Diese Zeile muss die Syntax der XF86Config einhalten.
Unter Load 3D Modules können Sie die Module für 3D-Grafiken laden um evtl. OpenGL-Anwendungen laufen zu lassen. Mit einem Klick auf Next >> kommen wir zu den letzten Schritten der Konfiguration.
Desktop Setup: Hier werden nun Farbtiefen, Auflösungen, Typ des Monitors und Frequenzen eingestellt. Als Standardfarbtiefen ist wieder 16 Bit zu empfehlen, da in einigen Fällen bestimmte Karten mit 24 oder 32 Bit Probleme verursachen können. Sie können Ihre gewünsche Auflösung aus der Liste Resolutions auswählen, sollten Sie mehrere Auflösungen markieren, so können Sie diese später im laufenden System mit STRG+ALT +/- umschalten. Sollte Ihr Monitor nicht in der Liste aufgelistet sein, können Sie alternativ die VESA-Treiber benutzen. Diese sollten mit jedem CRT-Monitor funktionieren. Für LC/TFT-Displays sind spezielle Treiber vorhanden. Unter Frequenzen können Sie die horizontal und vertikal Frequenzen Ihres Monitors eingeben, falls dieser nicht in der Monitorliste auftauchen sollte. Diese Informationen finden Sie in Ihrem Handbuch oder im Internet. Anschliessend bestätigen Sie diese Einstellungen und klicken auf finish.
Nun wird noch ein Fenster angezeigt, wo Sie vorab schonmal die Einstellungen speichern oder den X-Server-Test starten können. Mit start wird der Test vorgenommen.
Sie sollten nun ein einen erfolgreichen Testserver vor sich sehen. Geringe Abweichungen sollten Sie mit dem Monitor ausgleichen. Sollte das Bild zu weit abweichen, brechen Sie den Test ab und stellen unter Eigenschaften/Erweitert den Algorythmus auf Iterate Precisly. Anschliessend starten Sie den Test nochmal.
Wenn alles zu Ihrer Zufriedenheit eingestellt ist, schliessen Sie die Konfiguration ab (Konfiguration abschliessen/save configuration) und beenden Sie Sax2.
Nun können Sie mit
init 5 (init 3 für SuSE Linux 7.0)
wieder in den grafischen Modus wechseln um Ihre Einstellungen zu prüfen.
Falls Sie eine Grafikkarte besitzen für die momentan kein Support verfügbar ist oder Treiberprobleme bestehen, bleibt die Möglichkeit das Framebuffer-Device einzurichten. Sollte dies erforderlich sein, gehen Sie bitte nach folgendem Artikel aus unserer Supportdatenbank vor:
http://sdb.suse.de/de/sdb/html/wessels_easy_fbdev.html
Eine weitere Informationsquelle für problematische Grafikkarten ist
http://sdb.suse.de/de/sdb/html/wessels_problematic_chipsets.html
Genau wie Sax besitzt Sax2 Protokolldateien die den Verlauf der Konfiguration verfolgen. Diese Dateien wären:
/var/log/SaX.log /var/log/XFree86.0.log
mcopy /PFAD/DATEINAME a:
auf eine Diskette. Weiterhin fügen Sie bitte die Ausgabe von
/sbin/lspci -vv
sowie die Datei
/etc/lilo.conf
an.
Sollten also Probleme bei der Konfiguration auftreten ist es für den Installationssupport (support@suse.de) hilfreich wenn diese Dateien angefügt sind da wir dann gleich über alle notwendigen Dateien/Informationen verfügen, die wir benötigen.
Sie möchten 3D aktivieren, Ihren Arbeitsplatz durch einen weiteren Monitor erweitern (Dual-/Multihead) oder vielleicht True Type Fonts installieren.
Bei diesen Fragen, die über den kostenfreien Installationssupport hinausgehen kann Ihnen unsere Advanced Support Hotline weiterhelfen. Dort erhalten Sie montags bis freitags von 9 bis 17 Uhr telefonische Hilfe über eine kostenpflichtige Telefonnummer. Der Tarif beläuft sich auf 1,86 Euro pro Minute (Österreich 0900-470 110 1,80 Euro und Schweiz 0900-700 470 110 3.13 SFR).Die Rufnummer lautet:
0190-862-800
SDB-wessels_sax2
)