Установка драйвера NVIDIA
Материал из Bryansk Linux Users Group.
Содержание |
Зачем это нужно
Ещё одной проблемой, с которыми часто сталкиваются новички, является установка коммерческих драйверов от производителя видеокарты. Коммерческие драйвера позволяют раскрыть весь потенциал видеокарты, получить 3D ускорение и лучшую отрисовку 2D окон. Рассмотрим установку драйвера для видеокарты NVIDIA на примере дистрибутива Debian.
Установка
Для начала нам нужны исходные коды ядра, или заголовки (headers), а так же средства для компиляции. Применительно к Debian выполняем слудующие команды:
# apt-get install build-essential # apt-get install linux-headers-`uname -r`
Для дистрибутива Mandriva нужно установить следующие пакеты:
# urpmi binutils # urpmi kernel-source
Сие установит компилятор и утилиты для сборки, а также заголовки, соответствующие запущенному в настоящий момент ядру.
Теперь скачиваем NVIDIA-Linux-архитектура-версия-pkg1.run с сайта NVIDIA или из Метро.
Скачалось? Прекрасно. Теперь нам нужно погасить X. Выходим из сеанса, переключаемся в текстовую консоль нажатием CTRL+ALT+F1, логинимся. Если запущен графический менеджер входа - гасим его командой типа /etc/init.d/[xdm|gdm|kdm] stop (в завимисомсти от используемого менеджера).
В консоли вводим:
# sh /путь/до/NVIDIA-Linux-архитектура-версия-pkg1.run
Отвечаем на ряд вопросов (по большей части надо отвечать "Да"). Вконце вас спросят - модифицировать ли xorg.conf. Ответим "Да". Теперь в секции Device файла /etc/X11/xorg.conf в поле Driver должно быть написано nvidia.
Пробуем запустить X командой Xorg. Если всё ОК - вначале появится эмблема NVIDIA и затем появится курсор в виде креста. Выйти - нажатием CTRL+ALT+BACKSPACE.
Теперь запускаем обратно менеджер входа (/etc/init.d/[xdm|gdm|kdm] start) и наслаждаемся возросшей производительностью. Проверить работу OpenGL можно командой glxgears.
Arceny 03:13, 11 июля 2007 (MSD)
После установки драйвера этим способом, необходимо проверить наличие файлов описанных ниже и удалить их:
# rm /etc/init.d/nvidia-glx # rm /etc/init.d/nvidia-kernel
Иначе после перезагрузки системы будут удалены симлинки и драйвер придется заново переустанавливать.
Если по команде glxgears выводится ошибка об отсутствии ее, то необходимо установить пакет mesa-utils:
# apt-get install mesa-utils
Cybermind 11:04, 12 ноября 2007 (MSK)
Альтернативный метод
Воспользуемся пакетом module-assistant, который предназначен для сборки и установки различных модулей ядра Для начала установим его:
# apt-get install module-assistant
Комманда module-assistant имеет алиас m-a, который более удобен. Им и воспользуемся.
# m-a update && m-a a-i nvidia
☺ 12:19, 11 июля 2007 (MSD)
Настройка TVOut
На телевизор можно вывести копию картинки с монитора или отдельный X-Screen.
TwinView
Сделаем бэкап xorg.conf
# sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
Открываем xorg.conf любым текстовым редактором, например так
# gksudo gedit /etc/X11/xorg.conf
Добавляем в секцию [Screen]
Section "Screen"
...
Option "TwinView"
Option "TVOutFormat" "SVIDEO"
Option "TVStandard" "NTSC-M"
Option "MetaModes" "1440x900,640x480; 1440x900,NULL; 1024x768,NULL; 800x600,NULL; 640x480,NULL"
SubSection "Display"
...
Modes "1440x900" "1280x1024" "1024x768" "720x450" "640x480"
EndSubSection
EndSection
Обращаем внимание на подключение кабеля к телевизору, если вход композитный (т.е. 1 тюльпан) то меняем опцию "TVOutFormat" на "COMPOSITE", тоже делаем и с "TVStandart". В "MetaModes" выставляем пишем разрешение нашего монитора, и через запятую разрешение на телевизоре. Для того чтобы это работало с карточкой FX5200 добавляем дополнительно
Option "ConnectedMonitor" "CRT,TV"
Теперь рестартуем X.
Запуск 2 Х-экранов
Сделаем бэкап xorg.conf
# sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup
Открываем xorg.conf любым текстовым редактором, например так
# gksudo gedit /etc/X11/xorg.conf
Для начала редактируем секцию [Device]
Section "Device"
Identifier "Device0"
Driver "nvidia"
Screen 0
Option "NoLogo" "true"
Option "RenderAccel" "true"
BusID "PCI:02:09:0"
EndSection
Section "Device"
Identifier "Device1"
Driver "nvidia"
Screen 1
BusID "PCI:02:09:0"
EndSection
Опции "NoLogo" и "RenderAccel" необязательные, в обязательном порядке исправьте BusID на свой, проверить можно так
# lspci
Теперь ищем и правим секцию [Monitor] Для примера так:
Section "Monitor"
Identifier "Monitor" #CRT
HorizSync 30-70
VertRefresh 50-140
Option "DPMS"
EndSection
Section "Monitor"
Identifier "Television" #TV
HorizSync 30-50
VertRefresh 60
EndSection
Если верить документации NVidia, то стандартная горизонтальная развертка HorizSync для телевизора 30-50, можно запустить startx verbose и поиграться. Остается поправить секцию [Screen] например так
Section "Screen"
Identifier "Screen0"
Device "Device0"
Monitor "Monitor"
DefaultDepth 24
Option "ConnectedMonitor" "CRT"
SubSection "Display"
Depth 24
Modes "1024x768" "800x600" "640x480"
EndSubSection
EndSection
Section "Screen"
Identifier "Screen1"
Device "Device1"
Monitor "Television"
DefaultDepth 24
Option "TVOutFormat" "SVIDEO"
Option "TVStandard" "NTSC-M"
Option "ConnectedMonitor" "TV"
SubSection "Display"
Depth 24
Modes "640x480"
EndSubSection
EndSection
Обращаем внимание на подключение кабеля к телевизору, если вход композитный (т.е. 1 тюльпан) то меняем опцию "TVOutFormat" на "COMPOSITE" (SVIDEO не работает с драйвером 1.0-7667). В завершении поправим [ServerLayout]
Section "ServerLayout"
Identifier "Basic Layout"
Screen 0 "Screen0"
Screen 1 "Screen1" rightof "Screen0"
InputDevice "Generic Keyboard"
InputDevice "Configured Mouse"
EndSection
Можно использовать rightof, leftof, above, below, relative дополнительную документацию смотрите в
# man xorg.conf
Рестартуем X.

