Никогда не возникал вопрос, почему под Linux&#39

advertisement
Никогда не возникал вопрос, почему под Linux'ом так откровенно тормозят потрясающие
демки, quake 3 и прочее, требующее более или менее приличной производительности от
видеокарты, хотя на компьютере установлен не самый отсталый chipset от nVidia? А ведь
многие начинающие пользователи этой операционной системы сталкиваются с подобной
неприятной вещью. Вполне логично, что происходит такое безобразие из-за отказа
гордого антарктического животного использовать предлагаемую ему видеокарточку на
всю допустимую мощность.
Правильнее сказать, что отказывается не сам Linux, а графический сервер, т.е. XFree86. А
еще правильнее было бы заметить, что никто ни от чего не отказывается — проблема в
неправильных настройках X-ов и, соответственно, кривых руках пользователя (это
вообще вечная беда, от которой не застрахован никто, но в качестве практики лечения
рекомендуется ежедневный просмотр man'ов). С кривыми руками разбирайтесь сами, а
вот в настройке X-Window можно попробовать и помочь.
Проблема обычно возникает из-за того, что XFree86 по умолчанию подгружает некий
стандартный драйвер с «не особо продвинутыми» возможностями. В результате,
производительность любой видеокарты сводится к убогому default'у, шансы модного
chipset'а от nVidia проявить себя стремительно приближаются к нулю.
Исправляется недуг достаточно просто — установкой родного драйвера от производителя.
Спасибо заботливым разработчикам из nVidia, которые потрудились на славу, создав
превосходные драйвера для своих продуктов под Linux (как впрочем, и под FreeBSD).
Особо радует то, с какой простотой можно установить и заставить работать этом самый
драйвер. Итак, для начала нужно заполучить то, что позже будет установлено. Наиболее
элементарным способом является банальное скачивание нужного файла с
http://www.nvidia.com/linux. Пройдя по URL'у и скачав файл типа "NVIDIA-Linux-x86-x.xxxxx.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'ом и запустить скрипт:
++ (или нормальный 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" "1280x1024,1280x1024; 1024x768,1024x768"
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
Download