Table des matières

Nvidia : Les pilotes

Installation des pilotes de la carte graphique

Ce tuto concerne l'administration de votre système et doit être exécuté respectueusement sous le statut indiqué automatiquement pour chaque commande :

Sous Debian Jessie, il existe plusieurs pilotes disponibles pour les cartes graphiques Nvidia :

À vous de sélectionner le pilote fonctionnant le mieux.
Par défaut, c'est nouveau qui est installé.

Un seul de ces pilotes doit être installé en même temps !

Pilote

Pour déterminer le pilote, utilisez la commande grep ainsi :

grep -B2 'Module class: X.Org Video Driver' /var/log/Xorg.0.log

Carte graphique

Pour déterminer la carte graphique vous installez l'outil nvidia-detect ainsi :

apt-get install nvidia-detect

Puis vous lancez2) cette commande pour connaître la dénomination de votre carte graphique et si elle est compatible avec Debian Jessie :

nvidia-detect

Le pilote libre : Nouveau

Installation

Dans un terminal superutilisateur tapez et validez les lignes suivantes :

  1. pour les pilotes proprement dits :
    apt-get update && apt-get install xserver-xorg-video-nouveau
  2. pour l'accélération graphique :
    apt-get install libgl1-mesa-glx libgl1-mesa-dri
Certaines machines nécessitent l’installation supplémentaire du paquet firmware-misc-nonfree. Ce peut-être par exemple le cas si vous rencontrez des problèmes de résolution d’affichage, ou de performance

Configuration

Normalement, il n'y a rien à faire.

Si le pilote n'a pas été choisi par défaut, créez et éditez un fichier /etc/X11/xorg.conf avec nano ainsi :

nano /etc/X11/xorg.conf

Et si elle n'y sont pas déjà, y écrire les lignes suivantes :

Extrait de /etc/X11/xorg.conf
Section "Device"
Identifier	"Video Card"
Driver		"nouveau"
EndSection

Le valeur du champ Identifier peut varier suivant le système (vous pouvez mettre le nom de votre carte Graphique ou autre identifiant…)

Plus qu'un petit reboot des familles et voilà ! :-D

Conflits avec les pilotes propriétaires

Si vous avez installé les pilotes propriétaires, il risque fort d'y avoir conflit, notamment au niveau de l'accélération graphique.
Pour résoudre ce problème supprimez3) les installations précédentes ainsi :

apt-get remove nvidia-driver nvidia-glx nvidia-kernel-dkms xserver-xorg-video-nvidia

Écran noir au redémarrage

  1. Si vous avez un écran noir après une installation incomplète des pilotes propriétaires et que vous souhaitez revenir aux pilotes debian d'origine :
  2. Passer en mode dépannage au démarrage du grub et “purger”4) les pilotes nvidia installés :
    aptitude purge '~i nvidia'
  3. Supprimer le fichier xorg.conf créé :
    rm /etc/X11/xorg.conf
    rm -r /etc/X11/xorg.conf.d
  4. Et vérifier que le nouveau pilote est bien installé (cf. plus haut : commande 'grep' en mode user)

Tout devrait alors rentrer dans l'ordre au prochain redémarrage.

Pilotes propriétaires Nvidia avec DKMS

dkms est un système de gestion de module recompilant chaque module installé séparément à chaque installation de noyau, c'est le système conseillé.
Pour installer un logiciel propriétaire depuis les dépôts Debian. Vérifiez d'abord que votre source.list contient bien les sections contrib et non-free, sinon les ajouter.
ATTENTION !
Au reboot vous risquez de vous retrouver en mode console, sans plus accès au serveur graphique (xorg), perdant ainsi l'usage habituel des outils graphiques comme la souris et le copié/collé par exemple !

Préalable :

  1. soit utiliser un second PC connecté sur ce tuto,
  2. soit imprimer5) ce tuto,
  3. soit en noter soigneusement sur papier la procédure d'installation, avant de continuer.
  4. soit éditer ce tuto en pdf et l'avoir sous la main.

Mettre à jour le système pour utiliser le dernier noyau disponible

apt-get update && apt-get upgrade

Si dans les paquets mis à jour se trouve un (ou plusieurs) paquet(s) dont le nom commence par linux-image-xxx, redémarrer le PC pour utiliser la dernière version du noyau.

Installation du paquet linux-headers correspondant au noyau

La commande ci-dessous vous indiquera si vous utilisez un système amd64 ou 686-pae ou 686

uname -a

suivant le retour installer le paquet linux-headers-amd64 ou linux-headers-686-pae ou linux-headers-686

apt-get install linux-headers-xxx

remplacer xxx par ce qui convient pour votre système

Identification et installation du driver propriétaire

Il faut commencer par ajouter les sections contrib et non-free au sources.list
Ensuite 

apt-get update && apt-get install nvidia-detect
nvidia-detect

Le retour de cette dernière commande va indiquer le driver propriétaire à installer dans la dernière ligne It is recommended to install the xxx

Si le retour est du type :
Detected NVIDIA GPUs:
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation G72 [GeForce 7200 GS / 7300 SE] [10de:01d3] (rev a1)
Checking card:  NVIDIA Corporation G72 [GeForce 7200 GS / 7300 SE] (rev a1)
Your card is only supported up to the 304 legacy drivers series.
It is recommended to install the
    nvidia-legacy-304xx-driver

On installe le pilote avec la commande :

apt-get install nvidia-legacy-304xx-driver

Sur une configuration classique/standard de Debian, cette commande installe tous les paquets nécessaires. Si un fichier de configuration a été créé pour ne pas installer les paquets recommandés, on ajoute dans la commande les deux paquets suivants nvidia-settings-legacy-304xx et nvidia-persistenced

Si le retour est du type :
Detected NVIDIA GPUs:
03:00.0 VGA compatible controller [0300]: NVIDIA Corporation ION VGA [10de:087d] (rev b1)
Checking card: NVIDIA Corporation ION VGA (rev b1)
Your card is only supported up to the 340 legacy drivers series.
It is recommended to install the
nvidia-legacy-340xx-driver

On installe le pilote avec la commande :

apt-get install nvidia-legacy-340xx-driver

Sur une configuration classique/standard de Debian, cette commande installe tous les paquets nécessaires. Si un fichier de configuration a été crée pour ne pas installer les paquets recommandés, on ajoute dans la commande les deux paquets suivants nvidia-settings-legacy-340xx et nvidia-persistenced

Si le retour de la commande nvidia-detect est du type :
Detected NVIDIA GPUs:
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation GM206 [GeForce GTX 960] [10de:1401] (rev a1)
Checking card:  NVIDIA Corporation GM206 [GeForce GTX 960] (rev a1)
Your card is supported by the default drivers.
It is recommended to install the
    nvidia-driver 
package.

On installe le pilote avec la commande :

apt-get install nvidia-driver 

Sur une configuration classique/standard de Debian, cette commande installe tous les paquets nécessaires. Si un fichier de configuration a été crée pour ne pas installer les paquets recommandés, on ajoute dans la commande les deux paquets suivants nvidia-settings et nvidia-persistenced

Depuis Debian Stretch, il n'est plus nécessaire de faire un fichier de configuration, il suffit de redémarrer le PC pour blacklister automatiquement le pilote nouveau et utiliser le pilote propriétaire.

Pour les versions de Debian avant Debian 9 (Stretch) (ou atypiques) avant de redémarrer le PC, il faut créer un fichier de configuration xorg.conf :
avec nano éditez le fichier /etc/X11/xorg.conf ainsi :

nano /etc/X11/xorg.conf
Extrait de /etc/X11/xorg.conf
Section "Device"
Identifier	"Video Card"
Driver		"nvidia"
Option          "NoLogo"                    "1"
Option          "RenderAccel"               "1"
EndSection

Le valeur du champ Identifier peut varier suivant le système (vous pouvez mettre le nom de votre carte graphique ou autre…)
Pour finir, redémarrez votre ordinateur, par exemple, en console utilisez simplement la commande :

reboot

Pilote graphique Nvidia récente installation via backports

Remarque: testé le 13.05.2018 par slyfox avec NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1)

Le dépôt Backports propose des paquets plus récents ou absents du dépôt principal. Ces paquets sont dérivés de la version de test et peuvent être installé sur une Debian stable. Il servira à ceux qui ont absolument besoin d’une version plus récente d’un logiciel, mais ne veulent pas compromettre la stabilité générale de leur système en migrant vers testing.

Pour plus d'informations sujet voici le lien du wiki: APT : fichier sources.list

Éditons notre sources.list avec nano

EDITOR=nano apt edit-sources

et rajoutons (si ce n'est pas déjà fait) les dépôts Backports de Debian (cf sources.list

Enregistrons (CTRL + O) et quittons nano (CTRL + X)

Mettons à jour notre sources.list

apt-get update

Et installons nos nouveaux paquets (exemple sous *stretch*)

apt-get install -t stretch-backports linux-headers-$(uname -r) nvidia-driver

Redémarrons notre ordinateur

reboot

cuda (version 6.0.37-5)

Pour ceux qui le désirent6) il existe dans la section non-free des paquets pour l'installation du cuda (Nvidia).

Actuellement les versions disponibles dans les dépôts debian Jessie pour les cuda et driver correspondants sont :

- Pourquoi cuda ? demande golgot200 sur le forum8).
cuda est pour Nvidia l'équivalent d'openGL pour Ati, si tu désires utiliser les fonctions cuda, par exemple pour les jeux ou le calcul scientifique, il te faut l'installer.

Nota :

Le .run du site Nvidia l'installe automatiquement, mais avec les dépôts debian il te faut entrer la commande comme indiqué sur le tuto (toutes les dépendances sont gérées en automatique et il y en a un paquet ! :-P ).
Selon le programme que tu utilises, il demandera openGL (compris dans le driver non-free) ou cuda qui est un système propriétaire de Nvidia.

Installation

Installation du cuda9) (version 6.0.37-5) pour Jessie et driver non-free  (version 340.65-2) :

apt-get install nvidia-cuda-toolkit

Pour Wheezy, voir ici les notes de golgot200

Questions fréquentes

PowerMizer

nvidia-settings

Pour régler PowerMizer automatiquement via nvidia-settings il suffit de configurer le gestionnaire de fenêtres pour qu'il lance au démarrage la commande suivante :

nvidia-settings --assign GPUPowerMizerMode=0

Où le chiffre 0 est à remplacer par le chiffre 1 pour le mode performances et par le 3 pour le mode adaptif.

xorg.conf

Il est possible que vous ne puissiez pas régler le paramètre PowerMizer via Nvidia Settings.
Dans ce cas, vous pouvez le faire directement depuis le xorg.conf ainsi :

Editez le fichier xorg.conf :

 nano /etc/X11/xorg.conf 

Et ajoutez la ligne suivante dans la section “Device” :

Extrait de /etc/X11/xorg.conf
Option  "RegistryDwords" "PowerMizerEnable=0x1; PerfLevelSrc=0x3322; PowerMizerDefaultAC=0x1"

Ce qui donne par exemple :

Extrait de /etc/X11/xorg.conf
Section "Device"
        Identifier  "Card0"
        Driver      "nvidia"
        BusID       "PCI:1:0:0"
        Option      "RegistryDwords" "PowerMizerEnable=0x1; PerfLevelSrc=0x3322; PowerMizerDefaultAC=0x1"
EndSection

Là encore, le chiffre 1 est à remplacer par la valeur que vous souhaitez10).

Options

D'autres options sont possibles (par exemple pour les ordinateurs portables) : http://wiki.etechnik-rieke.de/index.php/NVidia_PowerMizer (en)

cisaillement (tearing)

Le problème de cisaillement (tearing) de l'image est un bug connu du pilote propriétaire qui peut perturber la visualisation des vidéos, des animations de jeux, ou tout simplement le déplacement des fenêtres. \ Pour outrepasser ce bug, il suffit de créer le fichier :

touch /etc/profile.d/tearing.sh

et d'y ajouter les lignes suivantes :

Extrait /etc/profile.d/tearing.sh
export __GL_YIELD="USLEEP"
export __GL_THREADED_OPTIMIZATIONS=1

Puis de rendre le fichier exécutable ainsi :

chmod +x /etc/profile.d/tearing.sh
Pour appliquer ces changements, il est nécessaire de redémarrer le serveur X ou de redémarrer l'ordinateur.

Méthode alternative

Vous pourriez également utiliser :

pour l'installer votre carte graphique.

Nvidia Optimus

Overclocking

Liens utiles

1)
N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !
2)
en user
4)
supprimer définitivement
5)
utiliser les icônes en haut à droite pour avoir une version imprimable
6)
optionnel
7)
à modifier selon l'évolution des versions dans jessie
8)
Voir le lien dans l'entête de ce tuto
9)
cuda si… cuda no… - Ok je sors… [ ]
10)
voir ci-dessus