Nvidia
Настройка видеокарт Nvidia в Сизифе
Постановка вопроса
На сегодня видеокарты от Nvidia являются одними из самых распространённых. Поддержка карт Nvidia в Linux может осуществляться следующими «драйверами» — модулями Xorg.
- Свободным модулем vesa — настолько, насколько данная видеокарта поддерживает спецификацию vesa.
- Модулем поддержки фреймбуфера — fbdev.
- Свободным модулем nv — поддерживаются не все видеокарты, нет поддержки аппаратного 3D (как и у vesa и у fdbv)
- Свободным модулем nouveau с поддержкой 3D. Eсть в Сизифе, но модуль ещё сырой.
- Проприетарные модули Nvidia.
На сегодняшний день политика компании Nvidia такова, что она разделила все свои видеокарты на 3 группы. В зависимости от того, какая видеокарта, можно ставить один из поддерживающих её драйверов.
Краткий алгоритм установки драйверов серии legacy
Данный алгоритм устарел. В современном Сизифе всё это делается скриптами, но если произошёл сбой в их работе, вы можете сделать эти операции за них.
C недавнего времени xorg-x11-server-1.4 модули legacy вошли в основной пакет Nvidia.
Как поменять текущий модуль ядра (все операции требуют прав root)?
- Выключаем X-ы, например telinit 3,
- Выгружаем модуль nvidia: rmmod nvidia,
- Меняем символическую ссылку, например ln -s /lib/modules/nvidia/{версия ядра} /lib/modules/{версия ядра}/nVidia/nvidia.ko,
- Прописываем в /lib/modules/{версия ядра}/.versions/nvidia: 1.0.9639,
- depmod -a,
- modprobe nvidia,
- Проверяем, что в xorg.conf прописан модуль nvidia,
- x11setupdrv,
- Запускаем X-ы, например telinit 5.
{версия ядра} — это та версия, в которой вы хотите настроить работу драйверов Nvidia.
Возможные баги
xorg-x11-server-1.4 требует, чтобы в /etc/X11/xinit/xserverrc было прописано:
X_server='X -nolisten tcp -ignoreABI'
вместо
X_server='X -nolisten tcp'
В xorg.conf добавить (вроде теоретически взаимозаменяемо, но на практике не получается)
Section "ServerFlags"
Option "ignoreABI" "true"
EndSection