Ключевые слова:nvidia, driver, xorg, linux, gentoo, (найти похожие документы)
From: MooSE <webmaster@ylsoftware.com.>
Date: Sun, 10 Mar 2008 17:02:14 +0000 (UTC)
Subject: Установка nouveau (открытый драйвер NVIDIA) в Gentoo
Оригинал: http://ylsoftware.com/?action=news&na=viewfull&news=321&from=rss
Если вы обладатель legacy-карты nvidia, драйвера которой уже не
поддерживаются, или просто по каким-то причинам вы не хотите
использовать закрытое ПО то у вас есть два варианта:
1. Использовать "родной" драйвер из X.Org (nv) и отказаться от 3D
возможностей вашей карты.
2. Использовать открытую альтернативу закрытым драйверам - проект
nouveau.
Эта статья призвана помочь тем кто выбрал второй путь. И хотя упор в
ней сделан на дистрибутив Gentoo, многие рекомменадции из неё подойдут
и для других дистрибутивов.
Для тех оплачивает интернет по трафику: нужно приготовится потратить
примерно десять мегабайт трафика на загрузку исходных текстов драйвера
и сопутствующих компонентов.
Итак, для начала нам нужно подключить оверлей nouveau:
emerge layman
layman --add nouveau
Всё. Оверлей добавлен. Убедится в этом можно просмотрев содержимое
директории /usr/portage/local/layman/nouveau.
Сам драйвер жёстко замаскирован, да и требует последних (git-) версий
ещё ряда компонентов, которые так же замаскированы. Чтобы
размаскировать их нужно добавить следующие строки в файл
/etc/portage/package.keywords:
media-libs/mesa **
x11-base/x11-drm **
x11-drivers/xf86-video-nouveau **
x11-libs/libdrm **
Далее очень хочется выполнить команду:
emerge nouveau
Однако это не правильно. К сожалению ebuild в оверлее написан не
совсем корректно. Например модуль x11-drm не указан у nouveau в
зависимостях. Поэтому правильно будет сделать вот так:
emerge x11-base/x11-drm media-libs/mesa x11-drivers/xf86-video-nouveau
Если всё прошло успешно, то остаётся только настроить драйвер. Для
этого впервую очередь нужно оставноить X-сервер (если он был запущен):
/etc/init.d/xdm stop
Если вы используете драйвер nvidia - выгрзуите модуль:
modprobe -r nvidia
И удалите (или закомментируйте) строчку nvidia в файле
/etc/modules.autoload.d/kernel-2.6.
Загрузите модуль nouveau и добавьте его в список модулей, загружаемых
при загрузке:
modprobe nouveau
echo nouveau >> /etc/modules.autoload.d/kernel-2.6
Убедитесь что модуль загрузился:
lsmod | grep nouveau
Теперь нужно переключится на встроеный в X.Org интерфейс OpenGL:
eselect opengl set xorg-x11
В файле /etc/X11/xorg.conf в секции Device поменть строку Driver ...
на:
Driver "nvidia"
Далее нужно убедится что в секции Module указаны модули dri и glx:
Load "glx"
Load "dri"
А так же присутствует (и не закомментирована!) секция:
Section "DRI"
Group 0
Mode 0666
EndSection
Всё. Можно запускать графический сервер:
/etc/init.d/xdm start
После входа в систему рекоммендуется проверить работу драйверов
командой glxgears. Если всё в порядке - вы увидите три разноцветные
шестерёнки, а на консоль каждые пять секунд будут выводится данные о
текущем fps.
Если шестерёнки будут крутится рывками, а на консоль будет выведено
сообщение:
open DRM failed (Operation not permitted)
То нужно ещё раз проверить наличие и правильность указаний секции DRI
в /etc/X11/xorg.conf, поскольку эта ошибка говорит о некорректно
выставленных правах на устройство /dev/dri/cards0, которые и задаются
в той секции.
Отдельно внимание следует уделить обновлению драйверов. В Gentoo при
штатном обновлении пакеты, собраные зи репозиториев SVN/CVS/git, не
обновляются. Чтобы их всё же обновить можно использовать утилиту
rep-rebuild, ebuild которой есть в оверлее sunrise:
layman --add sunrise
echo app-portage/rep-rebuild ~x86 >> /etc/portage/package.keywords
emerge rep-rebuild
Теперь для обновления всех пакетов, собраных из репозиториев
SVN/CVS/git, достаточно выполнить команду:
rep-rebuild --ask
Ключ --ask нужен для того, чтобы прежде чем что-то делать - программа
спросила вашего подтвержедния на это действие.
На это всё. Надеемся (но не гарантируем!) что драйвер вас не
разочарует.
Источники: 1, 2, 3