Я установил Kubuntu 18.04 LTS и хочу использовать драйвер NVIDIA от nvidia.com.
Мои графические устройства:
$ lspci | grep "VGA"
00:02.0 VGA compatible controller: Intel Corporation Device 591b (rev 04)
01:00.0 VGA compatible controller: NVIDIA Corporation Device 1c8d (rev a1)
Я установил их драйвер из многопользовательского сеанса (без X), занесенного в черный список путем добавления строк
blacklist nouveau
options nouveau modeset=0
в /etc/modprobe.d/blacklist.conf
, строки
rdblacklist=nouveau
в /etc/default/grub
, сделанные
# grub-mkconfig -o /boot/grub/grub.cfg
# update-initramfs -u
# reboot
После перезагрузки я получаю черный экран, в то время как из другого tty a может работать nvidia-smi, который возвращает правильный результат:
$ nvidia-smi
Fri Apr 12 20:33:11 2019
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 418.43 Driver Version: 418.43 CUDA Version: 10.1 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 1050 Off | 00000000:01:00.0 Off | N/A |
| N/A 39C P8 N/A / N/A | 49MiB / 4040MiB | 0% Default |
+-------------------------------+----------------------+----------------------+
+-----------------------------------------------------------------------------+
| Processes: GPU Memory |
| GPU PID Type Process name Usage |
|=============================================================================|
| 0 840 G /usr/lib/xorg/Xorg 8MiB |
| 0 880 G /usr/bin/sddm-greeter 38MiB |
+-----------------------------------------------------------------------------+
, поэтому драйвер выглядит правильно установленным.
Мой файл конфигурации и журналы находятся здесь: xorg.conf , Xorg.0.log , dmesg , journalctl . [ 1137]
Файл xorg.conf
был взят из Linux Mint, установленного на том же ноутбуке, где графика правильно запускается с драйвером nvidia
, установленным из репозиториев. Использование xorg.conf
, полученного при установке драйвера, дает тот же черный экран (кроме отсутствия установки режима загрузки в Xorg.0.log).
Можно ли запускать графику с последним драйвером nvidia
в моей системе?
Дополнительная информация о моей системе:
$ mokutil --sb-state
SecureBoot disabled
Platform is in Setup Mode
$ ls /sys/firmware/efi
config_table efivars esrt fw_platform_size fw_vendor runtime runtime-map systab vars
# lshw -c video
*-display
description: VGA compatible controller
product: GP107M [GeForce GTX 1050 Mobile]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: irq:134 memory:de000000-deffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:e000(size=128) memory:df000000-df07ffff
*-display
description: VGA compatible controller
product: Intel Corporation
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 04
width: 64 bits
clock: 33MHz
capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:130 memory:dd000000-ddffffff memory:b0000000-bfffffff ioport:f000(size=64) memory:c0000-dffff
$ lsmod | grep nvidia
nvidia_drm 45056 3
nvidia_modeset 1085440 6 nvidia_drm
nvidia 17592320 221 nvidia_modeset
ipmi_msghandler 102400 2 ipmi_devintf,nvidia
drm_kms_helper 172032 2 nvidia_drm,i915
drm 458752 8 drm_kms_helper,nvidia_drm,i915
< hr> dkms status
ничего не возвращает:
$ dkms status
$
Я переустановил драйвер, затем установил [ 1115]. Но результат запуска X тот же.
Вот Xorg.0.log и результаты ранее показанных команд, где результат изменился:
$ lsmod | grep nvidia
nvidia_uvm 798720 0
nvidia_drm 40960 3
nvidia_modeset 1085440 6 nvidia_drm
nvidia 17592320 222 nvidia_uvm,nvidia_modeset
ipmi_msghandler 102400 2 ipmi_devintf,nvidia
drm_kms_helper 172032 2 nvidia_drm,i915
drm 458752 8 drm_kms_helper,nvidia_drm,i915
$ dkms status
bbswitch, 0.8, 4.18.0-17-generic, x86_64: installed
nvidia, 418.43, 4.18.0-17-generic, x86_64: installed
Файл xorg.conf такой же, как и ранее. Выходные данные mokutil
, ls /sys/firmware/efi
, lshw
, nvidia-smi
такие же, как и ранее.
Я нашел еще один соответствующий журнал: /var/log/gpu-manager.log. Вот эти файлы для Kubuntu и Linux Mint (где драйвер из репозитория успешно запускает X): gpu-manager.log.Kubuntu , gpu-manager.log.Mint . Из второго журнала видно, что также используется bbswitch. Это и стало причиной его установки на Kubuntu, но пока я не знаю, как его использовать ...
Я вылечил это, установив nvidia-prime
.
Теперь X запускаются правильно,
$ glxinfo | head
name of display: :0
display: :0 screen: 0
direct rendering: Yes
server glx vendor string: NVIDIA Corporation
server glx version string: 1.4
server glx extensions:
GLX_ARB_context_flush_control, GLX_ARB_create_context,
GLX_ARB_create_context_no_error, GLX_ARB_create_context_profile,
GLX_ARB_create_context_robustness, GLX_ARB_fbconfig_float,
GLX_ARB_multisample, GLX_EXT_buffer_age,
$ glxgears
Running synchronized to the vertical refresh. The framerate should be
approximately the same as the monitor refresh rate.
65344 frames in 5.0 seconds = 13068.664 FPS
66224 frames in 5.0 seconds = 13244.633 FPS
66325 frames in 5.0 seconds = 13264.833 FPS
XIO: fatal IO error 11 (Resource temporarily unavailable) on X server ":0"
after 54 requests (54 known processed) with 0 events remaining.
$ nvidia-smi | head
Tue Apr 16 16:10:47 2019
+-----------------------------------------------------------------------------+
| NVIDIA-SMI 418.43 Driver Version: 418.43 CUDA Version: 10.1 |
|-------------------------------+----------------------+----------------------+
| GPU Name Persistence-M| Bus-Id Disp.A | Volatile Uncorr. ECC |
| Fan Temp Perf Pwr:Usage/Cap| Memory-Usage | GPU-Util Compute M. |
|===============================+======================+======================|
| 0 GeForce GTX 1050 Off | 00000000:01:00.0 Off | N/A |
| N/A 42C P0 N/A / N/A | 176MiB / 4040MiB | 4% Default |
+-------------------------------+----------------------+----------------------+
$ mokutil --sb-state
SecureBoot disabled
Platform is in Setup Mode
$ ls /sys/firmware/efi
config_table efivars esrt fw_platform_size fw_vendor runtime runtime-map systab vars
# lshw -c video
*-display
description: VGA compatible controller
product: GP107M [GeForce GTX 1050 Mobile]
vendor: NVIDIA Corporation
physical id: 0
bus info: pci@0000:01:00.0
version: a1
width: 64 bits
clock: 33MHz
capabilities: pm msi pciexpress vga_controller bus_master cap_list rom
configuration: driver=nvidia latency=0
resources: irq:134 memory:de000000-deffffff memory:c0000000-cfffffff memory:d0000000-d1ffffff ioport:e000(size=128) memory:df000000-df07ffff
*-display
description: VGA compatible controller
product: Intel Corporation
vendor: Intel Corporation
physical id: 2
bus info: pci@0000:00:02.0
version: 04
width: 64 bits
clock: 33MHz
capabilities: pciexpress msi pm vga_controller bus_master cap_list rom
configuration: driver=i915 latency=0
resources: irq:130 memory:dd000000-ddffffff memory:b0000000-bfffffff ioport:f000(size=64) memory:c0000-dffff
$ dkms status
bbswitch, 0.8, 4.18.0-17-generic, x86_64: installed
nvidia, 418.43, 4.18.0-17-generic, x86_64: installed
$ lsmod | grep nvidia
nvidia_drm 40960 9
nvidia_modeset 1085440 19 nvidia_drm
nvidia 17592320 895 nvidia_modeset
ipmi_msghandler 102400 2 ipmi_devintf,nvidia
drm_kms_helper 172032 2 nvidia_drm,i915
drm 458752 13 drm_kms_helper,nvidia_drm,i915
Соответствующие журналы: Xorg.0.log , gpu-manager.log . X запускается с xorg.conf, представленным ранее:
Section "ServerLayout"
Identifier "Layout0"
Screen 0 "nvidia"
Inactive "intel"
EndSection
Section "Device"
Identifier "intel"
Driver "modesetting"
BusID "PCI:0@0:2:0"
Option "AccelMethod" "None"
EndSection
Section "Screen"
Identifier "intel"
Device "intel"
EndSection
Section "Device"
Identifier "nvidia"
BusID "PCI:1@0:0:0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
Option "ConstrainCursor" "off"
EndSection
Section "Screen"
Identifier "nvidia"
Device "nvidia"
Option "AllowEmptyInitialConfiguration" "on"
Option "IgnoreDisplayDevices" "CRT"
EndSection
Я не смог запустить X с xorg.conf, созданным во время установки драйвера nvidia.
Итак, чтобы подвести итог, я установил dkms
, установил вручную драйвер (отвечая «Да» на вопрос «Хотите ли вы зарегистрировать источники модулей ядра в DKMS? ...»), установлен в черный список, установил [ 114], nvidia-prime
и изменил xorg.conf так, как показано выше. После этих шагов X началось правильно.