====== Nvidia : Les pilotes ======
{{/file-R11c0121782dce29f35a24bb265099620.png?250}}
* Objet : Carte graphique NVIDIA.
* Niveau requis : {{tag>débutant avisé}}.
* Commentaires : //Installation d'une carte graphique NVIDIA. //
* Débutant, à savoir : [[:doc:systeme:commandes:le_debianiste_qui_papillonne|Utiliser GNU/Linux en ligne de commande, tout commence là !]] :-)
* Suivi : {{tag>à-tester à-compléter}}
* Pad collaboratif pour corriger le tuto à plusieurs : [[https://debian-facile.org/collab/p/tuto_nvidia | collab/p/tuto_nvidia]]
* Création par [[user>n3os]] le 06-09-2009.
* Mise à jour - le tatouilleur [[user>smolski]] - 26/08/2013 8-).
* Ratatouillé par [[user>chalu]] le 09/02/2018.
* Commentaires sur le forum : [[https://debian-facile.org/viewtopic.php?id=1755 | Lien vers le forum concernant ce tuto... Pur malt.]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !))
===== 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 :
* soit en tant que [[:doc:systeme:superutilisateur| root]],
* soit en tant qu'user.
Sous Debian Jessie, il existe plusieurs pilotes disponibles pour les cartes graphiques Nvidia :
* le pilote libre **nouveau**, gérant (parfois mal...) l'accélération graphique (particulièrement en 3D).
* le pilote propriétaire **nvidia** pour les cartes récentes (disponibles dans la sous-section [[doc:systeme:apt:sources.list|non-free et contrib]]).
* les pilotes propriétaires **nvidia legacy** pour les cartes plus anciennes (disponibles dans la sous-section non-free et contrib).
//À 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 [[:doc:systeme: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 lancez((en user)) 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 [[:doc:systeme:superutilisateur]] tapez et validez les lignes suivantes : \\
- pour les pilotes proprement dits :apt-get update && apt-get install xserver-xorg-video-nouveau
- 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 [[:doc:editeurs:nano|nano]] ainsi :
nano /etc/X11/xorg.conf
Et si elle n'y sont pas déjà, y écrire les lignes suivantes :
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 supprimez(([[:doc:systeme:apt:aptitude]])) 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 ====
- 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 :
- Passer en mode dépannage au démarrage du grub et "purger"((supprimer définitivement)) les pilotes nvidia installés :aptitude purge '~i nvidia'
- Supprimer le fichier xorg.conf créé :rm /etc/X11/xorg.conf
rm -r /etc/X11/xorg.conf.d
- 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 [[:doc:systeme:apt:sources.list|source.list]] contient bien les sections **contrib** et **non-free**, sinon les ajouter.
**ATTENTION !** \\
Au reboot vous risquez de vous retrouver en mode [[:doc:systeme: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 :
- soit utiliser un second PC connecté sur ce tuto,
- soit imprimer((utiliser les icônes en haut à droite pour avoir une version imprimable)) ce tuto,
- soit en noter soigneusement sur papier la procédure d'installation, avant de continuer.
- 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 [[:doc:systeme:apt:sources.list:debian|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
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 [[user>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: [[https://debian-facile.org/doc:systeme:apt:sources.list|APT : fichier sources.list]]
Éditons notre sources.list avec [[doc:editeurs:nano|nano]]
EDITOR=nano apt edit-sources
et rajoutons (si ce n'est pas déjà fait) les dépôts backports de Debian (cf [[:doc:systeme:apt:sources.list]]
Enregistrons (CTRL + o) et quittons [[doc:editeurs:nano|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ésirent((optionnel)) 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 : \\
* **cuda (version 6.0.37-5)** pour Jessie((à modifier selon l'évolution des versions dans jessie)) et
* **driver non-free (version 340.65-2)**.
//- Pourquoi cuda ?// demande **golgot200** sur le forum((Voir le lien dans l'entête de ce tuto)). \\
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 cuda((cuda si... cuda no... - Ok je sors... %%[ %%])) (version 6.0.37-5) pour Jessie et driver non-free (version 340.65-2) :
apt-get install nvidia-cuda-toolkit
Pour Wheezy, voir [[https://debian-facile.org/viewtopic.php?id=8989 |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"'' :
Option "RegistryDwords" "PowerMizerEnable=0x1; PerfLevelSrc=0x3322; PowerMizerDefaultAC=0x1"
Ce qui donne par exemple :
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 souhaitez((voir ci-dessus)).
=== 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 :
export __GL_YIELD="USLEEP"
export __GL_THREADED_OPTIMIZATIONS=1
Puis de rendre le fichier [[doc:systeme:chmod|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 :
* http://smxi.org/
pour l'installer votre carte graphique.\\
===== Nvidia Optimus =====
* [[:doc:materiel:cartes-graphique:nvidia:optimus | Installation d'une carte graphique Nvidia couplée à une carte graphique intégrée Intel (Nvidia Optimus)]]
===== Overclocking =====
* [[:doc:materiel:cartes-graphique:nvidia:overclocking | Overclocker sa carte Nvidia]]
===== Liens utiles =====
* [[https://wiki.debian.org/SecureBoot#Making_DKMS_modules_signing_by_DKMS_signing_key_usable_with_the_secure_boot]]
* [[https://wiki.archlinux.org/index.php/NVIDIA | Tuto Nvidia sur Archlinux]]
* [[http://www.jeuxlinux.fr/article_print-199.html | Overclock et optimisations pour cartes Nvidia]]
* [[http://nouveau.freedesktop.org/wiki/CodeNames/|Nomenclatures des carte Nvidia]]
* [[https://wiki.debian.org/fr/NvidiaGraphicsDrivers|Wiki Debian - Nvidia]]
* [[http://askubuntu.com/questions/456355/have-tearing-no-vsync-in-movies-nvidia-proprietary-driver|Cisaillement de l'image (Ask Ubuntu)]]