Můj stary notebook HP EliteBook 8560w už nestačí na Win 10, tak jsem se rozhodl jej použít na Linuxové testy. Jako první bylo nainstalováno Ubuntu a bez jakýchkoliv problemů grafická karta NVIDIA GF106GLM [Quadro 2000M] fungovala. Po úspěšné instalaci jsem chtěl vyzkoušet instalaci KALI Linuxu jako druhého OS pro notebook. Překvapení následovalo hned po instalaci. GUI se nerozběhlo a veškerá konfigurace byla dělána přes řádkovou konzoli (CTRL+ALT+F1). První link s popisem NVIDIA driverů jsem nasel tady.  Je zde pěkně popsaná identifikace NVIDIA karet a postup pro instalaci driverů. HP EliteBook 8560w má následující grafickou kartu:

# lspci|grep -i vga
01:00.0 VGA compatible controller: NVIDIA Corporation GF106GLM [Quadro 2000M] (rev a1)

# lspci -s 01:00.0 -v
01:00.0 VGA compatible controller: NVIDIA Corporation GF106GLM [Quadro 2000M] (rev a1) (prog-if 00 [VGA controller])
DeviceName: 0
Subsystem: Hewlett-Packard Company GF106GLM [Quadro 2000M]
Flags: bus master, fast devsel, latency 0, IRQ 16, IOMMU group 1
Memory at d0000000 (32-bit, non-prefetchable) [size=32M]
Memory at c0000000 (64-bit, prefetchable) [size=128M]
Memory at c8000000 (64-bit, prefetchable) [size=64M]
I/O ports at 4000 [size=128]
Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
Capabilities: [60] Power Management version 3
Capabilities: [68] MSI: Enable- Count=1/1 Maskable- 64bit+
Capabilities: [78] Express Endpoint, MSI 00
Capabilities: [b4] Vendor Specific Information: Len=14 <?>
Capabilities: [100] Virtual Channel
Capabilities: [128] Power Budgeting <?>
Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
Kernel driver in use: nouveau
Kernel modules: nouveau

KALI Linux používal po instalaci driver “nouveau”, stejně jako Ubuntu, ale GUI nefungovalo. Pokoušel jsem se nainstalovat driver podle postupu, ale to vedlo jenom k instalaci driveru verze 430.xx, který není vhodný pro moji kartu. Podporovaný driver jsem našel na této strance a měl by to být driver verze 390.xx. Tady je link na instalaci v KALI Linuxu, ale postup nenainstaloval driver správně. Karta pořád používala driver “nouveau” a GUI nefungovalo. Po několika přeinstalacích driveru a celého Kali Linuxu, jsem našel následujíci postup. Popisuje instalaci driveru od NVIDIA, který si překompiluje kernelové moduly během instalace a udělá potrebnou konfiguraci GUI. Někde jsem našel informaci, že maximální verze driveru může být 390.132. To není pravda a po několika pokusech nainstalovat driver 390.132 a potom 390.144, kvůli chybě během překladu kernelových modulů “fatal error: asm/kmap_types.h: No such file or directory” jsem použil nejnovější driver 390.147. Uvedená chyba byla v něm odstraněna dle Change logu pro Ubuntu. Takže postup je následující:

Vyhledat NVIDIA balíčky nainstalované omylem

# dpkg -l|grep -i nvidia

Odinstalovat je

# apt-get remove –purge nvidia-*

Pro jistotu i knihovny, které tam zůstali

# apt-get remove –purge libnvidia-*

Zrušit automatické zavedení driveru “nouveau”

# sed ‘s/quiet/quiet nouveau.modeset=0/g’ -i /etc/default/grub
# update-grub
# reboot

Zastavit GUI

# service gdm3 stop

Stáhnout driver 390.147

# wget -c https://us.download.nvidia.com/XFree86/Linux-x86_64/390.147/NVIDIA-Linux-x86_64-390.147.run

Změnit práva

# chmod +x NVIDIA-Linux-x86_64-390.147.run

Nainstalovat. Během instalace je potřeba registrovat kernelové moduly s DKMS a neinstalovat 32-bitové drivery. Během instalace je hlášena chyba o neexistenci cesty na glvnd, která se dá rešit parametrem při spouštění driveru, nebo jednoduše ignorovat

# ./NVIDIA-Linux-x86_64-390.147.run –glvnd-egl-config-path=/etc/glvnd/egl_vendor.d

Následný reboot zprovozní GUI

# reboot

Správně nainstalovaný driver vypadá takto

# lspci|grep -i vga
01:00.0 VGA compatible controller: NVIDIA Corporation GF106GLM [Quadro 2000M] (rev a1)

# lspci -s 01:00.0 -v
01:00.0 VGA compatible controller: NVIDIA Corporation GF106GLM [Quadro 2000M] (rev a1) (prog-if 00 [VGA controller])
DeviceName: 0
Subsystem: Hewlett-Packard Company GF106GLM [Quadro 2000M]
Flags: bus master, fast devsel, latency 0, IRQ 44, IOMMU group 1
Memory at d0000000 (32-bit, non-prefetchable) [size=32M]
Memory at c0000000 (64-bit, prefetchable) [size=128M]
Memory at c8000000 (64-bit, prefetchable) [size=64M]
I/O ports at 4000 [size=128]
Expansion ROM at 000c0000 [virtual] [disabled] [size=128K]
Capabilities: [60] Power Management version 3
Capabilities: [68] MSI: Enable+ Count=1/1 Maskable- 64bit+
Capabilities: [78] Express Endpoint, MSI 00
Capabilities: [b4] Vendor Specific Information: Len=14 <?>
Capabilities: [100] Virtual Channel
Capabilities: [128] Power Budgeting <?>
Capabilities: [600] Vendor Specific Information: ID=0001 Rev=1 Len=024 <?>
Kernel driver in use: nvidia
Kernel modules: nouveau, nvidia_drm, nvidia


# nvidia-smi
Wed Apr 6 14:46:36 2022
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 390.147                                  Driver Version: 390.147 |
|-------------------------------+----------------------+----------------------+
| GPU Name         Persistence-M| Bus-Id Disp.A        | Volatile Uncorr. ECC |
| Fan Temp Perf    Pwr:Usage/Cap|         Memory-Usage | GPU-Util  Compute M. |
|===============================+======================+======================|
| 0 Quadro 2000M            Off | 00000000:01:00.0 N/A |                  N/A |
| N/A 28C  P12    N/A /     N/A |     123MiB / 1985MiB | N/A          Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes:                                                       GPU Memory |
| GPU         PID      Type Process name                                Usage |
|=============================================================================|
| 0                    Not Supported                                          |
+-----------------------------------------------------------------------------+

Leave a Reply

Your email address will not be published. Required fields are marked *