Настройка драйверов видеокарт Nvidia GTX 970M и Intel HD Graphics 530 на Ubuntu 16.04
Настраиваем 2 видеокарты Nvidia + Intel на Ubuntu 16.04.
В ноутбуке 2 видеокарты:
- Intel HD Graphics 530 (Skylake GT2). Video memory 3072MB.
- Nvidia GeForce GTX 970M. Video memory 6000MB.
Реанимация
Удаляем все драйвера nvidia и откатываемся на дефолтные драйвера:
sudo apt remove --purge nvidia-*
sudo rm /etc/X11/xorg.conf
sudo rm /etc/modprobe.d/blacklist-nvidia-nouveau.conf # Если добавляли в драйвер nouveau в blacklist
sudo rm ~/.Xauthority
sudo rm -r ~/.gvfv/ ~/.local/share/icc/* # Не уверен, нужно ли..
sudo apt install nouveau-firmware xserver-xorg xserver-xorg-video-intel
sudo dpkg-reconfigure xserver-xorg
sudo update-initramfs -u
Ошибка: nouveau 0000:01:00.0 tmr: stalled at ffff
Указывает на то, что установлен драйвер nouveau для nvidia, но не установленны проприетарные драйвера.
Чтобы хоть как-то загрузится, добавляем в загрузку grub опцию: nomodeset.
Опция nomodeset указывает ядру (kernel) не грузить видеодрайвера, а использовать драйве bios. Это позволит загрузить систему с графикой llvmpipe, и видео будет тормозить.
Дальше ставим проприетарные драйвера: nvidia-driver-440.
Ошибка: nouveau 0000:01:00.0 bus: MMIO read of 00000000 FAULT at 022554
Идем в Recovery Menu (при загрузке системы), включаем сеть "Enable networking", запускаем Root Shell.
И удаляем все драйвера.. Другого способа я не нашел.
Черный экран (lock screen) при логине
Пробуем загрузить ядро с опциями grub (в меню grub, жмем E, добавляем опции после строки: linux ..., и F10):
nouveau.modeset=0 nvidia-drm.modeset=0
Получение информации и логов
Список установленных в ноутбуке видеокарт и используемых драйверов:
lspci -k | grep -A 3 -i "VGA"
Примечание
При ошибке: W: Possible missing firmware /lib/firmware/i915/kbl_guc_ver9_14.bin for module i915, необходимо вручную скачать драйвера видеокарты intel.
Скачать недостающие драйвера/firmware встроенной графики от intel можно здесь - https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/i915
После чего скопировать *.bin файлы в каталог /lib/firmware/i915/:
sudo cp ~/Downloads/intel-drivers-i915*.bin /lib/firmware/i915/
И выполнить для обновления initramfs:
sudo update-initramfs -u
sudo updatedb # @note Не уверен, нужно ли..
Установить драйвера nvidia:
sudo add-apt-repository ppa:graphics-drivers/ppa
sudo apt update
sudo ubuntu-drivers autoinstall
, или вручную, если возникли проблемы с авто-установкой:
sudo apt install --reinstall nvidia-384 nvidia-settings nvidia-prime
Показать список драйверов:
sudo ubuntu-drivers devices
sudo ubuntu-drivers list
user@pc:~$ sudo ubuntu-drivers devices
== /sys/devices/pci0000:00/0000:00:01.0/0000:01:00.0 ==
modalias : pci:v000010DEd00001618sv00001558sd00006543bc03sc00i00
model : GM204M [GeForce GTX 970M]
vendor : NVIDIA Corporation
driver : nvidia-384 - distro non-free
driver : nvidia-418 - third-party free
driver : xserver-xorg-video-nouveau - distro free builtin
driver : nvidia-430 - third-party free recommended
driver : nvidia-410 - third-party free
Сменить драйвер из панели "Software & Updates":
software-properties-gtk --open-tab=4
Какая видеокарта используется сейчас:
prime-select query
Переключить на встроенную графику intel или nvidia:
sudo prime-select intel
sudo prime-select nvidia
user@pc:~$ sudo prime-select nvidia
Info: the current GL alternatives in use are: ['nvidia-384', 'nvidia-384']
Info: the current EGL alternatives in use are: ['nvidia-384', 'nvidia-384']
Info: the nvidia profile is already in use
Сменить приоритет использования видеокарт:
sudo nvidia-settings # Меню "Prime Profiles"
Внимание!
Черный экран на этапе загрузки?
Попробуйте установить параметр nomodeset при загрузке ядра в файле /etc/default/grub.
Параметр "nomodeset" или "i915.modeset=0" - указывает ядру не загружать видеодрайверы Intel и использовать режимы BIOS, пока не будет загружен X.
sudo gedit /etc/default/grub
GRUB_CMDLINE_LINUX_DEFAULT="nomodeset"
После изменения конфига grub сгенерируйте новый конфиг загрузки:
sudo update-grub
Для отключения загрузки драйвера Nvidia (Open Source) используйте параметры:
GRUB_CMDLINE_LINUX_DEFAULT="nouveau.modeset=0"
GRUB_CMDLINE_LINUX_DEFAULT="nouveau.noaccel=1"
Внимание!
При переключении приоритета/профиля использования видеокарт, вы можете получить ошибку: "Prime Profiles" : ERROR: org.freedesktop.DBus.Error.NoReply: Message recipient disconnected from message bus without replyin.
1. Запустите nvidia-settings под суперпользователем: sudo nvidia-settings
2. Переустановите драйвера: sudo ubuntu-drivers autoinstall
3. Смотрите логи:
dmesg --level=warn -T
dmesg --level=err -T
sudo journalctl --since=18:45
gpu-manager log
Примечание
Как отключить стандартный драйвер nouveau:
sudo nano /etc/modprobe.d/blacklist-nvidia-nouveau.conf
# /etc/modprobe.d/blacklist-nvidia-nouveau.conf
blacklist nouveau
options nouveau modeset=0
sudo update-initramfs -u
Примечание
Проверить FPS используемой видеокарты:
glxgears
#nvidia, # driver, #intel hd graphics