Deaktivieren Sie den Nouveau-Kerneltreiber unter Ubuntu 16.04.02

Deaktivieren Sie den Nouveau-Kerneltreiber unter Ubuntu 16.04.02

Ich habe alle Lösungen in verschiedenen Foren ausprobiert. Derzeit bin ich mit meinem Latein am Ende, wenn es darum geht, den Nouveau-Treiber zu deaktivieren und Nvidia-Treiber zu installieren. Ich habe versucht, vorherige Nvidia-, Blacklist-Dateien usw. zu bereinigen/entfernen, aber ich kann Nouveau nicht deaktivieren.

Ausgabe deslspci -vnn | grep -i VGA -A 12

lspci: Unable to load libkmod resources: error -12
02:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM107GL [Quadro K620] [10de:13bb] (rev a2) (prog-if 00 [VGA controller])
    Subsystem: Hewlett-Packard Company GM107GL [Quadro K620] [103c:1098]
    Physical Slot: 2
    Flags: bus master, fast devsel, latency 0, IRQ 30
    Memory at f2000000 (32-bit, non-prefetchable) [size=16M]
    Memory at e0000000 (64-bit, prefetchable) [size=256M]
    Memory at f0000000 (64-bit, prefetchable) [size=32M]
    I/O ports at 1000 [size=128]
    Expansion ROM at f3080000 [disabled] [size=512K]
    Capabilities: <access denied>
    Kernel driver in use: nouveau

02:00.1 Audio device [0403]: NVIDIA Corporation Device [10de:0fbc] (rev a1)

Ich habe auch Nouveau auf die schwarze Liste gesetzt. Ich habe versucht, Nvidia-Treiber über das Deb-Paket zu installieren und sie von der Nvidia-Treiber-Website herunterzuladen. Ich habe auch das Intramfs aktualisiert, damit es von Nouveau bereinigt wird.

Details meiner Ubuntu-Distribution

Distributor ID: Ubuntu
Description:    Ubuntu 16.04.2 LTS
Release:    16.04
Codename:   xenial

PS – Mein ultimatives Ziel ist die Installation von CUDA-Treibern und -Toolkit.

Antwort1

Stellen Sie zunächst sicher, dass Sie die eingeschränkten Repositories aktiviert haben. Sie befinden sich in /etc/apt/sources.list und sind wahrscheinlich mit einem # auskommentiert. Löschen Sie das # am Anfang der Zeile. Möglicherweise haben Sie einige wie:

deb-src http://archive.ubuntu.com/ubuntu xenial main restricted #Added by software-properties
deb http://us.archive.ubuntu.com/ubuntu/ xenial main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial main universe multiverse restricted #Added by software-properties
deb http://us.archive.ubuntu.com/ubuntu/ xenial-updates main restricted
deb-src http://us.archive.ubuntu.com/ubuntu/ xenial-updates main universe multiverse restricted #Added by software-properties
deb http://security.ubuntu.com/ubuntu xenial-security main restricted
deb-src http://security.ubuntu.com/ubuntu xenial-security main universe multiverse restricted #Added by software-properties

Aktualisieren Sie dann Ihren Paketindex:

sudo apt-get update

Die Nvidia 375-Pakete sind die aktuellsten, die in den Standard-Repositories verfügbar sind. Wenn Sie es jedoch ausprobieren möchten, ist auch 381 verfügbar. Es behebt einige durch den Ruhezustand verursachte Artefakte, ist jedoch nicht so gut getestet.

Mein Setup ist eine Quadro 1000M und die Nvidia 375-Pakete, die ich habe, sind:

Nvidia-375
Nvidia-375-dev
Nvidia-Modprobe
Nvidia-Opencl-ICD-375
Nvidia-Prime
Nvidia-Einstellungen

Bereinigen Sie alle zuvor installierten NVIDIA-Pakete und überprüfen Sie, dass in keiner Datei in /etc/modprobe.d eine Blacklist-Zeilen für NVIDIA vorhanden sind.
Installieren Sie alle oben genannten Pakete mit:

sudo apt-get install nvidia-375 nvidia-375-dev nvidia-modprobe nvidia-opencl-icd-375 nvidia-prime nvidia-settings

Starten Sie neu und prüfen Sie, ob der NVIDIA-Treiber verwendet wird:

sudo lshw -C video

Sie sollten in /etc/modprobe.d zwei Dateien haben, nvidia-375_hybrid.conf und nvidia-375_hybrid.conf, die Zeilen enthalten, die den Nouveau-Treiber auf die schwarze Liste setzen und alle Aliase entfernen. Überprüfen Sie, dass sich kein Nouveau in /etc/modules befindet und dass sich in /etc/rc.local nichts befindet, das Nouveau lädt. Überprüfen Sie abschließend die dmesg-Ausgabe, es sollte kein Nouveau zu sehen sein:

dmesg |grep nouveau

Die Dmesg-Ausgabe für Nvidia sollte ungefähr so ​​aussehen:

$ dmesg |fgrep -i nvidia
[    1.145050] nvidia: module license 'NVIDIA' taints kernel.
[    1.150438] nvidia: module verification failed: signature and/or required key missing - tainting kernel
[    1.154278] nvidia 0000:01:00.0: enabling device (0000 -> 0003)
[    1.154407] nvidia-nvlink: Nvlink Core is being initialized, major device number 244
[    1.154417] NVRM: loading NVIDIA UNIX x86_64 Kernel Module  375.39  Tue Jan 31 20:47:00 PST 2017 (using threaded interrupts)
[    1.155859] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms  375.39  Tue Jan 31 19:41:48 PST 2017
[    1.156840] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
[   14.454118] nvidia-uvm: Loaded the UVM driver in 8 mode, major device number 240
[   35.821752] nvidia-modeset: Allocated GPU:0 (GPU-821d0db5-a56d-9fdf-72cc-d0eab575873a) @ PCI:0000:01:00.0

Schließlich sollte lsmod mehrere NVIDIA-Module und kein Nouveau enthalten.


Wenn der NVIDIA-Treiber installiert ist, sollten Sie in der Lage sein, das Intel cuda .deb-Paket zu installieren. mitdpkg -i

Installieren Sie dann mit apt-get cuda und cuda-toolkit, diese sollten viele andere cuda-Pakete einbinden.

Lesen Sie die Intel-Anweisungen und fügen Sie den CUDA-Speicherort zu Ihrem PATH und LD_LIBRARY_PATH hinzu.
Kopieren Sie die Beispiele aus dem CUDA-Installationsverzeichnis in Ihr Home-Verzeichnis oder an einen beliebigen Ort, für den Sie Schreibberechtigung haben, damit Sie Make ausführen können, um die Beispiele zu erstellen. Außerdem gehe ich davon aus, dass Sie Ihr G++ und möglicherweise Build-Essential installiert haben. Der GCC sollte standardmäßig vorhanden sein und 16.04 hat die richtigen Versionen (5) für die Compiler.

verwandte Informationen