Дискретные видеокарты компании Nvidia являются одними из самых распространённых. Они предлагают максимальную производительность при незначительно более высокой цене по сравнению с другими производителями. По умолчанию в Debian для карт Nvidia стоит драйвер nouveau с открытым исходным кодом.
Этот драйвер не поддерживает тонкую настройку видеокарты, а также, как правило, имеет более низкую производительность. Тем не менее, вы всегда можете установить проприетарный драйвер. В этой статье мы рассмотрим как установить драйвер Nvidia Debian 10.
Содержание статьи
Установка драйвера Nvidia в Debian
1. Как узнать какая версия драйвера нужна
Для того, чтобы просмотреть установлен ли у вас поприетарный драйвер выполните:
lspci -k | grep -EA2 "VGA|3D|Display"
Утилита nvidia-detect позволяет посмотреть информацию о видеокарте компании Nvidia и определить рекомендуемую версию драйвера для этой модели. Устанавливается утилита с помощью следующей команды:
sudo apt -y install nvidia-detect
Узнать рекомендуемую для видеокарты версию драйвера можно с помощью команды:
sudo nvidia-detect
Если вы не хотите устанавливать эту утилиту, вы можете посмотреть официальный сайт Nvidia или воспользоваться следующими рекомендациями:
- драйвер версии 340.107 — для видеокарт GeForce, начиная с 8-й серии и вплоть до 300-й серии;
- драйвер версии 390.116 — для видеокарт GeForce 400-й и 500-й серий;
- драйвер версии 418.74 или более новый — для видеокарт GeForce 600-й и выше серий.
2. Подготовка к установке видеодрайвера
Прежде чем будет выполнена установка драйвера Nvidia в Debian 10, устанавливаем заголовочные файлы ядра:
sudo apt install linux-headers-$(uname -r|sed 's/[^-]*-[^-]*-//')
3. Установка драйвера из репозитория Debian
Открываем файл с репозиториями sources.list в mcedit и добавляем туда ветки contrib и non-free:
sudo mcedit /etc/apt/sources.list
Сохраняем изменения в sources.list с помощью нажатия клавиши F2. Выходим из текстового редактора, нажав клавишу F10.
Обновляем список пакетов системы:
sudo apt update
Для установки последней стабильной версии драйвера из репозиториев выполните:
sudo apt install nvidia-driver
Для видеокарт серии 400-500 надо установить драйвер не выше версии 390:
sudo apt install nvidia-legacy-390xx-driver
Для установки драйвера Nvidia Debian 10 версии 340 для очень старых видеокарт выполните команду:
sudo apt install nvidia-legacy-340xx-driver
Если вы устанавливали драйвер версии 340, то, возможно, к нему понадобиться отдельно установить nvidia-xconfig:
sudo apt install nvidia-xconfig
Запускаем пакет nvidia-xconfig для автоматического создания конфигурационного файла:
sudo nvidia-xconfig
Перезагружаем систему:
sudo reboot
4. Установка драйвера из testing репозитория
В данный момент последней версией драйвера является 430.64. Данный пакет можно использовать для видеокарт GeForce 600-й и выше серий. Драйвер ещё не включён в основную ветку репозиториев.
При установке используется репозиторий buster-backports — официальный репозиторий пакетов из веток testing и unstable, предназначенных для работы в стабильной версии ОС, например, патчей безопасности. Этот репозиторий предоставляет наиболее свежие версии пакетов. Сначала добавляем репозиторий buster-backports в /etc/apt/sources.list:
sudo mcedit /etc/apt/sources.list
Сохраняем изменения в sources.list с помощью нажатия клавиши F2. Выходим из текстового редактора, нажав клавишу F10. Затем обновляем пакеты системы:
sudo apt update
И устанавливаем драйвер Nvidia в Debian:
sudo apt install -t buster-backports nvidia-driver
Перезагружаем систему:
sudo reboot
5. Установка драйвера Nvidia с официального сайта
Скачиваем файл с драйвером с сайта Nvidia:
Проверяем наличие файла в папке Загрузки:
cd Загрузки && ls
Отключаем драйвер nouveau:
sudo echo blacklist nouveau > /etc/modprobe.d/blacklist-nvidia-nouveau.conf
sudo echo options nouveau modeset=0 >> /etc/modprobe.d/blacklist-nvidia-nouveau.conf
Устанавливаем требуемые для сборки пакеты gcc и make:
sudo apt install gcc make
Деактивируем GUI для ОС после перезагрузки:
sudo systemctl set-default multi-user.target
Перезагружаем систему:
sudo reboot
Авторизуемся в терминале как root. Переходим в папку /home/user/Загрузки:
cd /home/имя_пользователя/Загрузки
Выполняем команду:
sudo bash NVIDIA-Linux-x86_64-390.116.run
В процессе установки нужно будет ответить на некоторые вопросы и выполнить соответствующие вопросам действия. При этом, в зависимости от параметров вашей системы, некоторые из вопросов могут отсутствовать. Показываемая на экране информация:
The CC version check failed:
The kernel was built with gcc version 8.2.0 (Debian 8.2.0-14), but the current compiler version is cc (Debian 8.3.0-2) 8.3.0.
- Ignore CC version check
- Abort installation
Install NVIDIA's 32-bit compatibility libraries?
- Yes
- No
An incomplete installation of libglvnd was found. Do you want to install a full copy of libglvnd? This will overwrite any existing libglvnd libraries.
- Don't install libglvnd files
- Install and overwrite existing filesort installation.
- Abort installation
Would you like to run the nvidia-xconfig utility to automatically update your X configuration file so that the NVIDIA X driver will be used when you restart X? Any pre-existing X configuration file will be backed up.
- Yes
- No
Возвращаем на место загрузку системы в графическом режиме и перезагружаемся:
sudo systemctl set-default graphical.target
sudo systemctl reboot
6. Проверка завершения установки
Проверить наличие установленного драйвера можно с помощью команды:
lspci -k | grep -EA2 "VGA|3D|Display"
Удаление драйвера Nvidia из Debian
1. Удаление драйверов из репозитория
Удаляем драйвер Nvidia с помощью команды:
sudo dpkg -P $(dpkg -l | grep nvidia-driver | awk '{print $2}')
Далее выполняем:
sudo apt autoremove
Активируем вновь драйвер nouveau:
sudo apt install xserver-xorg-video-nouveau
Перезагружаем систему:
sudo reboot
2. Удаление драйверов, установленных с сайта Nvidia
Переходим в папку с пакетом, содержащим драйвер:
cd /home/user/Загрузки
Затем, чтобы удалить драйвер Nvidia Debian выполните:
sudo bash NVIDIA-Linux-x86_64-XXX.XX.run --uninstall
В процессе удаления драйвера система спросит: восстановить конфигурацию xorg из backup? Отвечаем: Yes.
Восстанавливаем из backup конфигурацию xorg, если не сделали этого в процессе удаления драйвера:
sudo nvidia-xconfig --restore-original-backup
Активируем драйвер nouveau:
sudo rm /etc/modprobe.d/blacklist-nvidia-nouveau.conf
Перезагружаем систему:
sudo reboot
Выводы
Сегодня мы разобрались как выполняется установка драйвера Nvidia в Debian 10. Нами были рассмотрены вопросы установки драйверов как из репозитория, так и с официального сайта Nvidia, а также особенности установки различных версий. Было проведено тестирование производительности драйверов. Также было уделено внимание процедуре удаления драйвера Nvidia из системы и порядку возврата к драйверу nouveau с открытым исходным кодом.
Тема NVIDIA-PRIME не раскрыта
Как на счёт ноутбуков с двойной графикой? Именно на дебиан.
Автор, интересная тема. Разовьешь? Я думаю это многим будет интересно)
О, да! 🙂 Зарегистрировался именно из-за этого вопроса. Плюс, у меня на Debian 10 не хочет загружаться драйвер nVidia. В dmesg вот такая борода:
3.699350] nvidia: loading out-of-tree module taints kernel.
[ 3.699359] nvidia: module license 'NVIDIA' taints kernel.
[ 3.704168] nvidia: module verification failed: signature and/or required key missing - tainting kernel
[ 3.713362] nvidia-nvlink: Nvlink Core is being initialized, major device number 243
[ 3.862914] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms 435.21 Sun Aug 25 08:07:52 CDT 2019
[ 3.867157] [drm] [nvidia-drm] [GPU ID 0x00000100] Loading driver
[ 3.867160] [drm] Initialized nvidia-drm 0.0.0 20160202 for 0000:01:00.0 on minor 1
[ 10.495202] [drm] [nvidia-drm] [GPU ID 0x00000100] Unloading driver
[ 10.520509] nvidia-modeset: Unloading
[ 10.548839] nvidia-nvlink: Unregistered the Nvlink Core, major device number 243
Бьюсь с этим drm уже какой месяц. Не работает, зараза.
Сам спросил, сам ответил. Если запускать приложения через optirun - драйвер сам загружается:
717315.832913] nvidia-nvlink: Nvlink Core is being initialized, major device number 243
[717316.337094] nvidia-modeset: Loading NVIDIA Kernel Mode Setting Driver for UNIX platforms 435.21 Sun Aug 25 08:07:52 CDT 2019
И приложение работает.
Через какое-то время после закрытия приложения драйвер выгружается:
[717388.843654] nvidia-modeset: Unloading
[717388.876907] nvidia-nvlink: Unregistered the Nvlink Core, major device number 243
Не могу понять как сделать nvidia по дефолту и запускать все сразу на ней без optirun.
Можно продолжить тему установкой драйверов ATI/AMD и Intel.
У меня ничего не вышло. Пытался поставить драйвер с сайта (304.137 - старенький ноут с картой NVS 3100M). После перезагрузки и запуска run файла, мне сообщили, что система всё ещё работает на стандартных дровах и ничего установить не получится. После этого хватило лишь команды для возврата в графический режим. Что я мог сделать не так?
Спасибо.
P.S. Пытался ставить из репов 340 версию, всё ломается и не грузится после логотипа Nvidia
у меня получается поставить драйвер
Но не поддерживается разрешение 2560*1080
не знаю как победить это
на nouveau все работало корректно
устанавливал 5 способом, после перезагрузки черный экран, просит ввести логин. но он сука не вводится, потому что стоит рус раскладка и горячей клавишей на англ не переключается. и вообще ничего не сделать, спасибо автору за уничтоженную систему...
Не вводится он потому-что там стоит защита от отображения пароля. А то что чёрный экран это нормально (не загруженна GUI), там же вводите gnome-session если же у вас Gnome, если же другой то гуглите ибо мне лень:) . Бог вам в помощь
Автору большое спасибо за подробный man. Устанавливал из testing репозитория, всё установилось и функционирует без проблем.
Losst.ru, самый лучший сайт по дистрам Linux в ru сегменте. имхо
Желаю всегда быть в топе выдачи!
очень большая просьба раскрыть тему гибридной графики на ноутбуках Intel + Nvidia.
Нужно в первую очередь заходить на оф сайт дистрибутива и читать как там предлагается. Я так сделал и только потом здесь стал читать, чтобы некоторый момент уточнить. Хотя в доке дебиан и так все было понятно. И у меня все поставилось нормально, сейчас стоит драйвер nvidia-driver.
* в некоторых случаях NVIDIA драйвер работать НЕ БУДЕТ, если в BIOS не отключить Secure Boot.
Спасибо большое за такой подробный рассказ, что даже чайник вроде меня смог разобраться.