Как установить драйвер видеокарты AMD на Ubuntu Linux

Ошибка glxinfo с сообщением "Software Rasterizer" вместо названия вашей модели AMD Radeon указывает на то, что система использует базовый драйвер Mesa, игнорируя производительность видеокарты. Это происходит, когда ядро Linux не загрузило корректный модуль amdgpu или отсутствует согласованный набор библиотек для ускорения рендеринга. Чтобы исправить ситуацию, необходимо проверить версию ядра и тип поддерживаемого оборудования, так как старые карты серии GCN 1.0 требуют иного подхода, чем современные RDNA2 и RDNA3.

Пользователи часто путают понятия проприетарного и открытого драйвера, полагая, что для работы AMDGPU нужно скачивать инсталляторы с официального сайта как в Windows. На самом деле, в экосистеме Ubuntu ситуация кардинально иная: основной стек драйверов интегрирован прямо в ядро системы и пакетный менеджер, что упрощает процесс обновления и снижает риск конфликтов. Однако для специфических задач, таких как майнинг или работа с нейросетями через ROCm, может потребоваться установка дополнительных репозиториев.

Определение модели видеокарты и версии ядра

Перед началом любых манипуляций необходимо точно идентифицировать оборудование, так как команды для поддержки устаревших чипов и современных архитектур различаются. Откройте терминал и введите команду lspci | grep -i vga, чтобы увидеть точную модель графического адаптера. Для более детальной информации о загруженном драйвере используйте lspci -k | grep -EA3 'VGA|3D', где ключевым параметром является строка "Kernel driver in use".

Важно знать, что поддержка архитектуры RDNA и RDNA2 требует ядра версии 5.10 и выше, в то время как карты серии Polaris (GCN 4.0) работают стабильно даже на более старых версиях ядра. Если вы используете дистрибутив с устаревшим ядром, прежде чем устанавливать драйверы, необходимо обновить саму систему до актуальной версии ядра через репозиторий Ubuntu Mainline. Без этого даже правильный драйвер может не загрузиться, оставив экран в режиме низкого разрешения.

Для проверки текущей версии ядра выполните команду uname -r. Если вы видите версию ниже 5.15 и планируете использовать карту серии RX 6000, настоятельно рекомендуется обновить систему до Ubuntu 22.04 LTS или новее, где поддержка аппаратного ускорения встроена по умолчанию. Это избавит от необходимости ручной компиляции модулей ядра, что часто приводит к ошибкам при обновлении системы.

Проверка наличия открытого драйвера AMDGPU

В подавляющем большинстве случаев на современных версиях Ubuntu драйвер amdgpu уже установлен и активен, но его нужно лишь правильно настроить. Система автоматически загружает этот модуль при запуске, если видеокарта поддерживается. Чтобы убедиться в его работе, введите в терминале команду lsmod | grep amdgpu. Если вывод пуст, значит модуль не загружен, что может свидетельствовать о блокировке в параметрах загрузки ядра или отсутствии поддержки в текущей версии ядра.

Для получения детальной статистики работы драйвера используйте утилиту amdstdinfo или проверьте системные логи через dmesg | grep amdgpu. Здесь вы увидите сообщения об инициализации GPU, назначении памяти и загрузке микрокода. Если в логах присутствуют ошибки типа "firmware missing", необходимо установить пакет микрокода linux-firmware из репозитория.

Иногда система загружает старый драйвер radeon вместо amdgpu, особенно на картах переходного поколения. Чтобы принудительно использовать новый драйвер, нужно добавить параметр radeon.cik_support=0 amdgpu.cik_support=1 в конфигурацию загрузчика. Это критически важно для стабильной работы карт серии Tahiti и Pitcairn.

Установка проприетарного ПО AMD и ROCm

Хотя открытый драйвер покрывает 95% задач, для профессиональных вычислений, рендеринга и машинного обучения требуется установка стека ROCm (Radeon Open Compute). Это проприетарный набор библиотек, который предоставляет доступ к вычислительным возможностям GPU. Установка осуществляется через официальный репозиторий AMD, который необходимо добавить в список источников Ubuntu.

Сначала добавьте репозиторий, выполнив команду sudo apt update, а затем скачайте и установите ключи подписи с сайта AMD. После этого установите пакет rocm-smi-lib для мониторинга состояния карты. Важно отметить, что поддержка ROCm на Linux пока менее универсальна, чем у CUDA от NVIDIA, и работает только с определенными моделями карт, такими как Instinct и некоторые потребительские модели серии RX.

Для установки наиболее актуальной версии драйвера и инструментов разработчика используйте команду:

sudo apt install rocm-dev mesa-rocm-lib

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

⚠️ Внимание: Установка проприетарного стека ROCm может конфликтовать с открытыми драйверами Mesa, если версии библиотек не совпадают. Перед установкой ROCm рекомендуется создать резервную копию системы или использовать отдельный контейнер Docker.

📊 Какая версия Ubuntu у вас установлена?
20.04 LTS
22.04 LTS
24.04 LTS
Другая версия

Настройка параметров ядра и отключение Nouveau

Хотя драйвер nouveau предназначен для карт NVIDIA, его наличие в системе иногда может вызывать конфликты при загрузке графического сервера, особенно если вы используете гибридную графику. В некоторых случаях стоит проверить, не загружается ли этот модуль случайно. Выполните команду lsmod | grep nouveau. Если модуль активен, его нужно отключить, добавив правило в файл конфигурации /etc/modprobe.d/blacklist.conf.

Для корректной работы драйвера amdgpu часто требуется изменение параметров загрузки ядра. Откройте файл /etc/default/grub и найдите строку GRUB_CMDLINE_LINUX_DEFAULT. Добавьте в кавычки параметры amdgpu.runpm=0 для отключения энергосбережения, если вы наблюдаете нестабильную работу, или amdgpu.sg_display=0 для решения проблем с мерцанием экрана.

После изменения файла grub необходимо обновить загрузчик командой sudo update-grub и перезагрузить компьютер. Это действие критично, так как без обновления конфигурации изменения не вступят в силу. Проверка новых параметров выполняется через команду cat /proc/cmdline.

☑️ Проверка перед обновлением драйверов

Выполнено: 0 / 4

Устранение распространенных проблем и ошибок

Частой проблемой является отсутствие аппаратного ускорения в браузере или медиаплеерах, несмотря на установленный драйвер. Это происходит из-за конфликтов версий библиотеки libdrm или отсутствия необходимых кодеков. Решением является установка пакета ubuntu-drivers-common и проверка доступных версий через утилиту ubuntu-drivers devices.

Если после обновления системы загрузка останавливается на черном экране, это признак того, что новый драйвер не совместим с текущей версией ядра. В этом случае необходимо загрузиться в режиме восстановления (Recovery Mode), выбрать опцию "Drop to root shell prompt" и выполнить удаление проблемных пакетов командой sudo apt remove --purge amdgpu-pro.

Другая распространенная ошибка — невозможность изменить разрешение экрана. Это часто связано с отсутствием файла конфигурации Xorg. Создайте его вручную в /etc/X11/xorg.conf, указав секцию Device и Screen с правильными параметрами для вашей карты AMD. Однако в современных окружениях рабочего стола (GNOME, KDE) это часто решается автоматически через утилиту xrandr.

Модель видеокарты Минимальная версия ядра Тип драйвера Поддержка ROCm
AMD Radeon RX 5500 XT Linux 5.4 Open Source (Mesa) Частичная
AMD Radeon RX 6800 XT Linux 5.10 Open Source (Mesa) Да
AMD Radeon RX 7900 XTX Linux 6.2 Open Source (Mesa) Да (требует настройки)
AMD Radeon RX 580 Linux 4.15 Open Source (Mesa) Нет

Оптимизация производительности и мониторинг

После успешной установки драйвера полезно настроить мониторинг температуры и частот GPU в реальном времени. Утилита radeontop позволяет отслеживать загрузку отдельных блоков видеокарты, что полезно для диагностики перегрева или узких мест в вычислениях. Для установки выполните sudo apt install radeontop.

Для автоматического контроля частот и напряжений можно использовать утилиту corectrl, которая предоставляет графический интерфейс для разгона и настройки профилей работы вентиляторов. Она работает поверх драйвера amdgpu и позволяет сохранять профили при загрузке системы. Это особенно актуально для игровых ПК, где баланс между шумом и охлаждением критичен.

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

Информация о прошивках

Микрокод для видеокарт AMD загружается из пакета linux-firmware. Если картой не удается инициализировать, проверьте наличие файлов с расширением.bin в директории /lib/firmware/amdgpu/

Заключение и дальнейшие шаги

Установка драйвера на Ubuntu для карт AMD — это процесс, который в 99% случаев сводится к обновлению системных пакетов и настройке параметров ядра. Открытая модель разработки драйверов позволяет получать обновления производительности и исправления ошибок вместе с обновлениями самого дистрибутива, что делает систему более стабильной.

Если вы используете карты для майнинга или профессиональных вычислений, обязательно изучите документацию по настройке ROCm, так как стандартные настройки могут не раскрывать полный потенциал оборудования. Регулярно обновляйте систему и следите за рекомендациями сообщества, так как поддержка новых архитектур RDNA постоянно совершенствуется.

⚠️ Внимание: При использовании закрытых драйверов AMD Pro (если они еще актуальны для вашей модели) вы можете столкнуться с проблемами совместимости с последними версиями ядра. В таких случаях лучше откатиться на стабильную версию ядра или использовать открытый драйвер Mesa.

Как проверить, что драйвер AMD загружен?

Выполните команду lspci -k | grep -A 2 -i vga. В строке "Kernel driver in use" должно быть указано "amdgpu". Если там "radeon", значит используется старый драйвер.

Нужно ли удалять проприетарные драйверы перед установкой новых?

Да, рекомендуется полностью удалить старые версии драйверов AMD Pro через sudo amdgpu-pro-uninstall, чтобы избежать конфликтов библиотек при установке новых версий Mesa.

Поддерживает ли Ubuntu карты AMD RX 7000?

Да, карты серии RX 7000 (RDNA3) полностью поддерживаются в Ubuntu 22.04 LTS и новее с ядром 6.2+, но для полной поддержки ROCm могут потребоваться дополнительные пакеты.

Почему видеокарта не отображается в диспетчере задач?

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

⚠️ Внимание: Не отключайте питание во время обновления ядра или установки драйверов, так как это может повредить файловую систему и сделать систему неработоспособной.