Как установить драйвер карты debian. Установка свежего драйвера NVIDIA

Давным давно, когда я начал пользоваться Linux, я перепробовал несколько дистрибутивов и остановился на Debian. Так как игры я особо не играю, GNOME-вский десктоп мне сразу понравился своей простотой и удобностью, и работала система шустрее Windows. После установки системы все устройства определиль, кроме видеокарты - на тот момент у меня была ATI Radeon 9800 SE.

Установка драйвера как в Windows потерпела фиаско сразу после того как я с удивлением обнаружил, что в интерфейсе к установщику нет Debian, а если выбирать Ubuntu - то все умирает.

Тогда я потратил около недели на установку 8.6 версии. С тех пор я поменял компьютер, однако я поклонник AMD и следующей видеокартой которую я взял была - Radeon HD4850.

Приступая к работе

Во первый для установки понадобится сам драйвер . На данный момент последняя версия - 10.5. После того как он будет загружен распаковываем содержимое в каталог fglrx:

./ati-driver-installer-10-5-x86.x86_64.run --extract fglrx

Примечание: драйвер с пост фиксом «x86.x86_64» подходит как для 32-х так и для 64-х битных систем.

Во-первых необходимо изменить скрипт ati-packager.sh. Для lenny :

Cp ./ati-packager.sh
cat ./ati-packager.sh | sed -e "s/X_DIR=x710; X_NAME=lenny/X_DIR=x690; X_NAME=lenny/" > ./fglrx/packages/Debian/ati-packager.sh

Для squeeze :


cat ./ati-packager.sh | sed -e "s/X_DIR=x710; X_NAME=lenny/X_DIR=x750; X_NAME=lenny/" > ./fglrx/packages/Debian/ati-packager.sh

Таким образом указание на несуществующую в дистрибутиве версию X-ов будет изменено на версию поддерживаемую системой.

Во-вторых необходимо изменить скрипт rules, изменения одинаковы для lenny и squeeze :

Cp ./Desktop/fglrx/packages/Debian/dists/lenny/rules rules
cat ./rules | sed -e "s/^\tdh_shlibdeps$/#\tdh_shlibdeps/" > ./fglrx/packages/Debian/dists/lenny/rules

Примечание: без этого при сборке пакетов будет вылететь ошибка о том что нет библиотеки libatiuki.so.1. Есть мнение , что если создать ссылку на эту библиотеку то все соберется без проблем. У меня это не сработало. Также есть мнение что изменение переменной окружения LD_LIBRARY_PATH может помочь, однако у меня это также не работало.

Теперь необходимо скопировать необходимую библиотеку в /usr/lib/:

Для 32-х бит:

Cp ./fglrx/arch/x86/usr/lib/libatiuki.so.1.0 /usr/lib/libatiuki.so.1

Для 64-х бит:

Cp ./fglrx/arch/x86_64/usr/lib64/libatiuki.so.1.0 /usr/lib/libatiuki.so.1

Подготовка к сборке закончена.

Сборка пакетов

Теперь необходимо установить следующие пакеты:

Aptitude install debhelper module-assistant

Module-assistant prepare

Также для последних драйверов необходим libqtcore4. Далее сборка пакетов должна пройти без ошибок:

./ati-installer.sh 10.5 --buildpkg Debian/lenny

После чего должны появиться пакеты:

  • fglrx-amdcccle
  • fglrx-driver
  • fglrx-driver-dev
  • fglrx-kernel-src
Установить их можно так:

Dpkg --install -force-all *.deb

Примечание: также есть утилита gdebi, позволяющая поставить пакеты с зависимостями. Я по привычке пользуюсь dpkg.

Сборка модуля

Собирается модуль в одну команду:

Module-assistant auto-install fglrx

После перезагрузки имеем:

Заключение

Писал по памяти, так как последний раз ставил Debian пару месяцев назад на приобретенный ноутбук ASUS K40AB. Описанным способом драйвера поставились на ура, недавнее обновление свободного драйвера radeonhd вызвало конфликт, который был устранен за пару минут. Проверял установку на Debian lenny и squeeze на 32-х и 64-х битных системах.

P.S.: Писал по памяти так что возможны ошибки, однако суть такая.

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

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

Лишь напомню, что в меню Software & Updates у вас должны быть отмеченными пункты, где в скобках указано «main», «contrib» и «non-free». Без этих пунктов у вас не будут доступны репозитории для установки данного драйвера.

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

первое, что нужно сделать — обновить кэш apt. Для этого выполните в терминале команду:

И снова же уточнение для поклонников ОС Debian. Изначально у вас может быть не установлена утилита sudo, если это так — опять же рекомендую прочесть предыдущую публикацию, ссылку на которую я оставлял выше. Там я рассказывал в том числе и об этом.

Теперь осталось «самое сложное» — установить графический драйвер на свой компьютер. Для этого вводим команду:

sudo apt-get install nvidia-driver

После этого вам останется только согласиться с тем, что вы действительно хотите установить всё это «добро» и ждать окончания установки. Но скажу честно, что лично я ранее устанавливал драйвер немного по другому. Это сейчас, для написания статьи заново перечитал форумы и увидел ещё более простой способ. Конечно, перед тем, как писать — он был опробован на виртуальной машине (не хочется рабочую систему трогать) и он сработал без проблем. Но на всякий случай, для очистки совести, вот вам ещё один вариант, который я использовал, когда устанавливал драйвер на свой рабочий компьютер.

Для начала (если вы пробовали способ выше) перезагрузите компьютер и проверьте драйвер, на 99% он у вас уже будет установлен и рабочий, дальнейшие действия не требуются и дальнейший текст можете просто игнорировать, но если нет — вот вам альтернативный метод через установку nvidia-detect.

Установите nvidia-detect

sudo apt-get install nvidia-detect

Теперь запустите

Команда nvidia-detect используется для поиска драйвера Nvidia для вашей видеокарты. В итоге вы увидите что то вроди вот этого:

Detected NVIDIA GPUs:
00:0d.0 VGA compatible controller : NVIDIA Corporation C61 (rev a2)

Checking card: NVIDIA Corporation C61 (rev a2)
Your card is only supported up to the 304 legacy drivers series.
It is recommended to install the
nvidia-legacy-304xx-driver

Утилиту, с помощью которой можно давать права администратора программам, при необходимости (обновление системы, установка/удаление программ, административная работа и т.д):

su
ваш пароль root
apt install sudo
adduser имя пользователя sudo

Подключим дополнительные репозитории программ:

sudo nano /etc/apt/sources.list

В каждой строчке, после слова main, пишем contrib non-free.

contrib - свободное ПО, которое имеет зависимость от несвободного.
non-free - несвободное ПО и ПО ограниченное патентами. Например проприетарные драйверы.

Подключим репозиторий Backports . В нём находятся свежие версии некоторого ПО (например ядер, драйверов и многого другого), которое достаточно стабильное для Debian Stable , но не успевшее попасть в финальный выпуск. Пакеты в данном репозитории переносятся из тестовой ветки Debian и адаптируются для использования в стабильной, без нарушения нормальной работы системы.

deb http://mirror.yandex.ru/debian jessie-backports main contrib non-free
deb-src http://mirror.yandex.ru/debian jessie-backports main contrib non-free

Если вы хотите всегда иметь самую свежую версию браузера Iceweasel , подключите репозиторий:
deb http://mozilla.debian.net/ jessie-backports iceweasel-release

Пакеты из репозитория backports устанавливаются командой:

sudo apt install -t jessie-backports имя пакета

Когда все нужные репозитории прописаны, сохраняем (Ctrl+O, Enter) и выходим из редактора (Ctrl+X).

Теперь осталось обновить список пакетов. Если вы подключили репозиторий со свежим Iceweasel, то сначала установите ключ репозитория:

sudo apt install pkg-mozilla-archive-keyring

И уже теперь обновляем список пакетов:

sudo apt-get update

Теперь установим драйвера, а также различные мультимедиа пакеты, расширяющие функционал системы. Начнём с драйверов:

sudo apt install firmware-linux-free firmware-linux-nonfree

Для обладателей видеокарт AMD Radeon , рекомендуется использовать свободный драйвер (модуль которого ставится с пактом firmware-linux-free ), так как в отличии от фирменного проприетарного, он обладает гораздо более высокой стабильностью, а по производительности не сильно уступает проприетарному. Плюс поддерживает ряд фич, недоступных проприетарному (о них в следующих статьях). Однако, если вы будете играть в требовательные игры, или использовать 3D редакторы - придётся установить проприетарный. ВНИМАНИЕ : драйвер Catalyst 14.9 , из-за отсутствия поддержки EGL , не работает в графическом окружении GNOME . Если вы используете GNOME , откажитесь от установки проприетарного драйвера, а если он вам необходим - смените графическое окружение. Коих довольно много в Debian.

sudo apt install linux-headers-$(uname -r|sed "s,[^-]*-[^-]*-,") fglrx-driver

После установки, выполните sudo aticonfig --initial Эта команда создаст конфигурационный файл xorg.conf . Альтернативный, ручной вариант:

sudo mkdir /etc/X11/xorg.conf.d
sudo echo -e "Section "Device"\n\tIdentifier "My GPU"\n\tDriver "fglrx"\nEndSection" > /etc/X11/xorg.conf.d/20-fglrx.conf


Для обладателей видеокарт Nvidia . Здесь ситуация обратная. Свободный драйвер сильно ограничен по функциональности и производительности (хотя в последних версиях он стал весьма неплох, и если вам не нужны игры и крутые графические эффекты - можете смело его использовать). Напротив, проприетарный драйвер обладает всеми достоинствами, поддержкой всех фирменных технологий Nvidia и замечательной производительностью в играх (которая сравнима с Windows , а порой и сильно превышает её). Устанавливаем:

sudo apt install nvidia-glx nvidia-kernel-`uname -r` nvidia-kernel-dkms nvidia-settings nvidia-xconfig

После установки выполните sudo nvidia-xconfig и перезагрузитесь.

Далее рекомендуется поставить драйверы на сетевую карту (особенно если это wi-fi ). Для карт на чипах Realtek , это пакет firmware-realtek , для Ralink - firmware-ralink . Узнать модель вашей сетевой карты можно командой lspci (искать строки Ethernet и/или Network ).

Теперь установим расширенную поддержку мультимедиа. Копируем следующую монструозную команду:

sudo apt install flashplugin-nonfree ttf-mscorefonts-installer freepats gstreamer0.10-plugins-base gstreamer0.10-plugins-good gstreamer1.0-fluendo-mp3 gstreamer0.10-fluendo-mp3 gstreamer0.10-plugins-ugly gstreamer0.10-pulseaudio gstreamer1.0-pulseaudio unrar gstreamer1.0-plugins-base gstreamer1.0-plugins-good gstreamer1.0-plugins-ugly cabextract gstreamer1.0-libav

Flash Player, шрифты Microsoft TTF (многие сайты без них выглядят вырвиглазно), плагины для GStreamer, улучшенная поддержка mp3, h.264 и распаковщик RAR-архивов. Всё это мы только что установили:)

Кстати о шрифтах. Вы наверно заметили, что изкоробочные шрифты в Debian выглядят не очень (хотя конечно дело вкуса). Я использую шрифт Droid Sans , который довольно хорошо выглядит и не напрягает глаза. Вы же можете выбрать любой. Но хороший шрифт - половина дела. Нужно правильно настроить его сглаживание. Со шрифтами кроме Droid Sans, следующие настройки я не проверял, так что будьте внимательны (по умолчанию в Debian используется шрифт DejaVu Sans ). Ну ладно, ближе к делу. В вашей домашней директории, включите показ скрытых файлов, и зайдите в директорию .config/fontconfig . В ней создайте файл fonts.conf со следующим содержимым:






true




hintslight




rgb




true




lcddefault



Далее в самой домашней директории, создайте файл .Xresources со следующим содержимым:
Xft.autohint: 0
Xft.lcdfilter: lcddefault
Xft.hintstyle: hintslight
Xft.hinting: 1
Xft.antialias: 1
Xft.rgba: rgb
Xft.dpi: 84

Обратите внимание на строку Xft.dpi: 84 . Здесь указан DPI (количество точек на дюйм) данного монитора. У меня это 84. Узнать ваше значение можно командой xdpyinfo | grep resolution

Далее набираем sudo dpkg-reconfigure fontconfig-config На первой вкладке выбираем Autohinter , на второй "Всегда" , на третьей "Нет" Применяем:
sudo dpkg-reconfigure fontconfig

Теперь выполните команду xrdb -merge ~/.Xresources и перезайдите в систему. Шрифт станет значительно приятнее.

Настроим использование раздела подкачки - параметр swappiness . Значение swappiness, варьирующееся от 0 до 100, является степенью, при которой система поддерживает анонимную память или кеш страниц. Высокое значение повышает производительность файловой системы, при агрессивной подкачке наименее активных процессов. Низкое значение позволяет избежать подкачки процессов из памяти, что обычно снижает время ожидания за счет производительности ввода-вывода. Значение по умолчанию равно 60. Открываем файл:

sudo nano /etc/sysctl.conf

И в конец пишем vm.swappiness = 10

Сохраняем и применяем: sudo sysctl -p

Это значение рекомендуется для повышения производительности, когда в системе достаточно оперативной памяти. Внимание: при значении vm.swappiness = 0 подкачка будет полностью отключена, что может привести к запуску OOM Killer при переполнении оперативной памяти.

Если вы используете графическую среду KDE , то столкнётесь с такой неприятностью, когда некоторые приложения будут выбиваться из системного оформления, и выглядеть как пришельцы из Windows 95.
Дело в том, что программы, написанные на GTK+ (а не на Qt , как KDE), не могут использовать системное оформление без соответствующего движка темы. Поэтому эти движки нужно установить:

sudo apt install gtk2-engines-oxygen gtk3-engines-oxygen kde-config-gtk-style (если вы используете в качестве оформления движок QtCurve , вместо oxygen, то установите ещё gtk2-engines-qtcurve )

Теперь всё как надо.


Прочие полезные приложения:

GDebi (установщик deb-пакетов): sudo apt install gdebi (для KDE gdebi-kde )

Synaptic (менеджер пакетов): sudo apt install synaptic apt-xapian-index (в KDE по умолчанию есть Apper , установка Synaptic нежелательна).

p7zip (7z архиватор): sudo apt install p7zip

systemdadm (графический фронтенд для системного менеджера systemd ): sudo apt install systemd-ui

Gparted (редактор дисковых разделов): sudo apt install gparted (для KDE рекомендуется partitionmanager ): sudo apt install partitionmanager

NTFS-config (утилита для работы с дисками в файловой системе NTFS): sudo apt install ntfs-config

Примечание:

Файлы fonts.conf и. из этой статьи.
Скрипт для установки мультимедия пакетов и автоматического включения contrib и non-free.
Неофициальный deb-пакет для установки всех мультимедиа пакетов. Только x86-64.

Введение

Видеокарты NVIDIA уже давно являются фаворитом для геймеров Linux. Последние несколько лет их проприетарные драйверы очень хорошо поддерживались. Драйверы с открытым исходным кодом Nouveau были гораздо менее надежными, в основном из-за отказа NVIDIA открыть исходный код для сообщества. В любом случае, драйверы доступны для установки на Debian Stretch.

Как правило, когда вы устанавливаете Debian Stretch, также будут установлены драйверы Nouveau. Прежде чем продолжить, вы должны убедиться, что ваша видеокарта поддерживает Nouveau. Вы можете проверить поддержку своей карты на странице https://nouveau.freedesktop.org/wiki/FeatureMatrix/ .

Установка

Первым шагом является включение Contrib и несвободных репозиториев в Debian. Откройте файл /etc/apt/sources.list в своем любимом текстовом редакторе с правами root и добавьте Contrib non-free в конец каждой строки после main. Сохранитесь и выйдите из редактора.


Теперь запустите обновление системы

# apt update && apt upgrade

Используйте apt вместо apt-get. Это более новая версия и она лучше справляется с конфликтами.

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

На момент публикации этой статьи последней версией является 3.9, и доступен релиз версии 4.0. Минимальной версией для установки является 3.9.

# apt install llvm-3.9 clang-3.9

Теперь перезагрузите компьютер и проверьте работу вашей видеокарты. Проприетарные драйверы действительно раскрывают весь потенциал карт NVIDIA. Они могут подходить не для всех, но если вас не нервирует использование закрытого программного обеспечения, и вы просто хотите, чтобы ваши игры запускались, это отличный вариант.

Начните с включения как contrib, так и несвободных репозиториев, а также поддержки i386. Чтобы включить их, откройте /etc/apt/sources.list в вашем текстовом редакторе с правами root, и добавьте Contrib non-free после main в каждую строку репозитория Debian.

Теперь включите i386 с помощью следующей команды:

# dpkg --add-architecture i386

После запуска команды вы можете установить как несвободную прошивку, так и необходимые пакеты драйверов NVIDIA.

# apt install firmware-linux nvidia-driver nvidia-settings nvidia-xconfig

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

# nvidia-xconfig

Теперь вы можете перезагрузить компьютер и наслаждаться новыми драйверами.

Инсталлятор Nvidia

Этот метод обычно не рекомендуется, поскольку он может вызвать проблемы. Тем не менее, он действительно работает, и это может быть единственный способ установить последние драйверы NVIDIA. Как и при установке пакета Debian, вам необходимо подключить несвободный репозитарий вместе с поддержкой i386.

# apt install firmware-linux build-essential gcc-multilib

# apt build-dep linux

Теперь вы можете перейти на https://www.nvidia.com/Download/Find.aspx?lang=en-us , заполнить форму системной информацией и загрузить свои драйверы. Драйверы будут представлены в виде файла.run. Этот файл необходимо запустить как root при отключенном X-сервером.

Самый простой способ сделать это в Debian - остановить менеджер дисплеев с помощью Systemd.

# systemctl stop gdm3

Данная команда предполагает, что вы используете менеджер GDM. В противном случае, просто замените его на тот, который используете вы. Сразу же после выполнения этой команды вы попадете в терминал. Войдите в систему как root и перейдите в каталог, в который загружен установщик драйверов.

Убедитесь, что он исполняемый.

# cd /home/user/Downloads

# chmod +x NVIDIA-Linux-x86_64-378.09.run

В этой статье используется текущий номер версии бета-версии, поэтому обязательно используйте фактическое имя загруженного вами файла. Теперь вы можете запустить установщик.

# ./NVIDIA-Linux-x86_64-378.09.run

Теперь вы получите серию подсказок при запуске установщика. При появлении соответствующего запроса рекомендуется включить поддержку 32-разрядной версии. Также установщик попросит вас создать конфигурацию Xorg. Согласитесь, или запустите nvidia-xconfig после завершения установки. По завершении установки перезагрузите систему.

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


  • подключаем ветку non-free

  • Скачиваем драйвер для своей видеокарты, в опциях поиска укажите Linux 32-bit/Linux 64-bit в зависимости от разрядности вашей системы


    Устанавливаем необходимые для последующей сборки пакеты:


    # aptitude install linux-headers-`uname -r` binutils pkg-config build-essential xserver-xorg-dev
  • Переключаемся на виртуальную консоль (уходим из оболочки), для этого нажмите сочетание клаишь Ctrl+Alt+F1, залогиньтесь под рутом и наберите команду


    # killall gdm

  • Перейдите в папку, в которой вы сохранили драйвер и наберите команду (вместо звездочки лучше дописать версию драйвера):


    # sh ./NVIDIA-Linux-*.run

  • Перезагружаем компьютер:


    # reboot

Установка драйвера NVIDIA из репозитариев Debian


  • Необходимо проверить версию драйвера для вашей видеокарты на официальним сайте NVidia или ищем в описаниях пакетов поддерживаемые устройства.

  • Необходимо подключить репозитарии non-free и contrib Debian в Ваш /etc/apt/sources.list


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


    Для того чтобы вся система не превратилась в unstable создайте в каталоге /etc/apt/apt.conf.d/ файл с именем 00release со следующим содержимым:


APT::Default-Release "testing";

(вместо testing можно подставить тот дистрибутив, которым Вы постоянно пользуетесь)

# apt-get install module-assistant # apt-get install -t sid nvidia-kernel-source

  • Затем произведите собственно сборку драйвера для текущего ядра:

# module-assistant a-i nvidia-kernel-source

  • Вариант для любого установленного дистрибутивного ядра:

# module-assistant -l 2.6.32-4-openvz-amd64 a-i nvidia-kernel-source

    После этого обновите пакет nvidia-glx :


# apt-get install -t sid nvidia-glx

Установка закончена, можно перегрузиться, либо перегрузить драйвер. Для перегрузки драйвера перейдите в консоль (Alt-Ctrl-F1 ), затем:


    Остановите *dm (выберите тот *dm , который у Вас установлен):


# invoke-rc.d xdm stop # invoke-rc.d gdm stop # invoke-rc.d kdm stop

    Выгрузите старый модуль nvidia :


# rmmod nvidia

    Запустите *dm (выберите тот *dm , который у Вас установлен):


# invoke-rc.d xdm start # invoke-rc.d gdm start # invoke-rc.d kdm start

Установка драйвера NVIDIA из репозитариев Debian используя dkms

# apt-get install nvidia-glx nvidia-kernel-`uname -r` nvidia-kernel-dkms nvidia-settings nvidia-xconfig

После этого выполните


# nvidia-xconfig

  • Модуль ядра будет собран и будет автоматически пересобираться при установке или удалении новых ядер в системе.

Принудительно(если например не работает) можно его заставить пересобраться так:


# dpkg-reconfigure nvidia-kernel-dkms

X86_64


  • Для таких систем также можно поставить 32-битную версию драйвера:

# apt-get install libgl1-nvidia-glx:i386