Contenu | Rechercher | Menus

nVidia

Installation manuelle des pilotes propriétaires NVIDIA

ATTENTION, ce n'est pas la méthode la plus simple pour installer les pilotes nVidia ! Si vous êtes débutant ou si vous voulez une méthode simple, préférez l'installation grâce aux paquets précompilés décrite sur cette page.

Cette page est faite pour vous si :

  • vous disposez d'une version 11.04 ou plus ;
  • vous avez des bogues avec la version des pilotes disponible dans les dépôts ;
  • vous disposez d'une carte très récente qui n'est pas prise en charge par la version des pilotes disponible dans les dépôts ;
  • vous voulez absolument installer la dernière version des pilotes pour tirer le meilleur de votre carte graphique ou tester les derniers pilotes en version bêta.

Cette page vous explique comment installer les pilotes propriétaires fournis par Nvidia sur son site.

Pré-requis

D'abord, installons les paquets nécessaires :

sudo apt-get install build-essential linux-headers-`uname -r` xserver-xorg-dev dkms

Ensuite, il faut vérifier que vous disposez bien d'une carte graphique contenant un GPU Nvidia. La procédure est expliquée sur cette page.

Même si nous les désinstallerons juste après, installez les drivers Nvidia propriétaires depuis les dépôts (c'est important !).

Par défaut, Ubuntu utilise un pilote nommé nouveau. Ce pilote entrera en conflit lorsque nous installerons le pilote Nvidia en .run, il est donc nécessaire de le désactiver. Dans le terminal, tapez :

sudo echo "blacklist nouveau" >> /etc/modprobe.d/blacklist-nouveau.conf
sudo echo "options nouveau modeset=0" >> /etc/modprobe.d/blacklist-nouveau.conf

Si vous obtenez "Permission non-accordée", essayer en root, sans sudo :

su
#tapez votre mot de passe
echo "blacklist nouveau" >> /etc/modprobe.d/blacklist-nouveau.conf
echo "options nouveau modeset=0" >> /etc/modprobe.d/blacklist-nouveau.conf
exit

Explication : Le shell pense que la redirection s'applique au sudo et non au echo.

J'ai dû exécuter

update-initramfs -u

pour désactiver le module

Ensuite, redémarrez votre ordinateur (j'insiste bien là-dessus).

Une fois l'ordinateur redémarré et la session ouverte, on efface les pilotes Nvidia (pour éviter des conflits avec le nouveau), en tapant dans le terminal :

sudo apt-get remove --purge nvidia*

Télécharger les derniers pilotes

Rendez-vous à cette page : http://www.nvidia.fr/Download/index.aspx?lang=fr, et téléchargez le pilote approprié à votre matériel.

Installation

Passer en mode console sans interface graphique

Faites [Ctrl+Alt+F1] pour basculer en mode console. Loguez-vous avec votre nom d'utilisateur et mot de passe habituels.

Si vous avez Ubuntu, tapez :

sudo /etc/init.d/lightdm stop

Si vous avez Kubuntu, tapez :

sudo /etc/init.d/kdm stop

Si vous avez Lubuntu, tapez :

sudo /etc/init.d/lxdm stop

Si vous avez Linux Mint, tapez :

sudo /etc/init.d/mdm stop

Si la manipulation ci-dessus ne fonctionne pas, faites :

Si vous avez Ubuntu :

sudo killall lightdm

Si vous avez Kubuntu :

sudo killall kdm

Si vous avez Lubuntu :

sudo killall lxdm

Si vous avez Linux Mint :

sudo killall mdm

Pour Ubuntu 9.10 Karmic Koala (pour ceux qui rencontrent des problèmes) : redémarrez votre ordinateur et sélectionner le "recovery mode" au menu du grub. Si vous n'avez pas le menu grub, maintenez la touche shift au démarrage. Après quelques instants, une boite de dialogue apparaîtra : choisissez la ligne de commande en Root (avec ou sans le réseau) et tapez :

telinit 3

avec cette solution le système sera lancé sans gdm ou kdm.

L'installation en question

Allez dans le dossier où vous avez téléchargé le pilote (par défaut ~/Téléchargements) :

 
cd ~/Téléchargements        

Rendez le script nvidia exécutable :

chmod +x NVIDIA-Linux-*

Exécutez le script nvidia avec les droits superutilisateur :

sudo ./NVIDIA-Linux-*

L'installation se lance. Acceptez la licence affichée au début (de toute façon, vous n'avez pas le choix).

Répondez Yes s'il vous demande :

The distribution-provided pre-install script failed ! Continue anyway ?

Répondez Yes s'il vous demande :

Would you like to run the nvidia-xconfig utility [...] ?

Répondez Yes s'il vous demande :

Install NVIDIA's 32-bit compatibility OpenGL libraries ?

Et faites Ok lorsqu'il vous dira que l'installation est terminée.

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

./NVIDIA-Linux-* --advanced-options

Configurer le fichier xorg.conf manuellement (optionnel)

(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"

Vous pouvez aussi supprimer la section "DRI" qui ne sera plus utilisée.

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 pilotes, lire le README fourni par Nvidia.

Redémarrer la session graphique

Si vous utillisez Kubuntu :

sudo /etc/init.d/kdm start

Si vous utillisez Lubuntu :

sudo /etc/init.d/lxdm start

Si vous utillisez Ubuntu :

sudo /etc/init.d/lightdm start

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).

En cas de mise à jour du serveur X (paquet xserver-xorg-core) ou de changement de noyau ou de mise à jour de celui-ci (paquet linux-image-xxx), 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 pour compiler les nouveaux modules NVIDIA.
Nota : Pour éviter des problèmes lors d'un changement de noyau, vous pouvez automatiser la procédure de recompilation : Compilation automatique des pilotes nvidia.run lors des mises a jour de noyau (kernel Linux)

Configuration

Configuration avancée

Une fois l'interface graphique démarrée, vous pouvez effectuer quelques réglages de votre pilote grâce à une interface graphique.
Allez dans Applications → Outils Système et cliquez sur « NVIDIA X Server Settings » pour une configuration avancée.

Si vos paramètres ne sont pas enregistrés, dans un terminal, tapez :

gksudo nvidia-settings   # si vous avez gnome ou xfce
kdesudo nvidia-settings  # si vous avez KDE

nvidia-settings

Configuration SLI

Il semblerait que depuis Ubuntu 8.10 la détection des cartes lors de l'installation du pilote échoue

Une page est dédié à ce problème : Nvidia et SLI

Options d'optimisation

La mise en place de ces éléments est totalement optionnelle.

Activation du AGP FW et SBA

Il faut d'abord s'assurer que le chipset et la carte graphique supportent l'AGP FW et SBA.

Il est utile de vérifier dans le BIOS du PC si il y a une référence aux AGP FW/SBA activables pour le chipset.

Pour des raisons évidentes de stabilité, nVidia a désactivé le support du Fast Writes (FW) et du Side Band Addressing (SBA) dans son pilote. De plus, le gain en performance n'est pas garanti et dépend d'un système à l'autre.

En cas de doute, il est possible, a posteriori, de connaître la compatibilité de votre système. Il faut d'abord installer le pilote normalement, comme indiqué plus bas.

Ensuite, la compatibilité de la carte est révélée par la commande :

cat /proc/driver/nvidia/agp/card

La compatibilité du chipset est indiquée par:

cat /proc/driver/nvidia/agp/host-bridge

Note: la désinstallation du pilote d'origine ayant servi pour ce test préalable sera prise en compte dans ce qui suit.

Si votre chipset est compatible, il est possible d'activer définitivement ce support dans le module (hard-coded).

Il faut pour cela décompresser l'archive du pilote afin de modifier un fichier source.

Note : le cas de deux pilotes 32 bits est traité mais la modification est similaire pour les versions 64 bits.

NVIDIA-Linux-x86-100.14.19-pkg1

sh NVIDIA-Linux-x86-100.14.19-pkg1.run  --extract-only
cd NVIDIA-Linux-x86-100.14.19-pkg1

Ouvrir le fichier "os-registry.c"

nano usr/src/nv/os-registry.c

Chercher et modifier (selon le support de votre chipset) les lignes contenant les chaînes suivantes :

static int NVreg_EnableAGPSBA = 0;
static int NVreg_EnableAGPFW = 0;

Pour activer, il suffit de changer le (ou les) « 0 » en « 1 ». Sauvegarder le fichier.

NVIDIA-Linux-x86-169.07-pkg1

sh NVIDIA-Linux-x86-169.07-pkg1.run  --extract-only
cd NVIDIA-Linux-x86-169.07-pkg1

Ouvrir le fichier "nv-reg.h"

nano usr/src/nv/nv-reg.h

Chercher et modifier (selon le support de votre chipset) les lignes contenant les chaînes suivantes :

NV_DEFINE_REG_ENTRY(__NV_ENABLE_AGPSBA, 0);
NV_DEFINE_REG_ENTRY(__NV_ENABLE_AGPFW, 0);

Pour activer, il suffit de changer le (ou les) « 0 » en « 1 ».

pour les deux versions

Optionnel : Vérification de la présence d'une version antérieure du pilote nVidia :

sudo ./nvidia-installer -i

Si c'est le cas, on désinstalle avec :

sudo ./nvidia-installer --uninstall

On compile et installe ensuite avec :

sudo ./nvidia-installer [-a]

Note : le -a est optionnel. Il permet d'accepter implicitement l'accord de licence nVidia.

Après un redémarrage du système, l'activation est vérifiable grâce à la commande:

cat /proc/driver/nvidia/agp/status

Remarque : le fichier .run peut toujours être utilisé pour une désinstallation. Toutefois, comme décrit par la suite, une nouvelle installation avec ce dernier se fera, bien entendu, sans support AGP FW/SBA.

Désinstallation du pilote

Pour désinstaller ces pilotes propriétaires, repassez en mode console plein écran et stoppez lightdm comme expliqué plus haut puis placez-vous dans le répertoire où a été téléchargé le fichier (par défaut ~/Téléchargements) :

cd ~/Téléchargements
sudo ./NVIDIA-Linux-* --uninstall

Liens



Le contenu de ce wiki est sous licence : CC BY-SA v3.0