Настройка видеокарты от nVidia под Linux\’ом

Никогда не возникал вопрос, почему под Linuxом так откровенно тормозят потрясающие демки, quake 3 и прочее, требующее более или менее приличной производительности от видеокарты, хотя на компьютере установлен не самый отсталый chipset от nVidia? А ведь многие начинающие пользователи этой операционной системы сталкиваются с подобной неприятной вещью. Вполне логично, что происходит такое безобразие из-за отказа гордого антарктического животного использовать предлагаемую ему видеокарточку на всю допустимую мощность.

Правильнее сказать, что отказывается не сама Linux, а графический сервер, т.е. XFree86. А еще правильнее было бы заметить, что никто ни от чего не отказывается — проблема в отсутствии родных драйверов компании и/или неправильных настройках X-ов.

Проблема обычно возникает из-за того, что XFree86 по умолчанию подгружает некий стандартный драйвер с не особо продвинутыми возможностями. В результате, производительность любой видеокарты сводится к убогому defaultу, шансы модного chipsetа от nVidiaпроявить себя стремительно приближаются к нулю.

Исправляется недуг достаточно просто — установкой родного драйвера от производителя. Спасибо заботливым разработчикам из nVidia,которые потрудились на славу, создав превосходные драйвера для своих продуктов под Linux (как впрочем, и под FreeBSD). Особо радует то, с какой простотой можно установить и заставить работать этом самый драйвер. Итак, для начала нужно заполучить то, что позже будет установлено. Наиболее элементарным способом является банальное скачивание нужного файла с http://www.nvidia.com/linux. Пройдя по URLу и скачав файл типа NVIDIA-Linux-x86-x.x-xxxx.run (на момент написания статьи последней версией являлась 1.0-4363, размером чуть более чем в 6.5 мб), делаем его исполняемым (здесь и далее скачанный файл называется NVIDIA-Linux-x86-x.x-xxxx.run):

$ chmod +x NVIDIA-Linux-x86-x.x-xxxx.run

Далее необходимо покинуть X-Window, зайти под rootом и запустить скрипт:

Ctrl+Alt+Backspace (или нормальный logout из графический среды)
$ su
Password:
# ./NVIDIA-Linux-x86-x.x-xxxx.run

Согласившись с лицензией и ответив на несколько вопросов, скрипт начнет копирование необходимых файлов. Продлится сей процесс не долго, и вскоре радостно сообщат о том, что драйвер установлен, осталось только настроить конфиг XFree86. Рекомендации по настройке X-ов (как и пример самого XF86Config) можно найти в каталоге/usr/share/doc/NVIDIA_GLX-x.x. В сущности же в /etc/X11/XF86Config-4нужно сделать следующее:

— привести раздел Device к такому виду:

Section Device
Identifier NV AGP
VendorName nvidia
Driver nvidia
BusID PCI:1:0:0
EndSection

Section Device
Identifier NV AGP TwinView
VendorName nvidia
Driver nvidia
BusID PCI:1:0:0
Option TwinView
Option SecondMonitorHorizSync 31-82
Option SecondMonitorVertRefresh 55-120
Option TwinViewOrientation RightOf
Option MetaModes 1280×1024,1280×1024; 1024×768,1024×768
Option ConnectedMonitor crt,crt
EndSection

(Значение BusID может быть другим, узнается оно по выводу команды lspci.)

— в разделе Screen изменить значение Device на NV AGP.

Осталось добавить загрузку nvidia-модуля в /etc/modules.conf,чтобы при каждом запуске Linuxа драйвер мог нормально работать:

# echo alias char-major-195 nvidia >>/etc/modules.conf

Вот, пожалуй, и все. Теперь при загрузке X-ов должен будет подключаться свеже-скомпилированный драйвер от nVidia, проблемы с тормозами уйдут в прошлое. Напоследок, только хотелось бы сообщить о том, что после установки драйвера, появляется утилитаnvidia-installer, с помощью которой можно обновлять драйвер:

# nvidia-installer –update

Кроме того, есть и другие продвинутые команды, позволяющие настроить драйвера для новых ядер и т.п. Посмотреть полный список этих команд можно так:

$ nvidia-installer -A

Автор: Дмитрий Шурупов