Полное руководство: Установка драйверов видеокарты в Kali Linux

Система Kali Linux часто воспринимается как инструмент исключительно для пентестинга и кибербезопасности, но её стабильность напрямую зависит от корректной работы аппаратного обеспечения. Неправильно настроенный графический стек может привести к частым зависаниям интерфейса, невозможности запустить графические утилиты анализа или банальному отсутствию аппаратного ускорения, что критично при работе с ресурсоемкими инструментами.

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

В отличие от Windows, где драйверы устанавливаются через исполняемые файлы .exe, в Linux процесс требует работы с терминалом, управления пакетами и иногда ручной компиляции модулей ядра. Понимание различий между открытыми (open-source) и проприетарными драйверами позволит вам выбрать оптимальный вариант для вашей конкретной видеокарты и задач.

Определение модели графического адаптера и текущих драйверов

Первым и самым важным шагом является точная идентификация вашего графического устройства. Без знания модели видеокарты невозможно подобрать корректный пакет программного обеспечения. В Kali Linux для этого используется стандартная утилита lspci, которая выводит список всех устройств PCI-шины.

Откройте терминал и введите команду ниже, чтобы увидеть список всех графических контроллеров в системе. Обратите внимание на строку, содержащую название производителя (NVIDIA, AMD или Intel) и модель чипа.

lspci | grep -i vga

Если у вас установлено несколько видеокарт (например, встроенная графика Intel и дискретная NVIDIA), вы увидите несколько строк. Для каждого из них может потребоваться отдельный драйвер. Также полезно узнать текущую версию ядра, так как драйверы должны быть скомпилированы именно под вашу версию.

uname -r

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

sudo lshw -C display
  • 🔍 Используйте lspci -v для получения детальной информации о драйвере, который в данный момент используется устройством (строка Kernel driver in use).
  • 🔍 Если вы видите llvmpipe в выводе, значит, графическое ускорение отключено и система использует программную эмуляцию.
  • 🔍 Запишите точное название чипа, так как оно понадобится при выборе репозиториев на официальном сайте производителя.
⚠️ Внимание: Если в выводе команды lshw вы видите nouveau для карты NVIDIA, это означает, что загружен открытый драйвер, который часто конфликтует с официальными проприетарными драйверами при попытке установки.

Подготовка репозиториев и обновление системы

Прежде чем приступать к установке любых драйверов, необходимо убедиться, что ваша система обновлена и имеет доступ к необходимым репозиториям. Kali Linux по умолчанию использует стабильные репозитории, но для получения новых драйверов часто требуется включение репозитория non-free или contrib, где хранятся проприетарное ПО.

Откройте файл списка репозиториев /etc/apt/sources.list с помощью текстового редактора, например nano или vim. Убедитесь, что к каждой строке, заканчивающейся на main, добавлены флаги non-free и contrib.

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

sudo apt update && sudo apt full-upgrade -y

Также крайне важно установить заголовки ядра (kernel headers) и инструменты разработки (build-essential). Без них система не сможет скомпилировать модуль драйвера для вашей текущей версии ядра, что приведет к ошибке при загрузке. Эти пакеты являются фундаментом для сборки любого внешнего модуля ядра.

sudo apt install -y linux-headers-$(uname -r) build-essential dkms
  • 🛠 Убедитесь, что версия linux-headers точно совпадает с версией ядра, указанной в выводе uname -r.
  • 🛠 Если вы используете ядро kali-rolling, инсталляция драйверов может занять больше времени из-за частых обновлений.
  • 🛠 Не пропускайте установку пакета dkms, так как он автоматически пересобирает драйвер при обновлении ядра.
📊 Какую видеокарту вы используете?
NVIDIA
AMD Radeon
Intel Integrated
Другая

Установка драйверов для видеокарт NVIDIA

Работа с картами NVIDIA в Linux традиционно считается наиболее сложной из-за необходимости ручного вмешательства в конфигурацию Xorg и конфликта с открытым драйвером nouveau. В современных версиях Kali Linux процесс был значительно упрощен благодаря использованию мета-пакетов, которые автоматически подстраиваются под версию ядра.

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

Для автоматической установки драйвера, подходящего под вашу карту, используйте утилиту apt с мета-пакетом nvidia-driver. Система сама определит, какая версия драйвера требуется: 470, 510, 525 или новее, в зависимости от серии вашей видеокарты (GTX 10xx, RTX 20xx, 30xx, 40xx).

sudo apt install -y nvidia-driver firmware-misc-nonfree

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

⚠️ Внимание: После установки драйверов NVIDIA система может перестать загружать графический интерфейс. Если это произошло, загрузитесь в режим восстановления (recovery mode) и выполните команду nvidia-xconfig для генерации корректного файла конфигурации.

☑️ Подготовка к установке драйвера NVIDIA

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

Настройка драйверов для карт AMD и Intel

Ситуация с картами AMD и Intel в Linux гораздо проще, так как для них существуют отличные открытые драйверы (Mesa), которые встроены непосредственно в ядро Linux и пакет графического сервера. В большинстве случаев вам даже не нужно ничего устанавливать отдельно, достаточно лишь обновить систему.

Тем не менее, для современных карт AMD серии Radeon и RX рекомендуется установить пакет firmware-amd-graphics, который содержит необходимые микрокоды для корректной работы чипов. Для карт Intel обычно достаточно стандартных пакетов xserver-xorg-video-intel (хотя для новых карт ядро предпочитает драйвер modesetting, встроенный в Xorg).

sudo apt install -y firmware-amd-graphics mesa-utils

После установки полезно проверить, что драйверы действительно загружены и работают. Используйте утилиту clinfo для проверки поддержки OpenCL или glxinfo для проверки OpenGL. Это подтвердит, что аппаратное ускорение активировано и графический стек функционирует корректно.

glxinfo | grep "OpenGL renderer"

Важно отметить, что для карт AMD с архитектурой RDNA и RDNA2 (серии RX 6000, 7000) может потребоваться более новая версия Mesa, чем та, что идет в базовом репозитории Kali. В таких случаях следует рассмотреть возможность добавления PPA-подобных репозиториев или обновления Mesa вручную, чтобы получить полную поддержку.

  • 💡 Драйверы AMD amdgpu поддерживают большинство современных карт "из коробки" без дополнительной компиляции.
  • 💡 Утилита radeontop позволяет в реальном времени мониторить загрузку GPU и температуру.
  • 💡 Для карт Intel не рекомендуется использовать драйвер xf86-video-intel на новых процессорах, так как он может работать медленнее, чем встроенный в Xorg modesetting.
Производитель Тип драйвера Основной пакет Сложность настройки
NVIDIA Проприетарный nvidia-driver Высокая
AMD (Radeon) Открытый firmware-amd-graphics Низкая
Intel Открытый mesa-utils Минимальная
VIA/S3 Открытый xserver-xorg-video-savage Средняя
Что делать, если драйвер не загружается?

Попробуйте добавить параметр ядра nomodeset при загрузке в GRUB, это временно отключит графический драйвер и позволит зайти в систему для отладки.

Решение проблем и откат изменений

Иногда после установки драйверов система перестает загружать графический интерфейс и попадает в текстовый режим (TTY) или бесконечный цикл входа в систему. Это обычно происходит из-за конфликта версий модулей ядра или неправильной конфигурации Xorg. В таком случае не нужно паниковать и переустанавливать систему.

Войдите в систему через терминал (Ctrl+Alt+F3) и попытайтесь удалить установленные драйверы, чтобы вернуть систему в рабочее состояние с базовыми драйверами. Для NVIDIA это делается через команду purge, которая удалит все пакеты, начинающиеся с nvidia-.

sudo apt purge 'nvidia' && sudo apt autoremove

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

sudo update-initramfs -u -k all && sudo reboot

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

⚠️ Внимание: Если вы используете Secure Boot в BIOS/UEFI, установка проприетарных драйверов может быть заблокирована, так как они не подписаны ключом вашего провайдера. Отключите Secure Boot в настройках BIOS перед началом установки.

Проверка работоспособности и оптимизация

После успешной установки и перезагрузки необходимо убедиться, что видеокарта работает в штатном режиме. Для этого запустите утилиту glxgears, которая является классическим тестом производительности OpenGL. Она откроет окно с вращающимися шестеренками и покажет количество кадров в секунду (FPS).

Высокий FPS (обычно более 1000 на современных картах) и плавное вращение указывают на то, что аппаратное ускорение включено. Если FPS низкий или шестеренки тормозят, возможно, драйвер не активирован корректно и система использует программный рендеринг CPU.

glxgears

Для более детальной информации о состоянии драйвера используйте команду nvidia-smi (для карт NVIDIA) или radeontop (для карт AMD). Эти утилиты покажут температуру, загрузку GPU, использование видеопамяти и версию загруженного драйвера в реальном времени.

Также стоит проверить конфигурационный файл X11, если у вас возникли проблемы с разрешением экрана или ориентацией. Файл /etc/X11/xorg.conf может быть создан автоматически или вручную. Иногда удаление этого файла заставляет систему заново сканировать оборудование и применять оптимальные настройки по умолчанию.

Для профессионального использования Kali Linux, особенно при работе с инструментами визуализации или анализа, важно убедиться, что драйвер поддерживает необходимые API (OpenGL 4.x, OpenCL). Это гарантирует, что сложные скрипты и утилиты будут выполняться корректно и с максимальной скоростью.

Как узнать версию установленного драйвера NVIDIA?

Введите команду nvidia-smi в терминале. В верхней части вывода будет указана версия драйвера и CUDA Toolkit.

Можно ли использовать драйверы с официального сайта NVIDIA в Kali?

Технически можно, но не рекомендуется. Драйверы из репозиториев Kali адаптированы под текущее ядро и имеют меньше конфликтов. Ручная установка .run файлов часто ломает обновления системы.

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

Попробуйте загрузиться в режиме восстановления (Recovery Mode) и выбрать опцию "Drop to root shell prompt", затем удалите пакеты драйверов или смените версию ядра в GRUB.

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

В виртуальных машинах (VMware, VirtualBox) используются специальные гостевые дополнения (Guest Additions), а не драйверы физической карты. Убедитесь, что вы установили их внутри гостевой ОС.