Ohne Neustart zwischen nvidia-current und nouveau wechseln?

24

Ist es möglich, direkt zwischen den BLOB- und Nouveau-Videotreibern von Nvidia zu wechseln?

Ich denke, ich muss in der Lage sein:

  1. [✓] nvidia entladen
  2. [✓] Nouveau entladen
  3. [✕] Wiederherstellen der Konsole nach dem Entladen von Nouveau *
  4. [✓] Tauschen Sie die xorg.conf-Dateien aus
  5. [✓] Achten Sie auf die schwarze Liste
  6. [✓] Beschäftige dich mit libglx.so

*) Nach einigen Gesprächen mit den Jungs von #nouveau scheint es mit dem aktuellen Ubuntu-Setup (eingebaut in vesafb) schwierig oder sogar unmöglich zu sein. Ich versuche, es mit uvesafb zum Laufen zu bringen, aber im Moment tun die Skripte in der Antwort, wonach ich gesucht habe.

Drehmoment
quelle
klingt nach einem wirklich riskanten Geschäft Oo, bist du sicher, dass du das machen willst?
RolandiXor
4
Risiko bedeutet Spaß. : P
htorque
Für alle Fälle können Sie die folgenden Zeilen in Ihr Skript einfügen: chvt 1 chvt 7 Referenz: hermann-uwe.de/tips-and-tricks/chvt
ericb
Ich wollte nur darauf hinweisen, was für einen gut strukturierten Beitrag Sie haben. Schön zu sehen! :)
Lindhe

Antworten:

12

Ich habe jetzt zwei Skripte, die den Treiber wechseln, xorg.conf, die sich um das Blacklisting und die libglx kümmern, also lautet die Antwort: Ja, das ist möglich.

Blacklisting funktioniert mit einer Datei, /etc/modprobe.d/die entweder blacklist nvidiaoder enthält blacklist nouveau. Ich habe es auch durch /lib/nvidia-current/modprobe.confeinen Dummy ersetzt, sonst würde der nvidia-Treiber immer einen Link in den /etc/modprobe.d/Nouveau der Blacklists erstellen .

Zum Jugendstil wechseln:

 #!/bin/bash
 stop gdm

 rmmod nvidia

 sed -i "s/nouveau/nvidia/" /etc/modprobe.d/blacklist-nvidia-nouveau.conf

 update-alternatives --set gl_conf /usr/lib/mesa/ld.so.conf
 ldconfig

 modprobe nouveau

 cp /etc/X11/xorg.conf{.nouveau,}

 start gdm

Nachdem ich das ausgeführt habe, habe ich Nouveau Running und eine funktionierende Konsole (Nouveaufb).

Zu NVIDIA wechseln:

#!/bin/bash
stop gdm

echo 0 > /sys/class/vtconsole/vtcon1/bind
rmmod nouveau
rmmod ttm
rmmod drm_kms_helper
rmmod drm

sed -i "s/nvidia/nouveau/" /etc/modprobe.d/blacklist-nvidia-nouveau.conf

update-alternatives --set gl_conf /usr/lib/nvidia-current/ld.so.conf
ldconfig

modprobe nvidia-current

cp /etc/X11/xorg.conf{.nvidia,}

start gdm

→ Nvidia-Treiber funktioniert, einziges Problem: Nach dem Entladen des Nouveau-Treibers ist die Konsole unbrauchbar. Ich brauche eine Möglichkeit, es zurückzusetzen oder einen anderen Framebuffer zu laden, aber da vesafb in den Kernel kompiliert ist, weiß ich nicht, was ich tun soll.

Drehmoment
quelle
Das Hauptziel wurde erreicht, also akzeptiere ich dies, bis jemand eine Lösung für das Terminalproblem finden kann.
htorque
Es scheint eine neue Frage zu geben: askubuntu.com/questions/855451/… Ich habe Ihre Antwort dort verlinkt, aber nachdem ich sie getestet habe, habe ich festgestellt, dass sie (nicht mehr) funktioniert. Vielleicht können Sie Ihre Antwort aktualisieren.
Schüler
0

Ich glaube nicht, dass dies möglich ist, nicht nur die Kernel-Modus-Einstellung für den Nouvou-Treiber und die für den Nvidia-Treiber, sondern auch der Nvidia-Treiber, der eine gehackte xorg-Bibliothek verwendet, die es schwierig macht, dieselbe Installation auf einem Computer durchzuführen, auf dem der Intel-Treiber erforderlich ist . (siehe verkehrte Elemente, Bugs und Fragen)

Martin Owens -doctormo-
quelle
1
Ich denke, deshalb haben sie die 'gl_conf'-Alternative hinzugefügt. Durch die Verwendung von Update-Alternativen kann problemlos zwischen der Nvidia-Bibliothek und der "normalen" Bibliothek gewechselt werden.
htorque
0

http://nouveau.freedesktop.org/wiki/KernelModeSetting/ schlägt vor, /etc/init.d/consolefont neu zu starten, nachdem rmmoding nouevau ausgeführt wurde, um den Textmodus wiederherzustellen. Beachten Sie, dass es auf neueren Systemen in Console-Font umbenannt wurde und in Ubuntu 13.10 nicht mehr so ​​aufgerufen werden kann, sondern wie folgt: service console-font restart

Auch funktioniert es nicht immer. In einigen Fällen startet das Starten von X ( Dienst lightdm start - oder was auch immer Sie DM verwenden) den gfx-Modus und gibt auch einen Arbeitstextmodus beim Umschalten auf vt1 ( Strg-Alt-f1 ).

(Ich benutze dies, um den nvidia-Treiber in einer Live-CD-Sitzung zu installieren.)

David Balažic
quelle