Поиск по сайту:

Как установить устаревший драйвер NVIDIA 470 в Ubuntu 26.04, 24.04, 22.04


Ubuntu наконец-то прекратил поддержку устаревшего драйвера NVIDIA 470 для всех текущих выпусков Ubuntu! Вот как вручную установить его обратно для тех, кто использует Ubuntu на GeForce GT 710/730/780 и других GPU Kepler (серии GeForce 700, 600, TITAN и Tesla).

Ubuntu объявила о прекращении поддержки драйвера NVIDIA 470 несколько месяцев назад. Для Ubuntu 26.04 пакет устаревшего драйвера исключен из системного репозитория. В то время как Ubuntu 24.04 и 22.04 перенесли пакет на NVIDIA 535.

Пакет устаревшего драйвера NVIDIA 470 в сборочной ферме Launchpad

В этом руководстве я покажу вам, как установить драйвер NVIDIA 470 двумя способами:

  • Вариант 1: Понизить версию драйвера 470, поставляемого с Ubuntu, до предыдущей сборки.
  • Вариант 2: Установите драйвер от NVIDIA с общинными патчами.

Недостатки

Наследуемый драйвер 470 нуждается в патче, чтобы иметь возможность собираться на ядрах Linux 6.14 и новее (см. этот отчет об ошибке). Возможно, поэтому Ubuntu решила прекратить поддержку этого драйвера.

Для Ubuntu 22.04 с дефолтным ядром 6.8 полностью допустимо понизить версию до предыдущей сборки, которая установит реальный драйвер 470, но будущих обновлений для исправления безопасности не будет.

Ubuntu 24.04 также может понизить версию драйвера, но это также требует понижения ядра до версии ниже 6.14 из-за отсутствующих исправлений.

Для новых ядер (6.14 и позже) существует проект, поддерживаемый сообществом, который содержит патчи для сборки драйвера NVIDIA версии 470 на дистрибутивах на базе Debian/Ubuntu, хотя он неофициальный!

Вариант 1: Понизить версию драйвера 470, поставляемого с Ubuntu, до предыдущей сборки.

Как уже упоминалось, последняя сборка драйвера NVIDIA 470 в репозитории Ubuntu 24.04 и 22.04 действует как оболочка, которая будет автоматически загружать и устанавливать драйвер NVIDIA 535. К счастью, предыдущая сборка всё ещё доступна, и вы можете выбрать понижение версии до этой сборки.

1. Удалите NVIDIA 535

Если вы уже установили последнюю обновленную версию пакета nvidia 470, то драйвер 535 автоматически установлен на вашей системе.

Чтобы удалить его, нажмите Ctrl+Alt+T, чтобы открыть терминал, и выполните команду:

sudo apt --purge remove '*nvidia*470*' '*nvidia*535*'

По желанию, вы можете заменить номер 470 в команде, чтобы удалить другие серии драйверов, например, 580, 595. После завершения перезагрузите компьютер, чтобы применить изменения.

2. Понизить версию ядра (только для Ubuntu 24.04)

Для Ubuntu 24.04 выполните команду в терминале (Ctrl+Alt+T), чтобы установить оригинальное ядро 6.8:

sudo apt install linux-image-generic linux-headers-generic

или замените linux-image-generic на linux-image-6.11.0-29-generic, чтобы установить ядро 6.11.

После этого перезагрузите компьютер и выберите ядро 6.8 или 6.11 (в зависимости от того, какое вы установили) в подменю «Расширенные параметры для Ubuntu» в загрузчике Grub.

Наконец, удалите более новые ядра, иначе при установке nvidia-470 будет попытка собрать модели для этих ядер, что приведет к ошибкам.

sudo apt remove --autoremove linux-image-6.14.0-* linux-headers-6.14.0-* linux-image-6.17.0-* linux-headers-6.17.0-*

3. Добавьте правило для блокировки последней сборки, которая автоматически устанавливает NVIDIA 535.

Как видно на скриншоте выше, последнее обновление драйвера nvidia 470 (оболочка 535) доступно в канале «Обновления», в то время как предыдущая версия находится в канале «Безопасность». Чтобы предотвратить автоматическую установку nvidia 535, нам нужно добавить правило для блокировки версии из «Обновлений».

Для этого откройте терминал (Ctrl+Alt+T) и выполните приведённую ниже команду, чтобы создать и отредактировать правило apt:

sudo nano /etc/apt/preferences.d/nvidia470

Когда файл откроется (в терминале), добавьте ниже приведённые строки, чтобы предотвратить установку любых пакетов, связанных с nvidia 470, через канал «обновления»:

Package: *nvidia*470*
Pin: release a=noble-updates
Pin-Priority: -1

Для Ubuntu 22.04 замените noble на jammy. Затем нажмите Ctrl+S, чтобы сохранить, и Ctrl+X, чтобы выйти.

4. Переустановите драйвер nvidia 470.

Теперь выполните команду для обновления кэша репозиториев apt:

sudo apt update

И выполните команду ниже, чтобы показать состояние пакета драйверов 470:

apt policy nvidia-driver-470

Если всё пройдет хорошо, вы увидите, что предыдущая сборка доступна как кандидат.

Наконец, выполните команды ниже, чтобы установить заголовки ядра (необходимые для сборки модулей ядра) и драйвер 470:

sudo apt install linux-headers-$(uname -r)
sudo apt install nvidia-driver-470

И перезагрузите компьютер, чтобы применить изменения, если всё пройдет хорошо и без ошибок.

Вариант 2: Установите драйвер от NVIDIA с общинными патчами.

Для Ubuntu 26.04 или Ubuntu 24.04, кто не хочет понижать версию ядра, вы можете установить драйвер, предоставленный NVIDIA (.run установщик) с патчами сообщества. А бесплатный проект с открытым исходным кодом содержит патчи nvidia 470 для ядра 6.13 ~ 7.2.

ПРИМЕЧАНИЕ: Эта опция НЕ работает в Ubuntu 26.04 с рабочим столом GNOME по умолчанию, так как он НЕ поддерживает Xorg. И в KUbuntu 26.04 необходимо установить пакет plasma-session-x11 для сессии Xorg.

NVIDIA 470 в XUbuntu 26.04

1. Сначала также удалите драйверы NVIDIA версии 470, 535 или другие проприетарные драйверы через первый шаг в Варианте 1. И перезагрузите компьютер.

2. Затем откройте терминал (Ctrl+Alt+T) и выполните команду для установки зависимых библиотек:

sudo apt install git wget build-essential linux-headers-$(uname -r) libglvnd-dev

Тогда сохраните свою работу, так как следующий шаг отключит ваш рабочий стол и запустится в полноэкранной текстовой консоли.

3. Далее нажмите Ctrl+Alt+F3 ~ F6, чтобы переключиться на консоль команд TTY. Затем введите своё имя пользователя и пароль для входа.

Командная консоль TTY

4. Теперь выполните команду ниже, которая завершит все графические сессии. Это необходимо для возможности запуска установщика драйвера .run, предоставленного NVIDIA.

sudo systemctl isolate multi-user.target

Нажмите Ctrl+C, если команда зависла на мигающем курсоре.

5. Затем выполните команду для клонирования исходного кода, который содержит все патчи сообщества, и скрипт для их применения.

git clone https://github.com/joanbm/nvidia-470xx-linux-mainline

Наконец, перейдите в исходную папку и запустите скрипт install:

cd nvidia-470xx-linux-mainline && ./install

Скрипт автоматически загрузит предоставленный NVIDIA .run установщик, извлечет и применит патчи, а затем запустит установщик

Когда установщик запускается, выберите «Продолжить установку», чтобы пропустить экран «Обнаружен альтернативный способ установки драйвера NVIDIA …».

Если используется встроенный драйвер Nouveau ядра, он выдаст ошибку из-за несовместимости. Просто нажмите ОК, затем на следующем экране выберите Да, чтобы автоматически добавить конфигурационный файл для добавления драйвера nouveau в черный список.

Наконец, выполните reboot, чтобы перезагрузить компьютер без драйвера nouveau, и повторно выполните шаги 3, 4, 5 (без git clone), чтобы заново запустить установщик и ответить «да/ок» на все вопросы.

Удалить :

Если вы установили устаревший драйвер 470 через пакет из репозитория системы Ubuntu, выполните приведённую ниже команду, чтобы удалить его:

sudo apt --purge remove '*nvidia*470*'

Для драйвера, установленного через установщик, предоставленный NVIDIA, повторно выполните шаги 3 и 4 в Опции 2, чтобы остановить графические сеансы, затем выполните приведенную ниже команду для удаления:

sudo nvidia-uninstall

Чтобы убрать драйвер ядра open-source nouveau из черного списка, просто удалите конфигурационные файлы:

sudo rm /etc/modprobe.d/nvidia-installer-disable-nouveau.conf /usr/lib/modprobe.d/nvidia-installer-disable-nouveau.conf

Наконец, перезагрузите компьютер, чтобы применить изменения.