Содержание
В этой статье описаны установка, настройка, обновление, удаление проприетарного драйвера для видеокарт Nvidia.
Определение модели видеокарты
Для определения модели видеокарты запустите терминал (Ctrl+Alt+T) и выполните команду:
lspci -k | grep -E "VGA|3D"
Выбор версии драйвера
На сайте Nvidia выложены несколько версий видео драйвера, можно нажать на каждую и посмотреть список поддерживаемых видеокарт. Так вы сможете определить какой драйвер вам нужен.
Установка драйвера из официального репозитория Ubuntu (рекомендуется)
- Устанавливаем драйвер и программу для его настройки, запустите терминал (Ctrl+Alt+T) и выполните команду:
sudo apt-get update && sudo apt-get install nvidia-304 nvidia-settings
- Создаем xorg.conf:
sudo nvidia-xconfig
- Перезагружаем компьютер.
- После перезагрузки проверяем какой видео драйвер используется:
lspci -k | grep VGA -A2
Получится примерно такой вывод, в последней строке указано название используемого видео драйвера
03:00.0 VGA compatible controller: NVIDIA Corporation G92 [GeForce 9800 GT] (rev a2) Subsystem: Elitegroup Computer Systems Device 1a0e Kernel driver in use: nvidia
Установка более новой версии драйвера из PPA
Для Ubuntu существует неофициальный репозиторий, в котором выкладываются новые версии драйверов, это драйверы собранные из исходников с сайта Nvidia упакованные в deb пакеты.
- Удаляем ранее установленный драйвер nvidia, если устанавливали:
sudo apt-get purge nvidia*
- Подключаем репозиторий:
sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
- Устанавливаем драйвер:
sudo apt-get update && sudo apt-get install nvidia-331 nvidia-settings-331
- Создаем xorg.conf:
sudo nvidia-xconfig
- Перезагружаем компьютер.
- После перезагрузки проверяем какой видео драйвер используется:
lspci -k | grep VGA -A2
Получится примерно такой вывод, в последней строке указано название используемого видео драйвера
03:00.0 VGA compatible controller: NVIDIA Corporation G92 [GeForce 9800 GT] (rev a2) Subsystem: Elitegroup Computer Systems Device 1a0e Kernel driver in use: nvidia
Установка драйвера с официального сайта Nvidia (сборка из исходников)
Удалите предыдущие драйвера, установленные через менеджер драйверов, чтобы в системе пакетов не возникло ошибок:
sudo apt-get purge nvidia-
Если драйвера ранее устанавливались аналогичным текущему способу (из исходных кодов), удалять такие драйвера нет необходимости, новая ручная установка перепишет файлы предыдущей версии автоматически.
- Скачайте последнюю версию драйвера с официального сайта Nvidia (полученный файл будет иметь название вида
NVIDIA-Linux-XXX-X.X-XXX-pkg1.run
); - Установите необходимые пакеты:
sudo apt-get install linux-headers-`uname -r` binutils pkg-config build-essential xserver-xorg-dev
- Откройте черный список модулей ядра:
sudo gedit /etc/modprobe.d/blacklist.conf
Добавьте в него свободные видео драйверы, которые могут работать с видеокартами Nvidia:
blacklist vga16fb blacklist nouveau blacklist rivafb blacklist nvidiafb blacklist rivatv
Сохраните изменения и закройте текстовй редактор.
- Выключите X сервер командой в терминале (для Ubuntu версии 11.10 и выше):
sudo service lightdm stop
переключитесь на консоль командой Ctrl-Alt-F1 и войдите в систему под обычным пользователем;
Запустите установщик драйверов (из каталога куда был сохранен драйвер):
sudo sh ./NVIDIA-Linux-XXX-X.X-XXX-pkg1.run
Вместо
NVIDIA-Linux-XXX-X.X-XXX-pkg1.run
укажите точное имя пакета с драйверами, которые вы скачали с официального сайта
(это же действие удобнее делать через Midnight Commander, запустить mc с правами администратора, перейти в каталог, выделить файл и нажать энтер).- Инсталлятор сообщит об отсутствии «precompiled headers» для вашего ядра и предложит скачать их с сервера Nvidia - откажитесь. Затем, он предложит скомпилировать их сам - соглашайтесь.
- Если все прошло успешно, то по окончанию установки вам будет предложено запустить утилиту автонастройки
nvidia-xconfig
- откажитесь. - Сделайте копию конфигурационного файла X-сервера:
sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
Отредактируйте файл
xorg.conf
в соответствии с приведенным ниже примером:Section "Screen" Identifier "Default Screen" DefaultDepth 24 EndSection Section "Device" Identifier "Default Device" Driver "nvidia" Option "NoLogo" "True" EndSection Section "Module" Load "glx" EndSection
Перезапустите X-сервер:
Для Ubuntu версии 11.10 и выше:
sudo service lightdm start
Для старых версий Ubuntu, а также для тех, кто использует GDM вместо LightDM:
sudo service gdm start
sudo cp /etc/X11/xorg.conf.backup /etc/X11/xorg.conf
и ищите ошибку в своих действиях или спрашивайте в обсуждении на форуме.
Удаление драйвера после установки из исходников
Если требуется полностью удалить установленный вручную драйвер Nvidia, нужно выполнить следующее:
- Скачайте последнюю версию драйверов с официального сайта Nvidia (полученный файл будет иметь имя вида
NVIDIA-Linux-XXX-X.X-XXX-pkg1.run
). Запустите установщик драйверов (из каталога куда был сохранен драйвер) с ключом –uninstall:
sudo -s -H sh NVIDIA-Linux-XXX-X.X-XXX-pkg1.run --uninstall
Вместо
NVIDIA-Linux-XXX-X.X-XXX-pkg1.run
укажите точное имя пакета с драйверами, которые вы скачали.
Устранение возможных проблем
Неправильно определяются разрешение и частота монитора
- Если не устанавливается или неправильно определяются разрешение и частота монитора, нужно добавить следующие строки в секцию «Screen»: ..
SubSection "Display" Depth 24 Modes "1920x1200" EndSubSection
..разрешение соответственно меняем на то, которое вам нужно
- Или воспользоваться методом определения Modeline для этих целей, используя утилиту gtf. Для этого нужно точно знать разрешение и частоту вашего монитора от производителя, Включая горизонтальную <HorizSync XX.0 - XX.0> и вертикальную <VertRefresh XX.0 - XX.0> развёртку вашего монитора, которые можно узнать в паспорте или на сайтах производителя. Смотрите обсуждение сводной темы. Применение gtf - 1920×1200 60Hz для монитора HP-ZR24w. Вводим в терминал: ..
gtf 1920 1200 60 получаем: 1920x1200 @ 60.00 Hz (GTF) hsync: 74.52 kHz; pclk: 193.16 MHz Modeline "1920x1200_60.00" 193.16 1920 2048 2256 2592 1200 1201 1204 1242 -HSync +Vsync
- Далее копируем строку Modeline и вставляем в файл xorg.conf, в секцию «Monitor» и правим значения опций HorizSync и VertRefresh. Опции VendorName и ModelName редактируйте согласно своей модели, - либо вообще не трогайте(!): ..
Section "Monitor" Identifier "Monitor0" VendorName "HP" ModelName "ZR24w" HorizSync 24.0 - 80.0 VertRefresh 59.0 - 61.0 Option "DPMS" Modeline "1920x1200_60.00" 193.16 1920 2048 2256 2592 1200 1201 1204 1242 -HSync +Vsync EndSection
Медленно работает (тормозит) интерфейс в Ubuntu на видеокартах Nvidia
- Суть проблемы в том, что видеокарта nVidia с включённой по умолчанию опцией PowerMizer динамически меняет частоты памяти и GPU на видеокарте, а система болезненно на это реагирует.
- Выходом является смена в Nvidia X Server settings (
nvidia-settings
) в разделе PowerMizer - Preferred Mode режима с Adaptive на Maximum Performance. После перезагрузки ПК, настройки сбросятся и нужно автоматизировать установку Maximum Performance. - Для этого нужно отредактировать xorg.conf, чтобы он выглядел следующим образом:
Section "Screen" Identifier "Default Screen" DefaultDepth 24 EndSection Section "Device" Identifier "Default Device" Driver "nvidia" Option "NoLogo" "True" Option "Coolbits" "1" Option "RegistryDwords" "PowerMizerEnable=0x1; PerfLevelSrc=0x3322; PowerMizerDefaultAC=0x1" EndSection Section "Module" Load "glx" EndSection
- Для систем в которых xorg.conf отсутствует можно изменить рассматриваемую опцию, поместив следующую команду в автозапуск:
nvidia-settings -a [gpu:0]/GPUPowerMizerMode=1
Исправление загрузочного экрана (Plymouth)
- Установите необходимые пакеты:
sudo apt-get install v86d
Измените параметры загрузчика, для этого в терминале введите:
sudo gedit /etc/default/grub
Найдите и добавьте/исправьте строчки на следующие, изменив разрешение на своё:
GRUB_GFXMODE=1440x900x24 GRUB_GFXPAYLOAD_LINUX=keep
Возможно потребуется использовать 16-битную глубину цвета (GRUB_GFXMODE=1440x900x16)
- Выполните команду в терминале:
echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
- Обновите параметры загрузчика и ядра:
sudo update-initramfs -u sudo update-grub2
- Перезагрузите систему.
Исправление загрузочного экрана (Plymouth) в Ubuntu 10.04, 10.10, 11.04, 11.10
- Установите необходимые пакеты:
sudo apt-get install v86d cryptsetup libcryptsetup1 libcryptsetup-dev hwinfo
Измените параметры загрузчика, для этого в терминале введите:
sudo gedit /etc/default/grub
Найдите и добавьте/исправьте строчки на следующие, меняя «номер» и разрешение на свои:
GRUB_CMDLINE_LINUX_DEFAULT="quiet splash nomodeset video=uvesafb:mode_option=1920x1200-24,mtrr=3,scroll=ywrap" GRUB_CMDLINE_LINUX="splash vga=0x037d" GRUB_GFXMODE=1920x1200
Значение vga=«номер» для
GRUB_CMDLINE_LINUX
берется из вывода командыsudo hwinfo --framebuffer
Отредактируйте файл /etc/grub.d/00_header
sudo gedit /etc/grub.d/00_header
Найдите строку и впишите нужное вам разрешение
if [ "x${GRUB_GFXMODE}" = "x" ] ; then GRUB_GFXMODE=1920x1200 ; fi
Также сразу под этой строкой допишите
set gfxpayload=keep
Далее в этом же файле найдите строку и замените в ней разрешение на нужное:
set gfxmode=1920x1200
- Отредактируйте загрузку модулей:
sudo gedit /etc/initramfs-tools/modules
Добавьте в файл строку, меняя в ней разрешение на нужное:
uvesafb mode_option=1920x1200-24 mtrr=3 scroll=ywrap
- Выполните команду в терминале:
echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash
- Обновите параметры загрузчика и ядра:
sudo update-grub sudo update-initramfs -u
- Перезагрузите систему.
Дополнительные опции
Option "GLShaderDiskCache" "True"
В некоторых случаях позволяет ускорить работу с шейдерами
Option "ModeValidate" "NoTotalSizeCheck"
Позволяет для видеокарт GF9xxx, GTX2xx и новее избежать разбиения изображения на 6 маленьких экранов
Option "ModeValidation" "NoEdidModes, NoMaxPClkCheck, NoVertRefreshCheck, NoHorizSyncCheck, NoEdidMaxPClkCheck"
Наиболее часто помогает, опция убирает проверку различных параметров портов видеокарты и опций передаваемых монитором, но воспринимаемых системой ошибочно.
Option "UseEDIDFreqs" "False"
Выключает считывание EDID монитора, который используется системой как источник возможных режимов, диапазонов частот, а также считывания физических размеров дисплея и определения количества точек на дюйм.
Option "NoBandWidthTest" "True"
Выключает тест памяти видеокарты на аппаратные ограничения пропускной способности.
Option "ExactModeTimingsDVI" "True"
Опция вызывает принудительную синхронизацию с точными таймингами, указанными в ModeLine, а не с приближенными к ним, которые указаны в EDID.
SLI режим
- Если не работает SLI режим или не запускается X-сервер с двумя включенными карточками, то добавляем в секцию «Device» строку:
Option "SLI" "True"
Настройка TV-out
Подключение TV настраивается обычно через Система⇒Администрирование⇒NVIDIA X Server Settings, но если после настройки так и не удается вывести изображение на TV, добавляем следующие строки в секцию «Screen»:
Option "TwinView" Option "TVOutFormat" "AUTOSELECT" Option "TVStandard" "PAL-B"
Режим опции «TVOutFormat» можно задать вручную, вписав вместо «AUTOSELECT» одно из следующих значений:
TVOutFormat | Поддерживаемые TV форматы |
---|---|
«AUTOSELECT» | PAL, NTSC, HD |
«COMPOSITE» | PAL, NTSC |
«SVIDEO» | PAL, NTSC |
«COMPONENT» | HD |
«SCART» | PAL, NTSC |
Режим опции «TVStandard» можно менять взависимости от того формата который вам нужен, вписав вместо «PAL-B» одно из следующих значений:
TVStandard | Описание |
---|---|
«PAL-B» | |
«PAL-D» | |
«PAL-G» | |
«PAL-N» | |
«NTSC-J» | |
«NTSC-M» | |
«HD480i» | |
«HD480p» | |
«HD576i» | |
«HD576p» | |
«HD720p» | |
«HD1080i» | |
«HD1080p» |
Техническая поддержка nVidia
Если при использовании проприетарного драйвера nVidia у вас возникнут какие-либо проблемы вы можете обратиться в техническую поддержку компании nVidia:
- Чат (с восьми вечера до четырёх утра по московскому времени)
- Задать вопрос (в любое время)
Ссылки
- Уcтановка драйверов Nvidia — тема на форуме
- nvworld.ru~ — полный перевод документации драйвера NVIDIA для операционных систем Linux
- nvidia.com~ — дополнительные опции и документация к ним
- ~ubuntu-x-swat/+archive/x-updates — неофициальный репозиторий со стабильными драйверами на Launchpad
- ~xorg-edgers/+archive/ppa — неофициальный репозиторий с новыми драйверами на Launchpad