Re: Lenny et Nvidia

Top Page

Reply to this message
Author: Olivier Allard-Jacquin
Date:  
To: ML Guilde
New-Topics: acces au repertoire du serveur
Subject: Re: Lenny et Nvidia
    Bonsoir Hervé,

Hervé de Dianous a écrit :
> Re.Re B'jour !
> nvidia-kernel-source nvidia-glx introuvables pour Lenny ?
> devrais-je utiliser le :
> NVIDIA-Linux-x86_64-173.14.05-pkg1.run proprio ?


    Proprio ?


    Honnêtement, il n'y a pas trop de différence entre le binaire
auto-installable de NVIDIA, et le paquet debian, qui contient le même
blob binaire. C'est du proprio dans les deux cas...


> Mais là aussi PB : pas de linux-headers pour 2.6.24-1-amd64
> juste un générique linux-headers-2.6
> ou je dois upgrader le noyau en 2.6.25-2-amd64


    J'ai écris et posté il y a quelques mois un HOWTO qui explique comment
faire. Je le reposte ici.


    Ca marche très bien. Je l'ai encore utilisé pas plus tard que la
semaine dernière



-- 
~~~~~~~  _____/\_____  ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Phoenix /   _ \/ _   \    Olivier Allard-Jacquin
       /   / \  / \   \   Web:  http://olivieraj.free.fr/
      /___/  /  \  \___\  Mail: olivieraj@???
~~~~ /////  ///\\\  \\\\\ ~~~~~~~~~~~~~~~~~~~~~~~ Linux Powered !!

    Installation des drivers nVIDIA propriétaires
        sur une Debian testing
    en utilisant le binaire nVIDIA (NVIDIA-xxxxxx.run)
        et NON PAS les packages officiels Debian
            2008/05/28


L'intérêt de cette méthode est que :
- au jour où j'écris ces lignes, les derniers drivers nVIDIA ("100.14.19") NE sont PAS disponibles dans "Debian testing"
- les drivers nVIDIA propriétaires sont incompatibles avec le kernel par défaut de "Debian testing", du fait de l'utilisation de l'option "Paravirtualization support (EXPERIMENTAL)" (aka "CONFIG_PARAVIRT")
- le dernier kernel ("2.6.24-1") est compilé avec une version de GCC moins récente que celle fournit par "Debian testing"


# Mise à jour de la distribution :
aptitude update
aptitude full-upgrade


# Installation des packages de compiation :
aptitude install gcc make


# Installation des headers du kernel :
aptitude install linux-headers-2.6-686
Remarque:
- on utilise ici "linux-headers-2.6-686", mais cela peut ne pas être toujours le cas, notamment pour un kernel > 2.6, ou non-686 (amd64 par exemple)
- cette commande ne sert à rien, car le "NVIDIA-xxxxxx.run" ne pourra pas s'installer, du fait que la version gcc qui est installée (4.2) est différente de celle utilisé pour compiler le kernel (4.1). A cause de cela, il faudra donc compiler soit-même un kernel. C'est ce que nous voyons ci-dessous


# Installation des sources du kernel :
aptitude install linux-source-2.6.24


# Installation des outils/librairies de compilation du kernel et de xorg :
aptitude install pkg-config modutils module-init-tools kernel-package build-essential bzip2 xserver-xorg-dev


# Vérification de la non-installation des package nvidia Debian :
dpkg -l |grep -i nvidia
aptitude remove --purge nvidia-glx nvidia-kernel-common
Remarques :
- ' ls -la /etc/init.d/nvidia-glx /etc/init.d/nvidia-kernel ' doit ne RIEN retourner. Si ces fichiers existent, les supprimer


# Compilation du kernel :
  cd /usr/src
  tar xjf linux-source-2.6.24.tar.bz2
  ln -s linux-source-2.6.24 linux
  cd linux
  make menuconfig
    - Sélectionner la section "Processor type and features"
    - Décocher "Paravirtualization support (EXPERIMENTAL)"
    - Sélectionner "Exit"
    - Sélectionner "Exit"
    - Sauver le ".config"
    - "grep -i CONFIG_PARAVIRT .config" doit renvoyer "# CONFIG_PARAVIRT is not set"


make-kpkg clean
export CONCURRENCY_LEVEL=4
Remarque : Je configure la variable "CONCURRENCY_LEVEL=4", afin de pourvoir bénéficier des capacités multicore de mon processeur (option "-j 4" de "make")

make-kpkg --rootcmd fakeroot --initrd --revision nv.169.12.001 -stem linux kernel_image kernel_headers
Remarque : Le numero de révision ("nv.169.12.001", pour "nVIDIA / 169.12 / compilation 001) ne doit contenir QUE des caractères alphanumériques, des caractères + et . (voir à ce sujet, "man make-kpkg" et le paramètre "--revision"). Le nom du kernel créé sera alors : "2.6.24-nv.169.12.001"

cd ..
dpkg -i linux-image-2.6.24_nv.169.12.001_i386.deb linux-headers-2.6.24_nv.169.12.001_i386.deb


# Vérification de la bonne installation du kernel :
  ls -la /boot | grep 2.6.24
(les fichiers suivants doivent être présents :
config-2.6.24
initrd.img-2.6.24
vmlinuz-2.6.24
System.map-2.6.24
)
  dpkg -l |grep 2.6.24
(on doit trouver :
ii  linux-headers-2.6.24                 nv.169.12.001                 Header files related to Linux kernel, specif
ii  linux-image-2.6.24                   nv.169.12.001                 Linux kernel binary image for version 2.6.24
)


# Utilisation des packets compilés par moi-même :
Si vous voulez vous économiser la phase de compilation, je mets à disposition sur http://olivieraj.free.fr/temp/debian/ les paquets "kernel" et "headers" générés par la compilation d'aujourd'hui. Ils sont valables pour une confguration x86 (et NON PAS pour de l'AMD64 bit) :
- http://olivieraj.free.fr/temp/debian/linux-headers-2.6.22_nv.100.14.19.001_i386.deb
- http://olivieraj.free.fr/temp/debian/linux-image-2.6.22_nv.100.14.19.001_i386.deb
- http://olivieraj.free.fr/temp/debian/MD5SUM
Après le téléchargement, il faudra passer par l'étape :
dpkg -i linux-image-2.6.22_nv.100.14.19.001_i386.deb linux-headers-2.6.22_nv.100.14.19.001_i386.deb

# Reboot
Reboot de la machine
Au démarrage, sélectionnez le kernel nouveau "2.6.24" et non pas le kernel officiel ("2.6.24-1-686" par exemple)


# Télechargement et installation des drivers nVIDIA:
Aller sur http://www.nvidia.com/Download/index.aspx?lang=en-us , et télécharger le driver adéquat ("NVIDIA-Linux-x86-196.12-pkg1.run" dans mon cas)


# Installation du driver NVIDIA propriétaire
Femer toutes les application
Passer en mode console (Ctrl+Alt+F1)
Se loguer en root
Arrêter X:
- Si on utilise KDE: /etc/init.d/kdm stop
- Si on utilise Gnome: /etc/init.d/gdm stop
Installer le driver nVIDIA propriétaire :
bash NVIDIA-Linux-x86-196.12-pkg1.run
Redémarrer X :
- Si on utilise KDE: /etc/init.d/kdm start
- Si on utilise Gnome: /etc/init.d/gdm start
Au démarrage, un gros logo "nVIDIA" doit apparaître