Это старая версия документа.


Установка и настройка драйверов для старых моделей видеокарт nVidia

Обсуждение этой инструкции ведется здесь. Просьба обо всех корректировках писать здесь.

:!:В основном эта статья применима только к Ubuntu версиям 10.10, 10.04 и младше с устаревшим драйвером nVidia 96.

Но теоретически эта инструкция применима и к Ubuntu версиям 11.04 и старше. Но для этого вам нужно откатить Xorg до более ранней версии, т.к этот драйвер работает только на этих версиях Xorg. О том как это сделать вы можете посмотреть здесь или в этой инструкции. Но делайте это на свой риск и страх.

Установка драйвера

Для начала нужно установить драйвер nVidia 96. Сделать это вы можете вот по этой инструкции:

Для Ubuntu существует PPA, содержащий последние версии драйверов видеокарт. Драйверы из этого репозитория ничем не отличаются от таковых с официального сайта, т.к. являются ими же, но только уже в понятном для системы формате .deb.

  1. Добавьте репозиторий в источники приложений командой в терминале:
    sudo add-apt-repository ppa:ubuntu-x-swat/x-updates
  2. Обновите информацию о пакетах и установите все обновления:
    sudo apt-get update
    sudo apt-get upgrade
  3. Установите драйвер (предварительно посмотрев к какой версии драйверов относится ваша видеокарта):
    • Драйвер версии 96.XX.XX
      sudo apt-get install libvdpau1 nvidia-common nvidia-96-modaliases nvidia-settings nvidia-96 nvidia-glx-96

:!:После установки драйвера не нужно перезагружать компьютер, т.к могут быть проблемы после перезагрузки!

:!:У вас может появится небольшая ошибка: при установки драйвера по этой инструкции, пакет libvdpau1 может быть не во всех дистрибутивах. Так что будьте внимательны - если этого пакета нет в репозиториях, ничего страшного, просто пропустите его и не устанавливайте.

Список поддерживаемого этим драйвером оборудования вы можете посмотреть здесь.

Настройка видеокарты

Не рекомендуется редактировать файл xorg.conf если вы не собираетесь использовать compiz, т.к графика в играх при выполнении 3) пункта может сильно тормозить. Рекомендуется использовать 1), 2), и 4) пункты

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

1) Нужно создать файл xorg.conf:

sudo nvidia-xconfig

2) Затем нужно открыть этот файл:

sudo gedit /etc/X11/xorg.conf

3) Затем в открывшемся редакторе нужно отредактировать этот файл. Для этого вставляем следующее:

  • в секцию «Device»:
        Option         "XAANoOffscreenPixmaps"     "true"
        Option         "AllowGLXWithComposite"     "true"
  • в секцию «Screen»:
        Option         "AllowGLXWithComposite" "true"
        Option         "RenderAccel" "true"
        Option         "UseEvents" "false"
        Option         "TripleBuffer" "1"
        Option         "DamageEvents" "1"
        Option         "BackingStore" "1"
        Option         "RandRRotation" "true"
        Option         "NvAGP" "1"
        Option         "NoLogo"
        Option         "PixmapCacheSize" "2500000"
        Option         "AddARGBGLXVisuals" "true"
        Option         "OnDemandVBlankInterrupts" "true"
  • и в самом конце этого файла добовляем:
Section "Extensions"
        Option         "Composite" "enable"
EndSection

4) Затем сохраняем этот файл и перезагружаем компьютер.

Проверенно на Ubuntu 9.10 и 10.04 с видеокартой nVidia MX 440.


Тестировал на видеокарте nVidia MX 440 64 мегабайта. На ней без проблем заработал compiz на максимальных эффектах. Удалось даже под wine запустить игру «Need for speed Most Wanted» с минимальной детализацией и разрешением, работала без проблем.

Установка драйвера на Ubuntu 11.04, 11.10, 12.04. 1) Установка старого Xorg

О том как это сделать вы можете посмотреть здесь.

Установка драйвера на Ubuntu 11.04, 11.10, 12.04. 2) Применение патчей для обеспечения совместимости старого драйвера nVidia с 3 ядром Linux

Данная инструкция еще полностью не сделана, все делайте на свой риск и страх.
Если у вас Ubuntu версии 11.10 и старше, вам может понадобится установить старую версию ядра linux 2.6 т.к третье ядро linux не поддерживается старыми драйверами nVidia. И Ubuntu 12.04 вряд ли будет работать со вторым ядром. Но есть другой вариант: для того чтобы чтобы драйвер работал, вам нужно либо скомпилировать ядро с применением специальных патчей.

Патч для драйвера Nvidia-96.43.19

--- a/NVIDIA-Linux-x86-96.43.19-pkg0/usr/src/nv/conftest.sh      2011-07-30 12:24:39.770031044 -0400
+++ b/NVIDIA-Linux-x86-96.43.19-pkg0/usr/src/nv/conftest.sh      2011-07-30 12:25:49.059315428 -0400
@@ -77,7 +77,7 @@
 build_cflags() {
     ARCH=`uname -m | sed -e 's/i.86/i386/'`

-    BASE_CFLAGS="-D__KERNEL__ \
+    BASE_CFLAGS="-O2 -D__KERNEL__ \
 -DKBUILD_BASENAME=\"#conftest$$\" -DKBUILD_MODNAME=\"#conftest$$\" \
 -nostdinc -isystem $ISYSTEM"
@@ -123,7 +123,7 @@
     CFLAGS="$BASE_CFLAGS $MACH_CFLAGS $OUTPUT_CFLAGS -I$HEADERS $AUTOCONF_CFLAGS"
 
     if [ "$ARCH" = "i386" -o "$ARCH" = "x86_64" ]; then
-        CFLAGS="$CFLAGS -I$SOURCES/arch/x86/include"
+        CFLAGS="$CFLAGS -I$SOURCES/arch/x86/include -I$SOURCES/arch/x86/include/generated"
     fi
     if [ -n "$BUILD_PARAMS" ]; then
         CFLAGS="$CFLAGS -D$BUILD_PARAMS"

--- a/NVIDIA-Linux-x86-96.43.19-pkg0/usr/src/nv/nv-linux.h       2011-07-30 12:27:09.341819608 -0400
+++ b/NVIDIA-Linux-x86-96.43.19-pkg0/usr/src/nv/nv-linux.h       2011-07-30 12:27:28.854951411 -0400
@@ -30,7 +30,7 @@
 #  define KERNEL_2_4
 #elif LINUX_VERSION_CODE < KERNEL_VERSION(2, 6, 0)
 #  error This driver does not support 2.5 kernels!
-#elif LINUX_VERSION_CODE < KERNEL_VERSION(2, 7, 0)
+#elif LINUX_VERSION_CODE < KERNEL_VERSION(3, 6, 0)
 #  define KERNEL_2_6
 #else
 #  error This driver does not support development kernels!
@@ -80,7 +80,9 @@
 #if !defined(KERNEL_2_4)
 #include <linux/sched.h>            /* suser(), capable() replacement   */
 #include <linux/moduleparam.h>      /* module_param()                   */
-#include <linux/smp_lock.h>         /* kernel_locked                    */
+#if LINUX_VERSION_CODE < KERNEL_VERSION(2,6,38)
+#include <linux/smp_lock.h>	     /* For (un)lock_kernel */
+#endif
 #include <asm/tlbflush.h>           /* flush_tlb(), flush_tlb_all()     */
 #include <asm/kmap_types.h>         /* page table entry lookup          */
 #endif

Патч для драйвера Nvidia-173.14.31



Патч для драйвера Nvidia-290.10

Инфорация взята отсюда.



Установка ядра 2.6

Скачать его вы можете здесь. Вам нужно скачать три пакета: если 32 битная система то:

linux-headers-2.6.35-02063513-generic_2.6.35-02063513.201107261012_i386.deb
linux-headers-2.6.35-02063513_2.6.35-02063513.201107261012_all.deb
linux-image-2.6.35-02063513-generic_2.6.35-02063513.201107261012_i386.deb

если 64 битная система то:

linux-headers-2.6.35-02063513-generic_2.6.35-02063513.201107261012_amd64.deb
linux-headers-2.6.35-02063513_2.6.35-02063513.201107261012_all.deb
linux-image-2.6.35-02063513-generic_2.6.35-02063513.201107261012_amd64.deb

И сохраняете их в отдельной папке, например kernel. Затем открываете терминал, заходите в эту папку и вводите команду:

sudo dpkg -i *.deb

И перезагружаете компьютер.