NVIDIA-Wikibook/Troubleshooting
NVIDIA: Intro - Installation - Konfiguration - 3D Desktops - Troubleshooting - Hintergrundwissen - Schlusswort |
NVIDIA-Wikibook/Troubleshooting
Inhaltsverzeichnis
Troubleshooting
Updates
Kernelupdates
Nach einem Kernelupdate wird die graphische Oberfläche nicht gestartet werden, wenn man die Allgemeine Installation durchgeführt hat. Dann einfach als root anmelden und
32bit: sh /home/USER/nvidia_treiber/NVIDIA-Linux-x86-1.0-9755-pkg1.run -K 64bit: sh /home/USER/nvidia_treiber/NVIDIA-Linux-x86_64-1.0-9755-pkg2.run -K
eingeben. Man beachte das -K welches dazu dient, der Installationsroutine mitzuteilen dass nur das Kernelmodul neu kompiliert werden soll.
Falls man das Installationspaket der NVIDIA-Website nicht mehr hat, so kann man auch
nvidia-installer -K
ausführen, was das gleiche bewirkt.
NVIDIA Treiberupdates
Da ja gelegentlich auch neue Treiber seitens NVIDIA veröffentlicht werden, muss man natürlich auch eine Option zum updaten haben wenn man die allgemeine Installationsvariante genutzt hat. Dies wird mit Hilfe des, mit dem bei der Treiberinstallation mitinstallierten, Tools nvidia-installer realisiert. Damit erspart man sich das herunterladen des kompletten neuen Installationspakets. Man braucht nur noch als User root auf der Textkonsole mit init 3 in den Runlevel 3 zu wechseln und gibt dann folgendes ein (gültig für alle Releases unter allen möglichen Linux Distributionsversionen unter denen die Installation per allgemeiner NVIDIA Treiberpaketinstallation erfolgreich stattfand):
nvidia-installer --update
Sofern man nicht mit irgendwelchen Rückfragen belästigt werden will, kann man noch die beiden Parameter -a und -q anfügen. Dadurch wird die NVIDIA-Lizenz automatisch akzeptiert und Rückfragen werden dann automatisch mit Ja beantwortet.
Downgrade vom Beta-Treiber auf den regulären Treiber(oder einfach auf eine ältere Version)
Falls man mal aus Neugierde oder weil man aus Versehen das falsche Paket erwischt hat und statt dem regulären nvdida-Treiber den Beta-Treiber erwischt hat, den Beta-Treiber installiert hat, der typischerweise natürlich nicht unbedingt diesebe Stabilität hat wie der offizielle nvdida-Treiber und manchmal recht seltsame Seiteneffekte gerade im Zusammenhang mit 3D beschleunigten Ausgaben wie bei OpenGL Games oder 3D Desktops offenbart, und man diesen wieder loswerden will um ihn durch den regulären zu ersetzen, dann gibt es einen recht simplen Weg. Man lädt das reguläre NVIDIA-Treiberpaket von http://www.nvidia.com/object/unix.html herunter und wechselt nach dem Ausloggen mit Strg-Alt-F1 auf eine Konsole und dort nach dem einloggen als root per
init 3
in den Runlevel 3. Dort gibt man dann folgendes auf der Konsole ein (USER steht hier für den User in dessen Homeverzeichnis das Paket beim Download abgelegt wurde):
Für 32bit:
sh /home/USER/nvidia_treiber/NVIDIA-Linux-x86-1.0-9755-pkg1.run -f
Für 64bit:
sh /home/USER/nvidia_treiber/NVIDIA-Linux-x86_64-1.0-9755-pkg2.run -f
Zu beachten ist dabei der Parameter -f der für force steht und die Installation des Treibers aus dem heruntergeladenen Paket erzwingt.
Da ja bereits eine Konfiguration für den X-Server besteht, wird man vermutlich um eine Neukonfiguration des X-Servers herumkommen, es sei denn man hat brandneue Optionen genutzt, die im offizielen Treiber noch nicht vorhanden sind. Im letzteren Fall ist einfach noch mal der Abschnitt zur Konfiguration im Wikibook durchzuarbeiten.
Dieselbe Vorgehensweise gilt auch für Downgrades des regulären Treibers auf eine ältere Version oder einen der Legacy Treiber.
Konfigurationsprobleme
Probleme mit SLI-Systemen
X-Server lässt sich nicht konfigurieren
OpenSUSE
Falls man ein SLI-System hat und (im Falle von SuSE/OpenSUSE Linux) Sax2 mit dem Aufruf
sax2 -r -m 0=nvidia
nicht starten will, hilft es oft einen weiteren Parameter in den Sax2 Aufruf einzubauen. Man muss Sax2 nur mitteilen welche der vorhandenen GPUs genutzt werden soll. Mit
sax2 -p
bekommt man die Liste der zur Verfügung stehenden GPUs und kann sich dann diejenige an der mindestens ein Monitor angeschlossen ist mit dem -c<GPU-Nummer> passenderweise aussuchen. Beispiel für den dann funktionierenden Aufruf von Sax2 auf einem SLI-System:
sax2 -r -c1 -m 0=nvidia
Für ein "normales" Multi-GPU System das nicht im SLI-Mode betrieben werden soll wäre es hingegen
sax2 -r -c1 -m 0=nvidia,1=nvidia
da dort ja jede GPU ihren eigenen X-Server fahren können soll, und nicht abhängig von der/den andere/n GPU/s nur zusätzliche Renderaufgaben übernehmen soll (was ja wiederum den SLI-Mode ausmachen würde).
Andere Distributionen
Bei anderen Distributionen kann genau wie unter SuSE/OpenSUSE per
nvidia-xconfig --sli=Auto
bzw.
nvidia-xconfig --mutigpu=Auto
der SLI- bzw. MultiGPU-Mode aktiviert werden sofern es in dem dort vorhandenen X-Server Setuptool genau wie in Sax2 keinen direkten Weg zur Aktivierung dieser Modi gibt. Weitere Optionen können ebenso mit diesem Tool aktiviert werden, auch unter SuSE/OpenSUSE stehen so Optionen zur Verfügung von denen Sax2 noch(?) nichts weiss. Die genaue Optionsliste bekommt man mit
nvidia-xconfig -A
angezeigt, die Werte dieser Optionen sind im NVIDIA-Readme genauer erläutert welches, zumindest im Falle des Treiberpakets von der NVIDIA-Website, bei der Treiberinstallation mit installiert wurde.
Monitorerkennungsprobleme oder zu kleine, nicht änderbare Auflösung
Wenn die Auflösung nicht stimmt da sie zu klein ist und sich nicht größer einstellen lassen will per Sax2, hilft es meist, die Frequenzenzeckdaten (horizontale Ablenkfrequenz und vertikale Refreshrate) für den Monitor in die Section Monitor statt den dort stehenden einzutragen und die Erkennung dieser Eckdaten per EDID per
nvidia-xconfig --no-use-edid
abzuschalten.
AGP-Grafikkartenprobleme
Aperture Size zu klein
Bei einigen Grafikkarten kann eine Erhöhung der AGP Aperture Size im BIOS erforderlich sein, da, sofern diese dort zu klein eingestelt ist, das nvidia-Kernelmodul den Betrieb verweigert. Dieser Fehler ist im Forum schon im Zusammenhang mit einer GeForce 6600 GT AGP erläutert worden und meist nicht so einfach zu finden, da er im Logfile /var/log/xorg.log nicht auftaucht,jedoch eine kleine unscheinbare Warnung im Bootlogfile /var/log/boot.msg diesbezüglich zu finden ist.
Chipsatzbedingte AGP-Probleme
Fals man im Logfile /var/log/Xorg.log bzw. /var/log/Xorg.0.log bei der Fehersuche nach Gründen warum der X-Server nicht startet auf AGP-bedingte Feher stößt und diese offensichtlich mit dem verwendeten Chipsatz zusammenzuhängen scheinen, kann über eine Option in der /etx/X11/xorg,conf die Nutzung oder Nichtnutzung des agpgart Kernelmoduls bzw. der NVIDIA eigenen Variante erwzungen werden. Die benötigte Option
Option "NvAGP" "<Wert>"
kann sich entweder in der Section Screen oder der Section Device befinden. Für <Wert> können dabei folgende Werte eingesetzt werden
0 =deaktiviere AGP 1 =nutze NVIDIAs internen AGP Support sofern es möglich ist 2 =nutze AGPGART sofern es möglich ist 3 =nutze irgendeinen AGP Support (zuerst AGPGART probieren, ansonsten NVIDIAs AGP nutzen)
Welches Kernelmodul letztendlich genutzt wird zeigt
lsmod | grep agp
auf der Konsole. Die von NVIDIAs NvAGP unterstützten Chipsätze finden sich in Anhang F des NVIDIA Readme Files, welches bei installiertem Treiber auch unter file://usr/share/doc/NVIDIA_GLX-1.0/README.txt zu finden sein dürfte. Sollte selbst die Deaktivierung der AGP-Nutzung in der /etc/X11/xorg.conf nicht weiterhelfen, so kann man auch probieren mit Hilfe des Kernelparameters
agp=0
über z.B. Eingabe in der GRUB-Bootloadereingabezeile die Konflikte mit der im Kernel eingebauten AGP-Unterstützung durch Abschaltung selbiger zu umgehen.
NVIDIA: Intro - Installation - Konfiguration - 3D Desktops - Troubleshooting - Hintergrundwissen - Schlusswort |