Владельцы видеокарт Radeon и процессоров с графическим ядром Ryzen часто сталкиваются с необходимостью точной идентификации работающего программного обеспечения в среде Linux. В отличие от Windows, где панель управления AMD Adrenalin сразу показывает версию, в Ubuntu или Linux Mint эта информация скрыта в системных логах и утилитах командной строки. Понимание того, какой именно модуль активен — открытый Mesa или проприетарный amdgpu-pro, — критически важно для решения проблем с производительностью в играх или рендеринге.
Система Linux построена на модульной архитектуре, где видеодрайвер может быть интегрирован непосредственно в ядро или работать как отдельный модуль загрузки. Драйвер AMD в большинстве современных дистрибутивов работает через открытый интерфейс DRM (Direct Rendering Manager). Если вы только что установили ОС или обновились до новой версии, вам необходимо убедиться, что система использует актуальный стек драйверов, а не устаревшие компоненты, оставшиеся от предыдущих сборок.
В этой статье мы разберем проверенные методы диагностики, которые позволят вам точно определить версию и тип используемого драйвера. Мы не будем полагаться на догадки, а используем инструменты, которые дают прямой доступ к информации о OpenGL, Vulkan и загруженных модулях ядра. Это знание необходимо каждому, кто занимается настройкой игрового ПК или рабочей станции для вычислений на базе Ubuntu.
⚠️ Внимание: Интерфейсы командной строки и названия пакетов могут незначительно меняться в зависимости от версии дистрибутива Ubuntu (20.04, 22.04, 24.04). Всегда сверяйте названия пакетов с официальным репозиторием вашей версии системы перед удалением или установкой компонентов.
Использование утилиты glxinfo для проверки OpenGL
Самым быстрым и информативным способом узнать, какой драйвер обрабатывает 3D-графику, является использование утилиты glxinfo. Она входит в состав пакета mesa-utils, который в Ubuntu часто установлен по умолчанию, но в некоторых минималистичных сборках его придется добавить вручную через терминал.
После запуска команды с фильтром grep вы получите точную строку, описывающую рендерер. Именно здесь кроется ответ на вопрос, какой драйвер AMD установлен: система покажет либо llvmpipe (программная эмуляция, если драйвер не работает), либо название вашей видеокарты в связке с Mesa или AMD.
glxinfo | grep"OpenGL renderer"
Если в выводе вы видите строку, содержащую AMD, Radeon или Radv (драйвер Vulkan от Mesa для AMD), значит, ускорение hardware acceleration включено и работает корректно. В случае, если отображается llvmpipe, это сигнал о том, что графический процессор не задействован, и система работает на процессоре, что резко снижает производительность.
Для более глубокого анализа можно запросить полную информацию о версиях. Это поможет понять, поддерживает ли ваш текущий драйвер необходимые вам технологии, такие как OpenGL 4.6 или Vulkan 1.3.
glxinfo | grep -i"version"
Обратите внимание на строку OpenGL version string. Она покажет максимальную поддерживаемую версию стандарта, которую может обеспечить текущий установленный стек драйверов. Это особенно важно для запуска современных игр через Proton или Wine.
Если команда glxinfo не найдена, установите пакет mesa-utils командой: sudo apt install mesa-utils. Без этой утилиты диагностика графического стека значительно усложняется.
Анализ загруженных модулей ядра
Фундамент работы графики в Linux лежит в модулях ядра. Чтобы узнать, какой именно модуль драйвера AMD активен в данный момент, необходимо обратиться к утилите lsmod. Она (списывает) все загруженные модули, и среди них мы будем искать ключевые слова, связанные с AMD.
В современных системах на базе Ubuntu, начиная с версии 16.04 и новее, основным драйвером является amdgpu. Он пришел на смену старому amdgpu-pro и fglrx, которые больше не поддерживаются для новых карт. Старые карты (серии GCN 1.0 и ниже) могут использовать модуль radeon.
lsmod | grep amdgpu
Если команда выдает список модулей, значит, драйвер загружен. Отсутствие вывода означает, что модуль не активен, что может быть вызвано либо отсутствием оборудования, либо критической ошибкой загрузки.
Также полезно проверить, не конфликтуют ли старые модули. Иногда остатки проприетарных драйверов могут мешать работе открытого стека. Команда ниже покажет все модули, связанные с AMD:
lsmod | grep -E"amdgpu|radeon|fglrx"
Почему важен модуль ядра?
Модуль ядра — это низкоуровневый код, который позволяет операциной системе общаться с"железом". Без правильного модуля amdgpu видеокарта останется просто куском пластика и кремния, не способным выводить изображение за пределами базового framebuffer.
Стоит отметить, что наличие модуля в списке lsmod не всегда гарантирует его правильную работу с конкретным приложением, но это базовое условие функционирования графики. Если модуль amdgpu присутствует, но игры не запускаются, проблема, скорее всего, кроется в библиотеках Mesa или настройках Xorg/Wayland.
Проверка через утилиту lspci и детализация оборудования
Утилита lspci является стандартом де-факто для просмотра списка подключенных устройств PCI Express. Хотя она в первую очередь показывает"железо", она также может подсказать, какой драйвер ядра управляет устройством в данный момент.
Используя ключ -k (kernel), мы можем увидеть, какой драйвер ядра (kernel driver in use) связан с видеокартой. Это самый надежный способ подтвердить, что система"видит" карту и назначила ей правильный драйвер.
lspci -k | grep -A 3 -i vga
В выводе этой команды найдите блок, описывающий VGA compatible controller. Внутри этого блока будет строка Kernel driver in use. Если там написано amdgpu, значит, конфигурация корректна. Если строка отсутствует, драйвер не загружен.
Дополнительно можно использовать утилиту lshw (list hardware), которая предоставляет более читаемый отчет о конфигурации оборудования, включая информацию о видеодрайвере.
sudo lshw -c video
Эта команда потребует прав суперпользователя. В полученном отчете ищите поле configuration, где часто указывается используемый драйвер. Это особенно полезно, если у вас в системе несколько графических адаптеров (например, встроенная графика Intel и дискретная AMD).
Открытый Mesa против проприетарного amdgpu-pro
Один из самых частых вопросов пользователей Ubuntu:"Какой драйвер лучше?". В мире Linux существует два основных пути: использование открытого драйвера Mesa (входящего в состав дистрибутива) и установка проприетарного amdgpu-pro с сайта AMD.
Для подавляющего большинства пользователей, включая геймеров, открытый драйвер Mesa (RADV для Vulkan, Radeonsi для OpenGL) является предпочтительным выбором. Он обновляется вместе с системой, стабилен и обеспечивает отличную производительность в современных играх.
- 🚀 Производительность: В последних версиях Ubuntu открытый драйвер часто обходит проприетарный в играх благодаря быстрой оптимизации компиляторов.
- 🛠 Стабильность: Mesa тестируется сообществом и разработчиками дистрибутивов, что минимизирует риск крашей системы.
- 🔄 Обновления: Вы получаете обновления драйверов автоматически через стандартный менеджер обновлений системы.
Проприетарный драйвер amdgpu-pro необходим в узком спектре случаев: для профессиональных задач, требующих сертификации ISV (OpenCL для вычислений, специфические кодеки кодирования), или для очень старых карт, которые плохо поддерживаются новыми версиями Mesa.
⚠️ Внимание: Установка проприетарного драйвера amdgpu-pro поверх стандартной Ubuntu может привести к конфликтам библиотек и"поломке" графической оболочки. Делайте это только если вы точно знаете, зачем вам нужны специфические функции OpenCL или ROCm.
Чтобы понять, что у вас стоит, можно проверить версии библиотек. Открытый стек обычно базируется на Mesa, версии которого можно проверить командой:
dpkg -l | grep mesa
Если же установлен проприетарный драйвер, в списке пакетов будут присутствовать пакеты с именами, содержащими amdgpu-pro или fglrx (для очень старых систем).
Диагностика через системные логи
Когда графические утилиты молчат или выдают противоречивую информацию, на помощь приходят системные логи. В Ubuntu основным источником информации о загрузке является Xorg (для X11) или systemd journal (для Wayland и общих событий ядра).
Файл лога Xorg содержит подробнейший отчет о том, какие модули были загружены, какие разрешения экрана поддерживаются и какой драйвер был инициализирован. Путь к файлу обычно выглядит как /var/log/Xorg.0.log.
grep -i"driver" /var/log/Xorg.0.log
Эта команда отфильтрует строки, содержащие слово"driver". Вы увидите сообщения о загрузке модуля amdgpu или modesetting. Это подтвердит, что X-сервер успешно инициализировал видеодрайвер.
Для более общей диагностики, особенно если графическая оболочка даже не запускается, используйте dmesg. Эта команда показывает сообщения кольцевого буфера ядра.
dmesg | grep -i amdgpu
Здесь можно увидеть ошибки инициализации, проблемы с прошивкой (firmware) или конфликты ресурсов. Если вы видите строки со словом error или fail красным цветом (в цветном терминале), это указывает на проблему с драйвером.
Системные логи — это"черный ящик" вашей системы. Если драйвер не работает, причина почти всегда записана в Xorg.0.log или выводе dmesg в виде конкретной ошибки.
Сравнительная таблица методов проверки
Для удобства сведем все рассмотренные методы в единую таблицу. Это поможет вам быстро сориентироваться, какой инструмент использовать в конкретной ситуации.
| Метод | Команда | Что показывает | Сложность |
|---|---|---|---|
| GLX Info | glxinfo \| grep renderer |
Активный 3D-рендерер (Mesa/AMD) | Низкая |
| Модули ядра | lsmod \| grep amdgpu |
Загружен ли модуль драйвера | Низкая |
| PCI Список | lspci -k |
Привязка драйвера к устройству | Средняя |
| Системный лог | cat /var/log/Xorg.0.log |
Детали инициализации и ошибки | Высокая |
Использование комбинации этих методов дает наиболее полную картину. Например, lspci подтвердит наличие карты, lsmod — загрузку модуля, а glxinfo — успешную работу 3D-ускорения.
Часто задаваемые вопросы (FAQ)
Как обновить драйвер AMD в Ubuntu до последней версии?
В Ubuntu драйверы обновляются через системный менеджер обновлений. Для получения более новых версий Mesa можно использовать PPA-репозиторий kisak-mesa или oibaf, но это требует добавления сторонних источников в sources.list.
Почему glxinfo показывает llvmpipe вместо AMD?
Это означает, что аппаратное ускорение не работает. Возможные причины: не установлен пакет mesa-vulkan-drivers, драйвер amdgpu не загружен в ядро, или видеокарта слишком старая/новая для текущей версии ядра Ubuntu.
Нужно ли устанавливать драйверы с сайта AMD для игр?
В 95% случаев нет. Открытые драйверы Mesa в современных дистрибутивах Linux обеспечивают лучшую совместимость и производительность в играх, чем проприетарные драйверы AMD, которые ориентированы на профессиональные рабочие нагрузки.
Как проверить версию Vulkan драйвера?
Используйте утилиту vulkaninfo (пакет vulkan-tools). Команда vulkaninfo | grep"driverVersion" покажет версию драйвера в шестнадцатеричном формате, которую можно декодировать или сравнить с таблицами версий Mesa.
Может ли обновление ядра сломать драйвер AMD?
Редко, так как модуль amdgpu встроен в ядро. Однако, если вы используете проприетарный amdgpu-pro, обновление ядра может потребовать переустановки драйвера, так как модули DKMS должны быть пересобраны для новой версии ядра.