Wie kann ich meinen (Linux) Computer zur Verwendung von Nvidia-Treibern verwenden?

685
machineghost

Ich bin auf Linux Mint 18 (MATE).

Vor etwa einer Woche habe ich den schrecklichen, furchtbaren Fehler begangen, als ich dem Update Manager erlaubte, meine Pakete für mich zu aktualisieren, und seitdem konnte ich meine Grafiken nicht zum Laufen bringen.

Nach vielem Kämpfen und Lesen anderer Super User-Fragen habe ich:

  • Alle Nvidia-Pakete wurden gelöscht
  • Installierte das nvidia-384-Paket erneut
    • plus einige verwandte Pakete wie nvidia-settingsundnvidia-prime
    • (Prime ist ein Feature für Computer wie meine, die haben beide eine integrierte Intel - Grafikkarte und eine separate NVidia ein; es soll mich beide lassen verwenden auf intelligente Art und Weise, aber an diesem Punkt würde ich zufrieden geben nur die Nvidia mit Karte 100% der Zeit)
  • Ran sudo update-alternatives --config x86_64-linux-gnu_gl_confund wählte Nvidia (dies scheint keine Rolle zu spielen; was auch immer ich auswähle, es wird nach dem Neustart zurückgesetzt)
  • Ran nvidia-xconfig, um eine frische xorg.conf zu generieren
  • Ich habe sogar meine GRUB-Konfiguration so bearbeitet, dass der Noveau-Treiber nicht ausgewählt wurde:
    • GRUB_CMDLINE_LINUX_DEFAULT="quiet splash noveau.modset=0"

Aber mein Computer weigert sich immer noch, die Nvidia-Treiber zu verwenden, oder zumindest vollständig. Sie arbeiten irgendwie ... wenn ich renne:

 lspci | grep -i nvidia 

Ich bekomme:

01:00.0 VGA compatible controller: NVIDIA Corporation GK104M [GeForce GTX 870M] (rev a1) 01:00.1 Audio device: NVIDIA Corporation GK104 HDMI Audio Controller (rev a1) 

(bevor es nichts auflistete). Auch wenn ich renne:

sudo update-alternatives --config x86_64-linux-gnu_gl_conf 

es sieht die Nvidia-Option, aber egal wie oft ich es auswähle, es wird nach dem Neustart wieder auf die Mesa-Option zurückgesetzt:

There are 3 choices for the alternative x86_64-linux-gnu_gl_conf (providing /etc/ld.so.conf.d/x86_64-linux-gnu_GL.conf).  Selection Path Priority Status ------------------------------------------------------------ 0 /usr/lib/nvidia-384/ld.so.conf 8604 auto mode 1 /usr/lib/nvidia-384-prime/ld.so.conf 8603 manual mode 2 /usr/lib/nvidia-384/ld.so.conf 8604 manual mode * 3 /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf 500 manual mode 

Aber wenn ich renne nvidia-settings, sagt es mir einfach ERROR: Unable to load info from any available system, und wenn ich sudo prime-select querynach einem Neustart renne, dann sagt es einfach "Unbekannt". Ich kann dann laufen sudo prime-select nvidiaund es wird Nvidia auswählen ... aber dann (wie die Alternativdatei) geht es nach dem nächsten Neustart wieder auf unbekannt.

Ich fühle mich also so, als wäre ich sehr nah dran, und ich muss nur etwas tun, damit mein Computer sowohl den Nvidia-Treiber verwendet als auch den Treiber nach dem Neustart weiter verwendet. Kann jemand helfen?

PS Eine andere Möglichkeit, den NVidia-Treiber nicht zu verwenden, ist, dass ich meinen zweiten Monitor nicht sehen kann (gut drittens, wenn Sie den Laptop-Monitor zählen), der an die Nvidia-Karte angeschlossen ist. Ich kann nur den Laptop und den Monitor 1 sehen. Wenn die Nvidia-Karte funktioniert, kann ich beide Monitore sehen.

PPS Ich habe auch versucht, den MESA-Treiber aus der Liste der Alternativen mit zu entfernen sudo update-alternatives --remove x86_64-linux-gnu_gl_conf /usr/lib/x86_64-linux-gnu/mesa/ld.so.conf, aber es hat nicht geholfen. Wenn ich sudo update-alternatives --config x86_64-linux-gnu_gl_confes jetzt ausführt, /usr/lib/nvidia-390/ld.so.confwird behauptet, dass es verwendet wird, aber wenn ich versuche, es auszuführen nvidia-settings, behauptet es anders:

ERROR: NVIDIA driver is not loaded   ERROR: Unable to load info from any available system 
0
Warum verwenden Sie nicht nur den Treibermanager? acejavelin vor 5 Jahren 0
Ich habe es benutzt, aber es hat nicht geholfen. Ich habe es derzeit auf nvidia-384 eingestellt. Seltsam ist, dass es Optionen für 390 und 396 gibt, die ich nicht einmal mehr installiert habe, aber als ich sie installiert hatte, habe ich versucht, mit dem Treibermanager zu ihnen zu wechseln, und es hat nichts gebracht. machineghost vor 5 Jahren 0
Ich würde Driver Manager auch empfehlen, aber das, was Sie beschrieben haben, scheint richtig zu sein, IMO. Vielleicht fehlt mir etwas Wichtiges, oder Sie haben es möglicherweise nicht ordnungsgemäß gereinigt, bevor Sie die Treiber erneut installieren. Sind Sie sicher, dass Sie sudo apt purge nvidia * verwendet haben? Das Sternchen ist wichtig. GabrielaGarcia vor 5 Jahren 0
Ich verwende im Moment 396, keine Ausgaben. Könnte es das Problem sein, das durch das Downgrade ausgelöst wurde? Es sollte aber egal sein, ob alle nvidia-Sachen gelöscht wurden (Befehl im vorherigen Kommentar). GabrielaGarcia vor 5 Jahren 0
Ja, ich lief definitiv `sudo apt purge nvidia *` :( Dann habe ich 384 neu installiert. Was das Problem angeht, fing es an, wenn ich ** abgestuft habe. Ich bin mir nicht sicher, welches genaues Paket es verursacht hat den Update Manager blind benutzt, dumm gedacht, es wäre sicher. machineghost vor 5 Jahren 0
Ich habe einfach alles noch einmal überprüft, und diesmal versucht 396: `sudo apt-get purge nvidia *` `sudo apt install nvidia-396 nvidia-settings ', Treibermanager überprüfen (hat bereits auf 396 umgestellt), Neustart, und ... `nvidia-settings`` FEHLER: Es können keine Informationen von einem verfügbaren System geladen werden. Aber `lspci | grep -i nvidia zeigt `01: 00.0 VGA-kompatibler Controller: NVIDIA Corporation GK104M [GeForce GTX 870M] (Rev. a1)`, und der Treiber-Manager glaubt immer noch, dass ich auf 396 bin. machineghost vor 5 Jahren 0
Oh und `sudo update-alternatives --config x86_64-linux-gnu_gl_conf` ist wieder auf` / usr / lib / x86_64-linux-gnu / mesa / ld.so.conf`. machineghost vor 5 Jahren 0

1 Antwort auf die Frage

0
machineghost

Es war die seltsamste Sache. In einem zufälligen Forumspost schlug jemand vor, dass die Einstellung "Sicherer Start" im BIOS das Problem verursachen könnte. Deshalb habe ich einen Neustart durchgeführt, die BIOS-Einstellungen aufgerufen und tatsächlich war es eingeschaltet. Ich stellte es ab, fuhr weiter hoch und plötzlich funktionierte alles normal.