Модуль NVIDIA 470 DKMS не удается построить на Ubuntu 24.10 Oracular Oriole.

Вопрос или проблема

Я заметил, что после обновления до Ubuntu 24.10 у меня не загружен NVIDIA драйвер (lsmod не показывает ничего похожего на nvidia). Сначала я думал, что это из-за того, что я автоматически вошел в систему через Wayland, с которым у меня всегда проблемы, но вход в X11 не помог. Ubuntu теперь распознает только мою встроенную графику Intel. Я нашел журнал сборки DKMS (/var/lib/dkms/nvidia/470.256.02/build/make.log), в котором много ошибок, например:

/var/lib/dkms/nvidia/470.256.02/build/common/inc/nv-linux.h: In function ‘nv_phys_to_dma’:
/var/lib/dkms/nvidia/470.256.02/build/common/inc/nv-linux.h:703:12: error: implicit declaration of function ‘phys_to_dma’; did you mean ‘nv_phys_to_dma’? [-Wimplicit-function-declaration]
  703 |     return phys_to_dma(dev, pa);
      |            ^~~~~~~~~~~
      |            nv_phys_to_dma

В этот момент я задумался, какую версию NVIDIA 470 включает Ubuntu 24.10. Но apt policy показало, что это по сути неподдерживаемый пакет, который не предоставлен никакими репозиториями.

nvidia-dkms-470:
  Установлен: 470.256.02-0ubuntu0.24.04.1
  Кандидат: 470.256.02-0ubuntu0.24.04.1
  Таблица версий:
 *** 470.256.02-0ubuntu0.24.04.1 100
        100 /var/lib/dpkg/status

Веб-сайт packages.ubuntu.com подтверждает, что нет пакета nvidia-dkms-470 для Ubuntu 24.10… Насколько я знаю, только драйвер 470 подходит для моей графической карты NVIDIA. Как я могу установить его на своей системе сейчас?

Вот отчет lshw о моих видеоустройствах:

  *-display UNCLAIMED       
       description: VGA compatible controller
       product: GK106GLM [Quadro K2100M]
       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 cap_list
       configuration: latency=0
       resources: memory:b0000000-b0ffffff memory:80000000-8fffffff memory:90000000-91ffffff ioport:4000(size=128) memory:b1080000-b10fffff
  *-display
       description: VGA compatible controller
       product: 4th Gen Core Processor Integrated Graphics Controller
       vendor: Intel Corporation
       physical id: 2
       bus info: pci@0000:00:02.0
       logical name: /dev/fb0
       version: 06
       width: 64 bits
       clock: 33MHz
       capabilities: msi pm vga_controller bus_master cap_list rom fb
       configuration: depth=32 driver=i915 latency=0 resolution=2880,1620
       resources: irq:41 memory:b1400000-b17fffff memory:a0000000-afffffff ioport:5000(size=64) memory:c0000-dffff

Ответ или решение

Когда вы сталкиваетесь с проблемой сборки модуля NVIDIA 470 DKMS на Ubuntu 24.10 Oracular Oriole, ситуация может показаться сложной, особенно если ваш графический процессор поддерживается только этой версией драйвера. Однако давайте разберем проблему и предложим возможные решения.

Факт (Fact)

Вы проапгрейдили систему до Ubuntu 24.10 и заметили, что драйвер NVIDIA не загружается. При проверке с помощью lsmod отсутствует любой модуль, связанный с nvidia. Очевидно, система задействует интегрированную графику Intel, вместо дискретной NVIDIA. Драйвер NVIDIA 470.256.02 не удается собрать из-за ошибок, включая неопределённую функцию phys_to_dma.

Описание (Overview)

Из логов процессора сборки DKMS /var/lib/dkms/nvidia/470.256.02/build/make.log видно, что имеются ошибки компиляции, указывающие на несовместимость текущих заголовочных файлов ядра Ubuntu 24.10 с кодом драйвера NVIDIA версии 470. Проблема также усугубляется тем, что пакет nvidia-dkms-470 не поддерживается официальными репозиториями Ubuntu 24.10.

Разъяснение (Rationale)

Поиск через apt policy показывает, что драйвер установлен из более старой версии Ubuntu 24.04 и не поддерживается в 24.10. Это объясняет, почему сборка модуля DKMS заканчивается ошибками. Также указано, что ваша видеокарта — NVIDIA Quadro K2100M — требует использования драйвера версии 470 для полной функциональности.

Эмоция (Emotion)

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

Способ решения (Solve Method)

Чтобы решить эту проблему, следуйте данным шагам:

  1. Удаление проблемного драйвера:
    Удалите текущий неработающий драйвер, чтобы предотвратить дополнительные конфликты:

    sudo apt purge '^nvidia.'
  2. Ручная установка драйвера:
    Поскольку nvidia-dkms-470 не доступен в официальных репозиториях для Ubuntu 24.10, вам придется установить драйвер вручную.

    • Посетите официальный сайт NVIDIA для загрузки драйвера версии 470, подходящего под вашу карту: NVIDIA Driver Downloads.
    • Скачайте .run файл драйвера.
  3. Подготовка к установке:
    Переключитесь в режим командной строки без графического интерфейса (TTY):

    sudo systemctl isolate multi-user.target
  4. Установка драйвера:
    Перейдите в каталог загрузок и выполните команду для установки:

    sudo sh ./NVIDIA-Linux-x86_64-470.XX.run

    Следуйте инструкциям установщика.

  5. Включение драйвера:
    Перезагрузите систему и убедитесь, что новый драйвер загружен:

    sudo systemctl start graphical.target

Заключение (Terminate)

Теперь ваш графический процессор NVIDIA должен работать корректно на Ubuntu 24.10. Подобные меры могут потребоваться при выходе новых версий ОС или изменениях в репозиториях, но ручная установка через официальный сайт остается надежным решением.

Оцените материал
Добавить комментарий

Капча загружается...