Работа с графическими драйверами в операционных системах на базе ядра Linux часто требует глубокого понимания процессов установки и, что не менее важно, удаления. Пользователи сталкиваются с необходимостью очистить систему от старых или конфликтующих версий ПО AMD при переходе на новые релизы, смене дистрибутива или переходе с проприетарного стека на открытый Mesa. Неправильная очистка может привести к неработоспособности графического интерфейса или невозможности загрузки системы.

В отличие от Windows, где существует стандартный механизм через «Панель управления», в Linux процесс зависит от конкретного дистрибутива и способа первоначальной установки. Вам предстоит работать с пакетными менеджерами или скриптами-деинсталляторами, которые поставляются вместе с драйверами. Важно точно определить, какой именно стек используется в вашей системе, чтобы не нарушить целостность окружения.

Эта статья охватывает все основные сценарии: от удаления официальных amdgpu-pro до полной зачистки репозиториев Mesa. Мы рассмотрим команды для дистрибутивов на базе Debian/Ubuntu и Arch Linux, а также уделим внимание ручному удалению остаточных файлов конфигурации. Грамотный подход к этому вопросу обеспечит стабильность вашей системы после обновления.

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

Прежде чем запускать команды удаления, необходимо четко понимать, что именно установлено на вашем компьютере. Часто пользователи путают открытые драйверы Mesa, которые идут в комплекте с дистрибутивом, и проприетарные amdgpu-pro, скачанные с сайта производителя. Для диагностики используйте утилиту glxinfo или команду lspci в сочетании с фильтрацией вывода.

Проверка версии ядра также критически важна, так как поддержка новых видеокарт AMD напрямую зависит от версии Linux Kernel. Если вы планируете полную переустановку, убедитесь, что у вас есть доступ к терминалу через SSH или возможность войти в консольный режим (TTY), если графическая оболочка перестанет отвечать. Для перехода в текстовый режим обычно используется комбинация клавиш Ctrl+Alt+F3.

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

⚠️ Внимание: Перед началом процедуры обязательно закройте все графические приложения и, если возможно, остановите дисплейный менеджер (например, gdm или sddm), чтобы избежать блокировки файлов драйвера работающими процессами.

Для получения точной информации о текущем состоянии драйверов выполните команду inxi -G, которая покажет используемый драйвер и версию Mesa. Это поможет выбрать правильную стратегию удаления из предложенных ниже.

Удаление проприетарных драйверов amdgpu-pro

Официальные драйверы amdgpu-pro часто устанавливаются через скрипт-инсталлятор, который также предоставляет механизм для их удаления. Если вы устанавливали драйвер вручную, скачав архив с сайта AMD, то в папке с установщиком обычно находится скрипт amdgpu-pro-uninstall. Запуск этого скрипта является наиболее безопасным способом вернуть систему в исходное состояние.

Для выполнения удаления необходимо открыть терминал в директории с распакованными файлами драйвера и запустить команду с правами суперпользователя. Скрипт автоматически определит установленные компоненты и предложит удалить их, включая библиотеки OpenCL и Vulkan. Процесс может занять несколько минут в зависимости от скорости дисковой подсистемы.

sudo./amdgpu-pro-uninstall

В некоторых случаях, особенно на дистрибутивах вроде Ubuntu или Mint, драйверы могли быть установлены через deb-пакеты. В такой ситуации стандартный uninstaller может не сработать корректно, и придется прибегнуть к использованию пакетного менеджера apt. Вам потребуется найти все пакеты, содержащие в названии amdgpu или fglrx (для очень старых карт), и удалить их.

После выполнения скрипта удаления настоятельно рекомендуется перезагрузить систему, чтобы ядро Linux могло выгрузить старые модули и инициализировать стандартный драйвер amdgpu из состава ядра. Если после перезагрузки система не загружает графический интерфейс, проверьте логи dmesg на наличие ошибок модуля DRM.

⚠️ Внимание: Не прерывайте процесс удаления драйверов amdgpu-pro принудительно. Это может оставить систему в состоянии, когда ни проприетарный, ни открытый драйвер не могут быть загружены, что потребует ручной правки файлов конфигурации загрузчика.

Если стандартный скрипт отсутствует, можно попытаться удалить пакеты вручную, используя команду dpkg -l | grep amdgpu для поиска и последующего apt purge для удаления. Однако этот метод требует внимательности, чтобы не удалить лишние системные зависимости.

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

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

Очистка открытых драйверов Mesa и библиотек

Открытые драйверы Mesa3D являются неотъемлемой частью большинства дистрибутивов Linux и обеспечивают базовую функциональность для видеокарт AMD. Полное удаление Mesa может привести к неработоспособности графического интерфейса (X11/Wayland), так как многие компоненты системы завязаны на эти библиотеки. Поэтому под «удалением» здесь чаще всего подразумевается сброс конфигурации или обновление до чистой версии из репозитория.

Если вы устанавливали свежие версии Mesa из сторонних PPA (например, Kisak-Mesa или Oibaf), первым шагом должно быть удаление этих репозиториев. Используйте утилиту ppa-purge, которая не только отключит сторонний источник, но и понизит версии пакетов до официальных версий вашего дистрибутива. Это наиболее безопасный способ «удалить» кастомную сборку Mesa.

sudo apt install ppa-purge

sudo ppa-purge ppa:kisak/kisak-mesa

Для дистрибутивов на базе Arch Linux, таких как Manjaro или EndeavourOS, управление драйверами осуществляется через pacman. Здесь важно удалить пакеты mesa, lib32-mesa и связанные с ними компоненты Vulkan (vulkan-radeon). Однако, будьте осторожны: удаление Mesa может потянуть за собой удаление всего графического окружения.

Важно различать удаление бинарных файлов драйвера и очистку конфигурационных файлов. Конфиги часто находятся в домашней директории пользователя (например, ~/.config/mesa) или в /etc. Их удаление позволяет сбросить настройки кэша шейдеров и принудить драйвер пересоздать их с нуля, что иногда решает проблемы с артефактами.

В таблице ниже приведены основные пакеты, которые обычно подлежат удалению или переустановке при работе с графикой AMD в различных дистрибутивах.

Дистрибутив Пакетный менеджер Ключевые пакеты для удаления/сброса Команда сброса репозиториев
Ubuntu / Debian apt / dpkg libgl1-mesa-dri, mesa-vulkan-drivers ppa-purge
Fedora dnf mesa-dri-drivers, mesa-vulkan-drivers dnf downgrade
Arch Linux pacman mesa, lib32-mesa, vulkan-radeon pacman -Syu
openSUSE zypper Mesa, Mesa-dri, Mesa-libGL zypper dup

После манипуляций с пакетами Mesa необходимо обновить кэш динамического линковщика командой sudo ldconfig. Это действие сообщит системе об изменениях в библиотеках и обеспечит корректную работу приложений, зависящих от графического стека.

Удаление драйверов через пакетные менеджеры

Использование нативных пакетных менеджеров — это стандартный и наиболее предсказуемый способ управления программным обеспечением в Linux. Для дистрибутивов семейства Debian/Ubuntu основной командой является apt remove или более агрессивная apt purge. Ключевое различие заключается в том, что purge удаляет также и конфигурационные файлы, что часто необходимо для полной очистки драйвера.

Чтобы удалить все пакеты, связанные с AMD, можно использовать wildcard-маски. Например, команда sudo apt purge amdgpu radeon попытается удалить все пакеты, содержащие эти слова в имени. Однако перед выполнением такой команды всегда смотрите на список пакетов, которые будут удалены, чтобы случайно не задеть системные компоненты.

В Fedora и CentOS используется менеджер dnf. Синтаксис схож с apt, но команды могут отличаться. Например, sudo dnf remove akmod-amdgpu удалит модули ядра для видеокарт AMD.

⚠️ Внимание: При удалении пакетов через менеджеры вроде apt или dnf внимательно читайте список удаляемых программ. Если в списке появляются критические компоненты вроде ubuntu-desktop или gnome-core, немедленно прервите операцию.

Для пользователей Arch Linux и его производных характерно использование pacman. Здесь можно использовать команду pacman -Rns (remove, remove dependencies, remove config files) для глубокой очистки. Например: sudo pacman -Rns xf86-video-amdgpu. Это удалит драйвер и все зависимости, которые не используются другими пакетами.

📊 Какой дистрибутив Linux вы используете для работы с графикой AMD?
Ubuntu / Mint / Debian
Fedora / RHEL
Arch / Manjaro
Другой (Gentoo, SUSE)
Я только планирую установить

Ручная очистка остаточных файлов и модулей ядра

Даже после удаления пакетов в системе могут оставаться «хвосты»: файлы конфигурации, кэш компиляции модулей ядра или библиотеки, установленные вручную в /usr/local. Для поиска таких файлов можно использовать утилиту find. Например, поиск файлов, содержащих amdgpu в имени, в директориях /lib/modules и /etc.

Модули ядра часто остаются в папке /lib/modules/$(uname -r)/kernel/drivers/gpu/drm/amd. Если вы полностью удалили драйверы, но файлы остались, их можно удалить вручную, но только убедившись, что вы работаете не с модулями, поставляемыми текущим ядром. Ошибка здесь может привести к тому, что система перестанет видеть видеокарту после перезагрузки.

Также стоит проверить файл /etc/modprobe.d/ на наличие конфигурационных файлов, созданных драйвером AMD (например, amdgpu.conf). Эти файлы могут содержать параметры загрузки модулей, которые будут конфликтовать с новой конфигура или вызывать ошибки при старте.

sudo rm /etc/modprobe.d/amdgpu.conf

sudo update-initramfs -u

После ручного удаления файлов обязательно обновите initramfs (начальный образ файловой системы), чтобы изменения применились при следующей загрузке. Команда для этого варьируется: update-initramfs -u для Debian/Ubuntu и mkinitcpio -P для Arch Linux.

Очистка кэша пакетного менеджера также поможет освободить место и избежать случайной повторной установки старых версий. Команды sudo apt clean или sudo pacman -Sc удалят сохраненные архивы пакетов из локального хранилища.

Восстановление системы после удаления драйверов

После успешного удаления старых драйверов система может потребовать восстановления стандартного графического стека. Если вы удалили amdgpu-pro, система должна автоматически переключиться на открытый драйвер amdgpu, встроенный в ядро. Однако, иногда требуется явно переустановить пакеты Mesa и заголовочные файлы ядра.

Для Debian/Ubuntu выполните команду sudo apt install --reinstall xserver-xorg-video-amdgpu libgl1-mesa-dri, чтобы гарантировать наличие базовых компонентов. В Arch Linux аналогом будет sudo pacman -S mesa xf86-video-amdgpu. Это вернет систему в рабочее состояние с открытыми драйверами.

Если после удаления и перезагрузки вы видите черный экран или циклическую перезагрузку графической оболочки, попробуйте удалить файл конфигурации Xorg /etc/X11/xorg.conf, если он существует. Часто драйверы AMD создают этот файл с жесткими настройками, которые перестают работать после смены драйвера.

💡

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

Проверка работы нового состояния системы осуществляется через команду glxinfo | grep "OpenGL renderer". В выводе должно быть указано название вашей видеокарты AMD и версия драйвера Mesa или AMD Radeon. Отсутствие упоминания llvmpipe (программной эмуляции) свидетельствует об успешной работе аппаратного ускорения.

Частые ошибки и способы их решения

Одной из распространенных проблем является ошибка зависимостей (dependency hell), когда пакетный менеджер отказывается удалять драйвер, потому что он нужен другому системному компоненту. В таких случаях помогает использование флага --force-yes (с осторожностью) или ручное удаление конфликтующих пакетов. Однако, лучше сначала попробовать решить конфликт обновлением списка пакетов.

Другая частая ошибка — «сломанный» GRUB или inability to boot после удаления модулей ядра. Если обновление initramfs прошло с ошибками, система может не загрузиться. Решение кроется в загрузке с LiveUSB, монтировании корневого раздела и восстановлении initramfs извне, либо использовании режима восстановления (Recovery Mode) в меню загрузчика.

Также пользователи сталкиваются с тем, что после удаления проприетарного драйвера OpenCL перестают работать вычислительные задачи. Это нормально, так как проприетарный ROCm или OpenCL часто входят в состав amdgpu-pro. Для восстановления функционала необходимо отдельно установить открытую реализацию opencl-mesa или rusticl (для новых версий Mesa).

Что делать, если пропало разрешение экрана?

Если после удаления драйверов доступно только низкое разрешение (например, 800x600), проверьте, загружен ли модуль ядра amdgpu командой lsmod | grep amdgpu. Если модуль не загружен, проверьте dmesg на предмет ошибок firmware. Возможно, потребуется пакет linux-firmware.

Не игнорируйте логи системы. Файлы /var/log/Xorg.0.log и /var/log/syslog (или journalctl -b в systemd-системах) содержат детальную информацию о том, почему драйвер не загрузился или почему возник конфликт. Анализ этих логов — ключ к решению сложных проблем.

💡

Главный итог: Полное удаление драйверов AMD в Linux требует последовательности: остановка графической оболочки -> удаление пакетов -> очистка конфигов -> обновление initramfs -> переустановка базового стека Mesa.

Безопасно ли удалять драйвер amdgpu, если он встроен в ядро?

Драйвер amdgpu, встроенный в ядро Linux, удалить как обычный пакет нельзя, так как он является частью самого ядра. Однако можно запретить его загрузку через blacklist в modprobe или удалить модуль из файловой системы (что не рекомендуется). Обычно под удалением подразумевают удаление пользовательских библиотек (Mesa) и проприетарных надстроек.

Нужно ли переустанавливать систему после удаления драйверов AMD?

В 95% случаев переустановка системы не требуется. Грамотное использование пакетного менеджера и скриптов удаления позволяет вернуть систему в состояние «как после установки». Переустановка нужна только в случае критических ошибок пользователя, приведших к удалению системных библиотек ядра.

Как проверить, что проприетарный драйвер полностью удален?

Выполните команду dpkg -l | grep amdgpu-pro (для Debian/Ubuntu) или pacman -Q | grep amdgpu. Если вывод пуст или показывает только открытые пакеты, значит проприетарный софт удален. Также можно проверить наличие файлов в /opt/amdgpu-pro — эта папка должна отсутствовать.

Можно ли использовать утилиту AMD Cleanup Utility в Linux?

Нет, утилита AMD Cleanup Utility предназначена исключительно для операционных систем семейства Windows. В Linux аналогом служит скрипт amdgpu-pro-uninstall или ручное удаление через пакетный менеджер дистрибутива.