В этой статье описаны установка, настройка, обновление, удаление проприетарного драйвера для видеокарт Nvidia.

Просмотр модели видеокарты

Модель видеокарты можно узнать выполнив команду в терминале:

lspci -k | grep -EA2 'VGA|3D'


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

Если вывод команды показал две видеокарты Intel + Nvidia, значит вам нужно воспользоваться другой инструкцией: nVidia Optimus

Выбор версии драйвера

На сайте nvidia.ru и на форуме devtalk.nvidia.com можно посмотреть какие модели видеокарт поддерживаются той или иной версией драйвера.



Если вам подходит 71, 96, 173 версия, то перейдите к инструкции установка драйвера для старых видеокарт.



Установка драйвера из официального репозитория Ubuntu (рекомендуется)

Запустите терминал и выполните команды:

  1. Смотрим какие версии драйвера Nvidia есть в репозитории:
    sudo apt-get update && clear && apt-cache search nvidia-[0-9] | grep 'binary driver'

  2. Устанавливаем драйвер (nvidia-версия) и программу для его настройки (nvidia-settings):

    sudo apt-get install nvidia-304 nvidia-settings

  3. Создаем xorg.conf:

    sudo nvidia-xconfig

  4. Перезагружаем компьютер.
  5. После перезагрузки проверяем какой видео драйвер используется:

    lspci -k | grep -EA2 'VGA|3D'

    Получится примерно такой вывод, в последней строке указано название используемого видео драйвера

    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 пакеты.

  1. Удаляем ранее установленный драйвер nvidia, если устанавливали:
    sudo apt-get purge nvidia*

  2. Подключаем репозиторий:

    sudo add-apt-repository ppa:graphics-drivers/ppa

  3. Смотрим какие версии драйвера Nvidia есть в репозитории:

    sudo apt-get update && clear && apt-cache search nvidia-[0-9] | grep 'binary driver'

  4. Устанавливаем драйвер (nvidia-версия) и программу для его настройки (nvidia-settings):

    sudo apt-get install nvidia-370 nvidia-settings

  5. Создаем xorg.conf:

    sudo nvidia-xconfig

  6. Перезагружаем компьютер.
  7. После перезагрузки проверяем какой видео драйвер используется:

    lspci -k | grep -EA2 'VGA|3D'

    Получится примерно такой вывод, в последней строке указано название используемого видео драйвера

    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 (сборка из исходников)

Нужно иметь ввиду, что если вы установили драйвер этим способом, то при каждом обновлении ядра графическая подсистема не будет загружаться, и придется переустанавливать драйвер через системную консоль!
  1. Перейдите на сайт nvidia.ru, скачайте установщик драйвера (NVIDIA-Linux-XXX-XXX.XXX.run), в свойствах файла разрешите его исполнение;
  2. Установите deb пакеты необходимые для сборки видеодрайвера из исходников:
    sudo apt-get install build-essential dkms mc linux-headers-`uname -r`

  3. Удалите драйверы nvidia из системы:

    sudo apt-get purge nvidia* && clear && sudo nvidia-uninstall || clear

  4. Перейдите в консоль сочетанием клавиш Ctrl-Alt-F1, введите логин и пароль своего пользователя;
  5. Остановите работу X сервера командой:

    sudo service lightdm stop

  6. Установка драйвера:
    • Запустите Midnight Commander:

      sudo mc

    • Перейдите в папку куда скачали установщик драйвера , выделите NVIDIA-Linux-XXX-XXX.XXX.run и нажмите энтер для установки драйвера.
    • Установщик предложит лицензионное соглашение - нажмите Accept;
    • Предложит использовать скрипт для вашего д истрибутива - нажмите Yes;
    • Предложит использовать DKMS - нажмите Yes;
    • Предложит запустить nvidia-xconfig для создания xorg.conf, для автоматичеcкого заполнения (рекомендуется) - нажмите Yes, для ручного заполнения - нажмите No;
    • Вконце напишет что драйвер установлен - нажмите Yes.
    • Закрываем Midnight Commander клавишей F10.
  7. Перезагрузите компьютер командой

    sudo reboot

  8. После перезагрузки проверяем какой видео драйвер используется, выполнив команду в терминале:

    lspci -k | grep -EA2 'VGA|3D'

    Получится примерно такой вывод, в последней строке указано название используемого видео драйвера

    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

  9. Если после установки драйвера не воспроизводится видео в плеерах, значит не работает VDPAU идущий с драйвером, тогда замените его на VDPAU из репозитория, это делается командой:

    sudo apt-get install --reinstall libvdpau1

Удаление драйвера установленного из исходников

Для удаления достаточно одной команды, её можно выполнить в терминале, в консоли, в Recovery mode

sudo nvidia-uninstall

После перезагрузки можно будет установить другой видеодрайвер.

Устранение возможных проблем

Неправильно определяются разрешение и частота монитора

  • Если не устанавливается или неправильно определяются разрешение и частота монитора, нужно добавить следующие строки в секцию «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
  • Для систRAM - 512Mb

CPU - i386 HDD - 4Gbем в которых xorg.conf отсутствует можно изменить рассматриваемую опцию, поместив следующую команду в автозапуск:

nvidia-settings -a [gpu:0]/GPUPowerMizerMode=1

Исправление загрузочного экрана (Plymouth)

FIXME

  1. Установите необходимые пакеты:
    sudo apt-get install v86d

  2. Измените параметры загрузчика, для этого в терминале введите:

    sudo gedit /etc/default/grub

    Найдите и добавьте/исправьте строчки на следующие, изменив разрешение на своё:

    GRUB_GFXMODE=1440x900x24
    GRUB_GFXPAYLOAD_LINUX=keep

    :!: Возможно потребуется использовать 16-битную глубину цвета (GRUB_GFXMODE=1440x900x16)

  3. Выполните команду в терминале:

    echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash

  4. Обновите параметры загрузчика и ядра:

    sudo update-initramfs -u
    sudo update-grub2

  5. Перезагрузите систему.

Исправление загрузочного экрана (Plymouth) в Ubuntu 10.04, 10.10, 11.04, 11.10

DELETEME

Заметка для редакторов: Проверить, для каких выпусков Ubuntu подходит способ. Если для 12.04 и 12.10 он отличен — описать изменения.
  1. Установите необходимые пакеты:
    sudo apt-get install v86d cryptsetup libcryptsetup1 libcryptsetup-dev hwinfo

  2. Измените параметры загрузчика, для этого в терминале введите:

    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
  3. Отредактируйте файл /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
  4. Отредактируйте загрузку модулей:

    sudo gedit /etc/initramfs-tools/modules

    Добавьте в файл строку, меняя в ней разрешение на нужное:

    uvesafb mode_option=1920x1200-24 mtrr=3 scroll=ywrap

  5. Выполните команду в терминале:

    echo FRAMEBUFFER=y | sudo tee /etc/initramfs-tools/conf.d/splash

  6. Обновите параметры загрузчика и ядра:

    sudo update-grub
    sudo update-initramfs -u

  7. Перезагрузите систему.

Дополнительные опции

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 Fermi

Для активации возможности разгона формируем и редактируем xorg.conf:

sudo nvidia-xconfig
sudo nano /etc/X11/xorg.conf

В секцию «Device» добавляем следующую строку:

Option "Coolbits" "8"

, сохраняем файл и перезапускаем иксы. Теперь через утилиту nvidia-settings в разделе PowerMizer вам доступно управление частотами памяти и ядра. Данные настройки будут сбрасываться каждый новый сеанс. Если вы хотите сохранить установленные настройки разгона, сформируйте конфиг-файл .nvidia-settings-rc в домашнем каталоге пользователя, сохранив текущую конфигурацию через nvidia-settings, и добавьте в полученный файл следующие строки:

[gpu:0]/GPUGraphicsClockOffset[3]=-50
[gpu:0]/GPUMemoryTransferRateOffset[3]=-50

, где числовые значения - разгон частот ядра и памяти соответственно. Остается добавить команду

nvidia-settings --load-config-only

в автозапуск, и ваш разгон будет применяться при каждом новом сеансе.

Техническая поддержка nVidia

Если при использовании проприетарного драйвера nVidia у вас возникнут какие-либо проблемы вы можете обратиться в техническую поддержку компании nVidia:

Ссылки

См.также