Selon les tags présents sur cette page, celle-ci n'a pas été vérifiée pour une des versions LTS supportées d'Ubuntu.
Apportez votre aide…

Ceci est une ancienne révision du document !


Rédigé par Lestat the vampire

Installation des drivers propriétaires NVIDIA

ATTENTION, ce n'est pas la méthode la plus simple pour installer les drivers nVidia !!

Si vous voulez une méthode simple, préférez l'installation grâce aux paquets décrite sur cette page.

Cette page est faite pour vous si:

  • vous avez des bugs avec l'ancienne version
  • vous disposez d'une carte très récente qui n'est pas supportée par la version des drivers disponible dans le paquet nvidia-glx
  • vous voulez absolument installer la dernière version des drivers pour tirer le meilleur de votre carte graphique

Ce tutoriel vous explique comment installer les drivers propriétaires fournis par nVidia. Il fonctionne quelque soit la version des drivers que vous souhaitez installer (je décris ici la procédure pour la dernière version), et quelque soit l'architecture (32 bits ou AMD64) ou l'optimisation de votre noyau.

Vérifier le matériel

  • Il vous faut déjà vérifier que vous disposez bien d'une carte graphique contenant un GPU nVidia. La procédure est expliquée sur cette page.
  • Vous pouvez installer ces drivers si votre carte graphique est récente ou si elle se trouve dans cette liste du matériel supporté fournie par nVidia.
  • Les anciennes cartes graphiques nVidia (voir la liste ci-dessous) ne sont plus supportées par les derniers drivers fournis par nVidia. Si vous disposez de ces anciens GPU, il vous faudra installer les drivers nommés LEGACY disponibles ici en vous aidant du tutoriel suivant.

Liste du matériel non supporté (mais supporté par les legacy) :

TNT2
TNT2 Pro
TNT2 Ultra
TNT2 Model 64 (M64)
TNT2 Model 64 (M64) Pro
Vanta
Vanta LT
GeForce 256
GeForce DDR
GeForce2 GTS
GeForce2 Pro
GeForce2 Ti
GeForce2 Ultra
GeForce2 MX Integrated graphics
Quadro
Quadro2 Pro
Quadro2 EX

ATTENTION ! Les derniers drivers 9629 contiennent un bug pour toutes les cartes à base de NV2x (GeForce 3 et 4) !! Pour les possesseurs de ces cartes, nvidia recommande d'installer les 8776 ou les 9626.

Télécharger les derniers drivers

Télécharger la dernière version des drivers pour votre architecture sur le site d'nVidia. Actuellement, nous sommes à la Version: 1.0-9629.
Pour la version 32 bits, télécharger le fichier nommé NVIDIA-Linux-x86-1.0-9629-pkg1.run sur cette page.
Pour la version AMD64, télécharger le fichier NVIDIA-Linux-x86_64-1.0-9629-pkg2.run sur cette page.

Désinstallation d'autres drivers nvidia

  • Il est fortement conseillé d'installer ces drivers sur un système propre et sur le noyau optimisé que vous souhaitez utiliser. Installer donc le noyau optimisé pour votre système et booter dessus.
  • Si une autre version des drivers nvidia est présente sur votre système, il faut en éliminer toute trace sinon, vous risquez d'avoir des conflits entre les différentes versions ou avec des modules déjà existants et/ou chargés dans le système.
    • Si vous avez déjà installé une autre version des drivers propriétaires nvidia, désinstallez-les préalablement (voir plus bas la procédure).
    • Si vous avez installé les paquets d'Ubuntu en suivant l'autre méthode. Il faut désinstaller tous les paquets contenant du nvidia (nvidia-glx, nvidia-settings, tout ce qui commence par « nvidia-kernel » et supprimer aussi les « linux-restricted-modules » correspondant au noyau utilisé car il contiennent des morceaux d'nVidia eux aussi). Donc, entrer en console :
sudo apt-get --purge remove nvidia-glx nvidia-glx-legacy nvidia-settings nvidia-kernel-common linux-restricted-modules-`uname -r` linux-restricted-modules-common
sudo rm /etc/init.d/nvidia-*

Penser à modifier votre fichier /etc/X11/xorg.conf et remettez "nv" à la place de "nvidia" pour ne pas vous retrouver sans interface graphique au démarrage.

A ce stade, il ne devrait rester aucun signe d'un quelconque driver nVidia. Rebootez pour être sûr de charger le driver libre au démarrage.

Note

Comme vous l'avez remarqué, cette procédure entraine la désinstallation des restricted-modules. Si vous utilisez une carte wifi qui a besoin des restricted-modules pour fonctionner, cette méthode d'installation des drivers nvidia est déconseillée. Néanmoins, vous pouvez quand même utiliser la procédure décrite à la section 11 de cette page (en anglais).

Installer les paquets suivants

Pour réaliser la compilation du driver, il nous faut installer les paquets build-essential, linux-source, les linux-headers correspondant strictement au noyau utilisé et enfin xserver-xorg-dev.
Donc, taper dans un terminal :

sudo aptitude install build-essential linux-source linux-headers-`uname -r` xserver-xorg-dev

Sauvegarde du fichier de configuration du serveur X

Si votre affichage graphique fonctionne correctement à ce stade, je vous conseille donc de sauvegarder le fichier xorg.conf, de manière à pouvoir le restaurer si jamais l'installation échoue par la suite.

sudo cp /etc/X11/xorg.conf /etc/X11/xorg.conf.backup

(Pour restaurer l'ancien fichier en cas de plantage, tapez la commande inverse : sudo cp /etc/X11/xorg.conf.backup /etc/X11/xorg.conf)

Passer en mode console sans interface graphique

Fermer votre session. Une fois la session fermée, appuyer sur Ctrl-Alt-F1 pour basculer en mode console plein écran, se loguer, et entrer :

sudo /etc/init.d/gdm stop           #(ou sudo /etc/init.d/kdm stop si vous utilisez KDE)

Compiler le driver

Le système est maintenant prêt pour la compilation du driver. Commençons par se placer dans le répertoire où on a téléchargé le driver puis il ne reste plus qu'à lancer l'installateur fourni par nvidia qui fera tout le boulot :

cd répertoire_où_se_trouve_le_fichier_téléchargé
sudo sh NVIDIA-Linux-x86-1.0-9629-pkg1.run            #(pour la version 32bits)
sudo sh NVIDIA-Linux-x86_64-1.0-9629-pkg2.run         #(pour la version amd64)

Le programme va vous poser certaines questions :

  • Ne pas télécharger un module précompilé sur le ftp de nVidia (de toute façon, il n'en trouvera pas !), l'installateur décidera donc de compiler le module lui-même (ça tombe bien, c'est ce qu'on veut !).
  • Sur une version 64 bits, ne pas installer les librairies OpenGL32bit.
  • Enfin, une fois la compilation terminée, l'installateur nous demande s'il peut configurer automatiquement le serveur X (c'est en fait l'utilitaire nvidia-xconfig), je vous conseille fortement de répondre "oui" à moins de savoir exactement ce que vous faites !! Si vous répondez "non", vous devrez alors configurer manuellement votre fichier xorg.conf (voir le paragraphe suivant).

Pour les plus experts : vous pouvez afficher les nombreuses options de l'installateur en tapant :

sh NVIDIA-Linux-x86-1.0-9629-pkg1.run --advanced-options

Sous Breezy

Le problème avec Breezy, c'est que son noyau a été compilé avec la version 3.4 de gcc alors que le système fourni par défaut la version 4.0. Il nous faut donc installer cette version spécifique de gcc puis ensuite indiquer au système que nous souhaitons utiliser la version 3.4 de gcc pour compiler le driver et non la 4.0. Tapez donc :

sudo apt-get install gcc-3.4

puis, juste avant de lancer la compilation, tapez :

export CC=gcc-3.4

Sous Edgy

Le problème sous Edgy, c'est qu'il y a déjà des versions précompilés des drivers nVidia, mais c'est une ancienne version (la 7184, je crois). Donc il y a conflit, et le kernel doit choisir! Et dans ce cas précis, pas de bol, il choisit l'ancien drivers. Au final, le kernel s'attend à du 9629 comme on lui a dit précédemment en compilant le driver et on lui donne du 7184… Il est pas content, il chouine et du coup Xorg nous fait un écran bleu!

Chose étrange, juste après l'installation des drivers nVidia, le serveur X se lance bien lorsque l'on tape la commande:

sudo /etc/init.d/gdm restart

Par contre, au redémarrage du PC, ça ne marche plus…

Mais tout n'est pas perdu! Il y a une solution! Il suffit de commenter deux lignes au tout début du fichier /lib/modules/2.6.17-10-generic/modules.alias comme ceci:

#alias char-major-195-* nvidia_legacy
#alias pci:v000010DEd*sv*sd*bc03sc00i00* nvidia_legacy

Configurer le fichier xorg.conf manuellement

(Passez cette étape si vous avez répondu "oui" à la configuration automatique du serveur X, vous pouvez quand même vérifier ce qui suit)

sudo nano /etc/X11/xorg.conf

Dans la Section « Module » : Commenter les lignes Load "dri" et Load “Glcore” si elles existent et ajouter la ligne Load "glx" si elle n'existe pas. On doit avoir un fichier qui doit ressembler à ceci (c'est un extrait de mon fichier, le vôtre peut être légèrement différent) :

Section "Module"
Load "bitmap"
Load "dbe"
Load "ddc"
#Load "dri"
#Load “GLcore”
Load "extmod"
Load "freetype"
Load "glx"
Load "int10"
Load "record"
Load "type1"
Load "vbe"

Dans la Section « Device » : Remplacer la ligne Driver "nv" par Driver "nvidia".

Section "Device"
      Identifier      "Le_nom_de_votre_carte_graphique_nvidia"
      Driver          "nvidia"
      BusID           "le_busid_de_votre_carte"
EndSection

Faire Ctrl+O pour sauvegarder et Ctrl+X pour quitter.

Pour plus d'informations ou pour activer d'autres options pour les drivers, lire le README fournit par nVidia.

Rédémarrer la session graphique

sudo /etc/init.d/gdm start          #(ou sudo /etc/init.d/kdm start si vous utilisez KDE)

Le logo nVidia doit apparaitre au démarrage de X (il est souvent nécessaire de redémarrer la machine pour faire apparaître ce fameux logo).

  • N'oubliez pas de cocher la case "enregistrer la configuration actuelle" (Système > Clore la session) avant d'éteindre la machine !

En cas de plantage de X au démarrage, vous pouvez toujours revenir à votre précédente configuration car vous avez sauvegardé votre fichier de configuration (voir plus haut).

Note importante

En cas de changement de noyau ou de mise-à-jour de celui-ci, le serveur X plantera. En effet, comme tout logiciel compilé avec les headers, il vous faudra recommencer cette procédure à chaque changement ou mise-à-jour de votre noyau !! N'oubliez pas d'installer les headers du nouveau noyau.

Une fois l'interface graphique démarrée, vous pouvez effectuer quelques réglages de votre driver grâce à une interface graphique.
Allez dans Applications→Outils Système et cliquez sur "NVIDIA X Server Settings" pour une configuration avancée (vous pouvez aussi taper nvidia-settings dans un terminal pour obtenir la même chose).

Pour désinstaller ces drivers officiels, repassez en mode console plein écran et stoppez gdm comme expliqué plus haut puis placez-vous dans le répertoire où est téléchargé le fichier et taper :

cd répertoire_où_est_le_driver_.run
sudo sh NVIDIA-Linux-x86-1.0-9629-pkg1.run --uninstall             #pour la version 32 bits
sudo sh NVIDIA-Linux-x86_64-1.0-9629-pkg2.run --uninstall          #pour la version amd64
  • Tutos en anglais pour l'installation des drivers nvidia sous Dapper et sous Edgy.

ATTENTION : cette méthode est encore expérimentale !

L'installation automatique des derniers drivers nvidia stables passe par l'utilisation d'un script nommé ENVY. Ce sript est fourni par un paquet .deb et s'occupe de télécharger automatiquement le dernier driver nvidia selon votre carte graphique et votre architecture ainsi que les dépendances requises pour leur installation, ensuite il modifie automatiquement le xorg.conf. Ce script peut aussi être utilisé pour désinstaller les drivers.
Fonctionne sous Dapper et Edgy.

Prérequis

Lancer le script

  • Déconnectez votre session et appuyez sur CTRL+ALT+F1 pour vous retrouver en console plein écran
  • Entrez votre login et votre mot de passe
  • tapez :
    envy
  • laissez vous guider et répondez aux questions du programme
  • Démarrez X

Voilà, vous avez installé les derniers drivers nVidia sur votre distribution préférée !

Notes
  • Il est préférable d'utiliser envy pour désinstaller les drivers qu'il a lui même installé.

Plus d'infos sur envy sur le site de son développeur : http://albertomilone.com/nvidia_scripts1.html

Pour les testeurs acharnés ;) il existe aussi des drivers nvidia Beta qui apportent un certain nombre de nouvelles fonctionnalités (notamment le support des toutes dernières GeForce 8800). A ce jour, ces drivers Beta en sont à la version 1.0-9742.
Plus d'infos sur cette page : http://www.nzone.com/object/nzone_downloads_linux_display_x86_1.0-9742.html. Je le répéte, ce sont des drivers BETA !! donc ils peuvent bugger !! Je ne fais donc pas de support sur ces drivers !

  • materiel/nvidia.run.1164563975.txt.gz
  • Dernière modification: Le 18/04/2011, 14:48
  • (modification externe)