Kali Linux 2.0 с ядром 4.0 – Установка проприетарного драйвера NVIDIA – ускоренный видеодрайвер NVIDIA для Linux
@webware
- Инструкция применима к Kali Linux 2.0 с ядром 4.0 и Kali Linux 1.1.0 с ядром 3.18.
- Если у вас видеокарта от AMD, то обратитесь к статье “Установка проприетарного драйвера AMD ATI fglrx на Kali Linux 1.1.0a“.
- Если у вас Kali Linux установлена в виртуальной машине, то она никогда не увидит вашу видеокарту. Т.е. эта инструкция не применима для ОС в виртуальной машине.
Установка драйвера NVIDIA на Kali Linux 2.0
Эта инструкция объясняет, как установить проприетарный “NVIDIA Accelerated Linux Graphics Driver” или, проще говоря, драйвер NVIDIA на систему Kali Linux 2.0 с ядром 4.0. По умолчанию, Kali Linux устанавливает драйвер NVIDIA с открытым исходным кодом nouveau, который работает прекрасно, если вам нужно просто отображение. Наличие драйверов с открытым исходным кодом может быть подтверждено командой smod | grep nouveau. Но это не даёт вам фукнций 3D ускорения или GPU ускорения в приложениях, которые основываются на GPU ускорении (такие как CUDA и перебиральщики паролей с задействованием GPU). Это означает, вы ДОЛЖНЫ установить проприетарный NVIDIA драйвер.
Проприетарный «Ускоренный видеодрайвер NVIDIA для Linux» обеспечивает оптимизированное аппаратное ускорение приложений OpenGL через прямой рендеринг X сервера. Это только двоичный Xorg драйвер, требующий модуль Linux kernel для его использования. Первым шагом мы полностью обновим вашу систему Kali Linux и убедимся, что у вас установлены заголовки ядра (kernel headers).
Саму инструкцию я разделил на две части:
- Kali Linux 2.0 с ядром 4.0 – Установка проприетарного драйвера NVIDIA – ускоренный видеодрайвер NVIDIA для Linux (та, которую вы читаете прямо сейчас)
- Kali Linux 2.0 с ядром 4.0 – Установка ядра драйвера NVIDIA, модуля CUDA и Pyrit на Kali Linux – CUDA, Pyrit и Cpyrit-cuda (статья скоро появится)
Как уже было отмечено, сейчас вы используете первый мануал, который предназначен для установки драйвера NVIDIA на Kali Linux 2.0 с ядром 4.0. Многим пользователям этого будет вполне достаточно и вторая инструкция им не нужна. После её завершения, они смогут наслаждаться очень плавной графикой NVIDIA, установить несколько игр и наслаждаться фильмами.
Я включил в мануал столько деталей, насколько это возможно, есть в том числе и раздел для разрешения проблем. Мне будет интересно услышать ваши истории — делитесь результатами использования этой инструкции в комментариях, так мы будем выявлять новые проблемы.
Обратите внимание: Если вы уже пробовали установить NVIDIA драйвер с официального веб-сайта NVIDIA, тогда эта инструкция не будет работать, поскольку будет слишком много конфликтов. Начните со свежей установки, чтобы сберечь свои нервы!
Мои настройки
Итак, я установил себе Kali Linux v 2.0 работающую с ядром 4.0.
У меня есть карта NVIDIA GeForce 210 на этой машине, на которой работает 64-битная версия Kali Linux.
Какую графическую карту вы используете? Выполните следующие команды:
root@kali:~# uname -a Linux kali 3.18.0-kali1-amd64 #1 SMP Debian 3.18.3-1~kali4 (2015-01-22) x86_64 GNU/Linux root@kali:~# lsb_release -a No LSB modules are available. Distributor ID: Kali Description: Kali GNU/Linux 2.0 Release: 2.0 Codename: sana root@kali:~# lspci | grep VGA 01:00.0 VGA compatible controller: NVIDIA Corporation GT218 [GeForce 210] (rev a2)
Итак, всё в порядке? Хорошо, тогда двигаемся дальше и установим проприетарный графический драйвер NVIDIA, который мы должны устанавливать на каждый выпуск. Надо сказать, это становится весьма раздражающим…
Предварительные требования
Я установил всё в только что установленную Kali Linux 2.0 с ядром 4.0. Предположительно, у вас также, но этот мануал применим и к более старым версиям, которые были обновлены до последней. Вам нужно завершить следующее:
- Добавить официальные репозитории Kali Linux (если вы их не меняли, то пропускаете этот шаг).
- Update, upgrade и dist-upgrade Kali Linux.
Перезагрузиться
root@kali:~# apt-get update && apt-get upgrade -y && apt-get dist-upgrade -y root@kali:~# reboot
Это отправная точка для большинства моих инструкций. Я просто добавил одну простую строчку здесь — перезапуск системы. Почему?
Подумаем об этом. У вас установлена старая версия Kali Linux, и вы сделали update, upgrade и dist-upgrade для загрузки и установки последнего ядра и программ. Но вплоть до перезагрузки, вы, на самом деле, не загрузили новое ядро (возможно вы ещё на ядре 3.14 или чём-то вроде этого). Поэтому, единожды перезагрузив вашу Kali Linux, вы будете использовать ядро 3.18. Эта перезагрузка оградит вас от получения таких ошибок:
Couldn’t find any package whose name or description matched “linux-headers-3.12-kali1-amd64″
(или)
Couldn’t find any package whose name or description matched “linux-headers-3.14-kali1-amd64″
Переходим к установке.
Шаг 1: Установка Linux headers
Установите заголовки (headers) Linux, так как они будут нужны для сборки модулей драйвера NVIDIA.
root@kali:~# aptitude -r install linux-headers-$(uname -r)
Шаг 2: Установка ядра NVIDIA
Далее я установил ядро NVIDIA
root@kali:~# apt-get install nvidia-kernel-$(uname -r)
Шаг 3: Установка NVIDIA драйвера ядра DKMS
Всё почти готово. Сейчас вы можете установить новый NVIDIA driver nvidia-kernel-dkms, используя следующую команду:
root@kali:~# aptitude install nvidia-kernel-dkms
Во время установки появятся два всплывающих окна, где нужно выбрать ОК
Первое говорит нам о конфликте (конечно же есть конфликт, ведь у вас сейчас установлен nouveau, и его нужно заменить проприетарным драйвером NVIDIA). Поэтому мы ждём ОК в этом окне.
Второе всплывающее окно говорит вам, что у вас нет файла xorg.conf в каталоге /etc/X11/. Точно, и мы скоро это исправим. Нажимаем ОК.
Шаг 4: Установка драйвера приложения NVIDIA xconfig
Сейчас нам нужен файл xorg.conf в каталоге /etc/X11/. Самый простой способ получить его — это установка пакета nvidia-xconfig.
Используйте следующие команды:
root@kali:~# aptitude install nvidia-xconfig
Это установит пакет Xconfig, который сгенерирует файл xorg.conf в каталоге /etc/X11/.
Шаг 5: Создание конфигурационного файла сервера xorg
Сейчас, когда у нас есть установленный пакет nvidia-xconfig, наберите следующую команду, для генерации конфигурационного файла сервера Xorg.
root@kali:~# nvidia-xconfig
Это переименуюет существующий файл xorg.conf и создаст новый. Ну а если не было существующего файла xorg.conf, то будет просто создан новый.
Внимание: Если это делается на свежеустановленной Kali, вы увидите «WARNING: Unable to locate/open X configuration file».
Это хорошо, так как это означает, что ваша установка сейчас будет отлично работать.
Сейчас, как этого требует NVIDIA driver nvidia-kernel-dkms, перезагрузите вашу машину для завершения установки.
root@kali:~# reboot
Шаг 6: Добавление PCI шины в файл xorg.conf
Это дополнительный шаг. Это позволит xorg/NVIDIA использовать и обходить обычный процесс обнаружения железа для карт Display/NVIDIA и сделает систему немного быстрее. Это также помогает обходить следующую ошибку во время загрузки:
Waiting for /dev to be populated.
Давайте разберёмся с этим, всё работало прекрасно до того, как вы установили драйвер NVIDIA, и внезапно ваша система не может заполнить /dev (т. е. список устройств) во время загрузки. Поэтому мы вручную позволим системе знать, куда смотреть и какую PCI BUS использовать. Вы можете пропустить этот шаг, если у вас нет вышеприведённой ошибки/задержки.
Первое, мы подтверждаем, в которую PCI BUS вставлена моя GPU:
root@kali:~# lspci | grep VGA 01:00.0 VGA compatible controller: NVIDIA Corporation GT218 [GeForce 210] (rev a2)
Итак, это 01:00.0
Далее, мы делаем копию файла xorg.conf. Я добавил дату для следующей команды, чтобы вы получили имя файла вроде ‘2015-02-12+xorg.conf.prechange-busid”
root@kali:~# cp /etc/X11/xorg.conf /etc/X11/$(date +"%Y-%m-%d")-xorg.conf.prechange-busid
Теперь мы можем редактировать файл xorg.conf. Используйте ваш любимый редактор для этого. Я использовал здесь vi.
root@kali:~# vi /etc/X11/xorg.conf
(или)
root@kali:~# leafpad /etc/X11/xorg.conf
В разделе Device, вы увидите следующее:
Section "Device"
Identifier "Device0"
Driver "nvidia"
VendorName "NVIDIA Corporation"
EndSection
Измените идентификатор на DiscreteNvidia
Добавьте BusID (моя была 01:00.0, у вас может быть другая, в зависимости от того, к какому порту компьютерной шины подключено). После изменений, секция Device в вашем файле xorg.conf должна выгладить примерно так:
Section "Device"
Identifier "DiscreteNvidia"
Driver "nvidia"
VendorName "NVIDIA Corporation"
BusID "PCI:01:00:0"
EndSection
Сохраните xorg.conf file и перезагрузитесь.
root@kali:~# reboot
Шаг 7: Подтверждение вашей установки
На этом этапе у вас должна быть возможность войти в систему в режиме графического пользовательского интерфейса (GUI). Если вы не можете, следуйте в раздел разрешения проблем, который размещён внизу данной статьи. Как всегда, нам нужно проверить, всё ли прошло так, как ожидалось.
Шаг 7.а: Проверка модуля GLX
Первое, проверим, использует ли система модуль glx.
root@kali:~# glxinfo | grep -i "direct rendering"
Команда должна вывести “direct rendering: Yes”
Если у вас нет glxinfo, то сначала вам нужно установить пакет mesa-utils, затем снова набрать команду выше и проверить вывод
root@kali:~# aptitude install mesa-utils
Шаг 7.б: Проверка драйвера модуля NVIDIA
Проверьте, загружен ли модуль NVIDIA.
root@kali:~# lsmod | grep nvidia
Если будет выведено вроде nvidia 10512020 28 или что-то подобное (номера могут быть различными в вашей системе), значит NVIDIA модуль загружен.
Шаг 7.в: Проверка открытых драйверов для NVIDIA – модуля nouveau
Просто для уверенности, что модуль nouveau, который является версией драйвера NVIDIA с открытым исходным, кодом НЕ загружен, наберите следующую комманду
root@kali:~# lsmod | grep nouveau
Это НЕ должно выводить что-либо. Если появилась надпись, значит что-то не так.
Step 7.г: Подтверждаем, был ли опен-сорсный драйвер NVIDIA nouveau добавлен в чёрный список
Мне нравится этот новый драйвер NVIDIA. По умолчанию, он добавляет в чёрный список nouveau. Это означает, что для нас меньше работы. Вы можете подтвердить это проверим файлы в следующих директориях:
root@kali:~# cat /etc/modprobe.d/nvidia.conf root@kali:~# cat /etc/modprobe.d/nvidia-blacklists-nouveau.conf root@kali:~# cat /etc/modprobe.d/nvidia-kernel-common.conf
Решение проблем
Вы можете получить чёрный экран после установки драйвера NVIDIA. Последующее — это опции для исправления этой ситуации:
Решение проблем шаг А: Исправление чёрного экрана с проблемами с курсором
Просто нажмите CTRL + ALT + F1 и залогиньтесь. Наберите следующее
root@kali:~# nvidia-xconfig root@kali:~# reboot
Должна появится возможность войти с использованием GDM3 GUI.
Решение проблем шаг Б: Удалите файл xorg.conf
Нажмите CTRL + ALT + F1 и войдите. Наберите следующее
root@kali:~# rm /etc/X11/xorg.conf root@kali:~# reboot
После перезагрузки должна появиться возможность войти с использованием GDM3 GUI.
Решение проблем шаг В: удаление драйвера NVIDIA
Нажмите CTRL + ALT + F1 и войдите. Наберите следующее
root@kali:~# apt-get remove nvidia-kernel-dkms root@kali:~# reboot
После перезагрузки должна появиться возможность войти с использованием GDM3 GUI.
Заключение
Подошла к концу моя общая инструкция о том, как установить проприетарный драйвер NVIDIA на Kali Linux 2.0 с ядром 4.0.
Пользователи NVIDIA Optimus, используйте инструкцию «Установка Nvidia + Bumblebee + CUDA для компьютеров с Optimus»
Не смешивайте советы из этих двух инструкций. Вы всё сломаете и придётся заново переустанавливать.
Для обычных пользователей инструкция здесь заканчивается. Если вы хотите запускать приложения, которые используют NVIDIA Kernel Module CUDA, Pyrit и Cpyrit для обработки в GPU, тогда вам нужно установить драйверы CUDA, удалить официальный Pyrit и установить Cpyrit. Узнать, поддерживает ли ваша карта CUDA, вы можете из опфициальной страницы от NVIDIA
Следующий мануал покажет, как установить ядро драйвера NVIDIA, модуль CUDA и Pyrit на Kali Linux — CUDA, pyrit и cpyrit (ждите, скоро будет).
Спасибо за чтение. Пожалуйста, делитесь ссылками на данную статью.