Differences between revisions 1 and 88 (spanning 87 versions)
Revision 1 as of 2009-08-23 16:12:46
Size: 4743
Editor: DenisLaxalde
Comment:
Revision 88 as of 2017-03-06 21:49:26
Size: 20543
Editor: vauss
Comment: sync with English master
Deletions are marked like this. Additions are marked like this.
Line 2: Line 2:
||<tablestyle="width: 100%;" style="border: 0px hidden">~-[[fr/DebianWiki/EditorGuide#traduction|Traduction(s)]] : aucune-~||<style="text-align: right;border: 0px hidden"> (!) [[/Discussion|Discussion]]|| ~-[[DebianWiki/EditorGuide#translation|Translation(s)]]: [[NvidiaGraphicsDrivers|English]] - [[es/NvidiaGraphicsDrivers|Español]] - Français - [[it/NvidiaGraphicsDrivers|Italiano]] - [[ru/NvidiaGraphicsDrivers|Русский]] - [[zh_CN/NvidiaGraphicsDrivers|简体中文]]-~
Line 4: Line 4:
Ce document explique comment utiliser les cartes graphiques NVIDIA sur [[Debian]] GNU/Linux. La [[#free|section suivante]] décrit brièvement les pilotes libres et [[#non-free|reste du document]] concerne les drivers non-libres mais permettant l'accélération 3D.

<<TableOfContents(2)>>

<<Anchor(free)>>

= Pilotes libres =
Debian a deux pilotes libres qui supportent les cartes NVIDIA. Le pilote ''vesa'' est un pilote vidéo générique. Le pilote ''nv''donne généralement de meilleurs résultats. Vous pouvez voir lequel est utilisé à l'aide de la commande
= Pilote propriétaire NVIDIA =

Ce document explique comment installer le pilote d'affichage propriétaire NVIDIA sur les systèmes Debian.

NOTE : Pour les systèmes Apple, suivez ces étapes afin d'éviter un écran noir après l'installation des pilotes : http://askubuntu.com/a/613573/134848

<<TableOfContents(4)>>

== Identification ==

La série ou le nom de code du processeur graphique NVIDIA d'une carte graphique peut être identifié habituellement avec la commande {{{lspci}}}. Par exemple :
 {{{
$ lspci -nn | grep VGA
01:00.0 VGA compatible controller [0300]: NVIDIA Corporation G80 [GeForce 8800 GTS] [10de:0193] (rev a2)
}}}

Voir la page [[fr/HowToIdentifyADevice/PCI]] pour plus d'informations. On peut utiliser l'ID PCI pour vérifier la prise en charge d'un périphérique.

=== nvidia-detect ===

Le script {{{nvidia-detect}}} (paquet DebianPkg:nvidia-detect dans [[http://www.debian.org/doc/debian-policy/ch-archive#s-non-free|non-free]]) peut également être utilisé pour identifier le processeur graphique et le pilote adapté :
 {{{
$ nvidia-detect
Detected NVIDIA GPUs:
02:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF108 [GeForce GT 430] [10de:0de1] (rev a1)
Your card is supported by the default drivers.
It is recommended to install the
    nvidia-driver
package.
}}}

== Pilotes ==

Le pilote propriétaire « NVIDIA Accelerated Linux Graphics Driver » fournit une accélération matérielle optimisée des applications OpenGL grâce à un serveur X de rendu direct. C'est un pilote de [[fr/Xorg|Xorg]] seulement disponible sous forme binaire qui a besoin d'un module du noyau Linux pour fonctionner.

Plusieurs versions précompilées de pilotes sont disponibles pour [[DebianJessie|Debian 8 « Jessie »]] :

 * [[#jessie-375|Version 375.26]] ([[http://us.download.nvidia.com/XFree86/Linux-x86_64/375.26/README/supportedchips.html|périphériques pris en charge]])
  * Pour les nouveaux processeurs graphiques Kepler/Maxwell.
  * À noter que la version 375.26 est actuellement seulement disponible dans « jessie-backports ».
 * [[#jessie|Version 340.65]] ([[http://us.download.nvidia.com/XFree86/Linux-x86_64/340.65/README/supportedchips.html|périphériques pris en charge]])
  * Pour les processeurs graphiques !GeForce 8xxx jusqu'aux modèles 7xx.
 * [[#jessie-304xx|Version 304.125 (processeurs anciens)]] ([[http://us.download.nvidia.com/XFree86/Linux-x86_64/304.125/README/supportedchips.html|périphériques pris en charge]])
  * Pour les processeurs graphiques !GeForce 6xxx et 7xxx.

Il y a quatre versions du pilote disponibles pour [[fr/DebianWheezy|Debian 7 « Wheezy »]] :

 * [[#wheezy-backports|Version 340.65]] ([[http://us.download.nvidia.com/XFree86/Linux-x86_64/340.65/README/supportedchips.html|périphériques pris en charge]])
  * Pour les processeurs graphiques !GeForce 8xxx et plus.
 * [[#wheezy|Version 304.125]] ([[http://us.download.nvidia.com/XFree86/Linux-x86/304.125/README/supportedchips.html|périphériques pris en charge]])
  * Pour les processeurs graphiques !GeForce 6xxx et plus.
 * [[#wheezy-173xx|Version 173.14.35 (processeurs anciens)]] ([[http://www.nvidia.com/object/IO_32667.html|périphériques pris en charge]])
  * Pour les processeurs graphiques !GeForce 5xxx / !GeForce FX.
 * [[#wheezy-96xx|Version 96.43.23 (processeurs anciens)]] ([[http://www.nvidia.com/object/IO_32667.html|périphériques pris en charge]])
  * Pour les processeurs graphiques !GeForce 2, !GeForce 3 et !GeForce 4.

Toutes ces versions ne sont disponibles que pour les architectures x86 et x86-64 (ports Debian [[fr/i386|i386]] et [[DebianAMD64|AMD64]] respectivement).

== Installation ==

=== Debian 8 « Jessie » ===
Depuis Jessie, si vous souhaitez seulement avoir des fonctionnalités de base et n'êtes pas concernées par les performances, la nécessité d'utiliser des pilotes propriétaires n'existe quasiment plus - le pilote « nouveau » marche à présent plutôt bien et fonctionne avec le mode d'affichage bi-écran par une simple configuration à partir de votre environnement de bureau (pour KDE voir ''System_Settings/Hardware/Display_and_Monitor/Display_Configuration'').
Les pilotes propriétaires ne fournissent pas de journalisation normale et peuvent être à l'origine de problèmes cachés. Si vous faites une mise à jour de distribution - vous devriez au préalable supprimer tous les paquets Nvidia de Wheezy - faites fonctionner votre environnement de bureau avec le pilote « nouveau » - puis réinstallez les paquets Nvidia, si vous rencontrez une raison impérieuse de le faire.

<<Anchor(jessie-367)>>
==== Version 375.26 (à partir du dépôt jessie-backports) ====

[[http://http.download.nvidia.com/XFree86/Linux-x86_64/375.26/README/supportedchips.html|Périphériques pris en charge]].

 1. Ajoutez le dépôt jessie-backports à votre fichier /etc/apt/sources.list, par exemple : {{{
# jessie-backports
deb http://httpredir.debian.org/debian jessie-backports main contrib non-free
}}}

 1. Installez les en-têtes Linux pour le noyau que vous utilisez. Si vous utilisez le noyau Linux 3.16 dans Debian Jessie :{{{
# apt-get install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,')
}}}
 Ou si vous utilisez un noyau Linux à partir de jessie-backports :{{{
# apt-get install -t jessie-backports linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,')
}}}

 1. On peut donc installer le paquet `nvidia-driver` issu de ce dépôt : {{{
# apt-get update
# apt-get install -t jessie-backports nvidia-driver
}}} DKMS compilera le module nvidia pour votre ordinateur.

 1. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

<<Anchor(jessie)>>

==== Version 340.96 ====

Pour la prise en charge des processeurs graphiques !GeForce 8xxx et plus ([[http://us.download.nvidia.com/XFree86/Linux-x86_64/340.65/README/supportedchips.html|périphériques pris en charge]]). Pour les processeurs anciens, voir [[#jessie-304xx|Version 304.125 (processeurs anciens)]].

 1. Ajoutez les sources « contrib » et « non-free » à votre fichier {{{/etc/apt/sources.list}}}, par exemple : {{{
# Debian 8 "Jessie"
deb http://httpredir.debian.org/debian/ jessie main contrib non-free
}}}
 1. Mettez à jour la liste des paquets disponibles. Installez les paquets linux-headers appropriés et les modules du noyau : {{{
# aptitude update
# aptitude -r install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') nvidia-kernel-dkms
}}}
 Cela installera aussi le paquet recommandé [[DebianPkg:jessie/nvidia-driver|nvidia-driver]]. DKMS compilera le module nvidia pour votre ordinateur.
 1. Créez un [[#configure|fichier de configuration pour le serveur Xorg]].
 1. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».
 1. (La réponse [[http://askubuntu.com/a/595884/416671|ici]] pourrait être nécessaire pour activer une résolution élevée.)

<<Anchor(jessie-304xx)>>
==== Version 304.131 (processeurs anciens) ====

Pour la prise en charge des processeurs graphiques !GeForce 6xxx and 7xxx ([[http://us.download.nvidia.com/XFree86/Linux-x86/304.125/README/supportedchips.html|périphériques pris en charge]]).

 1. Ajoutez les sources « contrib » et « non-free » à votre fichier {{{/etc/apt/sources.list}}}, par exemple : {{{
# Debian 8 "Jessie"
deb http://httpredir.debian.org/debian/ jessie main contrib non-free
}}}
 1. Mettez à jour la liste des paquets disponibles. Installez les paquets linux-headers appropriés et les modules du noyau : {{{
# aptitude update
# aptitude -r install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') nvidia-legacy-304xx-kernel-dkms
}}}
 Cela installera aussi le paquet recommandé [[DebianPkg:jessie/nvidia-legacy-304xx-driver|nvidia-legacy-304xx-driver]]. DKMS compilera le module nvidia pour votre ordinateur.
 1. Créez un [[#configure|fichier de configuration pour le serveur Xorg]].
 1. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

=== Debian 7 « Wheezy » ===

<<Anchor(wheezy-backports)>>
==== Version 340.96 (avec wheezy-backports) ====

Les versions les plus récentes du pilote NVIDIA sont disponibles à partir de [[fr/Backports|wheezy-backports]] ([[http://us.download.nvidia.com/XFree86/Linux-x86_64/340.65/README/supportedchips.html|périphériques pris en charge]]).

 1. Ajoutez la source « wheezy-backports » à votre fichier {{{/etc/apt/sources.list}}}, par exemple : {{{
# wheezy-backports
deb http://httpredir.debian.org/debian/ wheezy-backports main contrib non-free
}}}
 1. Mettez à jour la liste des paquets disponibles : {{{
# aptitude update
}}}
 1. Installez le paquet linux-headers approprié : {{{
# aptitude install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,')
}}}
 1. Installez le paquet du module du noyau à partir de wheezy-backports : {{{
# aptitude -t wheezy-backports -r install nvidia-kernel-dkms
}}}
 Cela installera aussi le paquet recommandé [[DebianPkg:wheezy-backports/nvidia-driver|nvidia-driver]]. DKMS compilera le module nvidia pour votre ordinateur.
 1. Créez un [[#configure|fichier de configuration pour le serveur Xorg]].
 1. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

<<Anchor(wheezy)>>
<<Anchor(Version 304.125)>>
==== Version 304.125 ====

Pour la prise en charge des processeurs graphiques !GeForce 6xxx et plus ([[http://us.download.nvidia.com/XFree86/Linux-x86/304.125/README/supportedchips.html|périphériques pris en charge]]). Pour les périphériques plus anciens, voir [[#wheezy-173xx|Version 173.14.35 (processeurs anciens)]] et [[#wheezy-96xx|Version 96.43.23 (processeurs anciens)]].

 1. Ajoutez les sources « contrib » et « non-free » à votre fichier {{{/etc/apt/sources.list}}}, par exemple : {{{
# Debian 7 "Wheezy"
deb http://httpredir.debian.org/debian/ wheezy main contrib non-free
}}}
 1. Mettez à jour la liste des paquets disponibles. Installez les paquets linux-headers appropriés et les modules du noyau : {{{
# aptitude update
# aptitude -r install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') nvidia-kernel-dkms
}}}
 Cela installera aussi le paquet recommandé [[DebianPkg:wheezy/nvidia-glx|nvidia-glx]]. DKMS compilera le module nvidia pour votre ordinateur.
 1. Créez un [[#configure|fichier de configuration pour le serveur Xorg]].
 1. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

<<Anchor(wheezy-173xx)>>
==== Version 173.14.35 (processeurs anciens) ====

Pour la prise en charge des processeurs graphiques !GeForce 5xxx / !GeForce FX ([[http://www.nvidia.com/object/IO_32667.html|périphériques pris en charge]]).

 1. Ajoutez les sources « contrib » et « non-free » à votre fichier {{{/etc/apt/sources.list}}}, par exemple : {{{
# Debian 7 "Wheezy"
deb http://httpredir.debian.org/debian/ wheezy main contrib non-free
}}}
 1. Mettez à jour la liste des paquets disponibles. Installez les paquets linux-headers appropriés et les modules du noyau : {{{
# aptitude update
# aptitude -r install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') nvidia-kernel-legacy-173xx-dkms
}}}
 Cela installera aussi le paquet recommandé [[DebianPkg:wheezy/nvidia-glx-legacy-173xx|nvidia-glx-legacy-173xx]]. DKMS compilera le module nvidia pour votre ordinateur.
 1. Créez un [[#configure|fichier de configuration pour le serveur Xorg]].
 1. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

<<Anchor(wheezy-96xx)>>
==== Version 96.43.23 (processeurs anciens) ====

Pour la prise en charge des processeurs graphiques !GeForce 2, !GeForce 3 et !GeForce 4 ([[http://www.nvidia.com/object/IO_32667.html|périphériques pris en charge]]).

 1. Ajoutez les sources « contrib » et « non-free » à votre fichier {{{/etc/apt/sources.list}}}, par exemple : {{{
# Debian 7 "Wheezy"
deb http://httpredir.debian.org/debian/ wheezy main contrib non-free
}}}
 1. Mettez à jour la liste des paquets disponibles. Installez les paquets linux-headers appropriés et les modules du noyau : {{{
# aptitude update
# aptitude -r install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') nvidia-kernel-legacy-96xx-dkms
}}}
 Cela installera aussi le paquet recommandé [[DebianPkg:wheezy/nvidia-glx-legacy-96xx|nvidia-glx-legacy-96xx]]. DKMS compilera le module nvidia pour votre ordinateur.
 1. Créez un [[#configure|fichier de configuration pour le serveur Xorg]].
 1. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

<<Anchor(svn)>>
=== Construire de nouvelles versions à partir de SVN ===

Alors que les nouvelles versions amonts du pilote propriétaire sont disponibles, le téléchargement pourrait ne pas arriver immédiatement. Cela pour diverses raisons, notamment l’attente de nouveaux paquets binaires pour effacer la nouvelle file d’attente, ce qui doit être approuvé manuellement par les responsables FTP.

Avant d’exécuter l’installateur amont, qui pourrait causer des problèmes à votre installation, vous pouvez construire et installer les paquets localement s’ils sont prêts sur SVN. Vérifiez si la version qui vous intéresse est disponible :

https://anonscm.debian.org/viewvc/pkg-nvidia/packages/nvidia-graphics-drivers/branches/

Si c’est le cas, installez par les commandes suivantes : {{{
# apt-get install subversion svn-buildpackage
# apt-get build-dep nvidia-driver
}}}

Consultez ensuite la branche que vous souhaitez et construisez-la localement : {{{
# svn co svn://anonscm.debian.org/pkg-nvidia/packages/nvidia-graphics-drivers/branches/364
# cd 364
# debian/rules get-orig-source
# mkdir ../tarballs
# mv nvidia-graphics-drivers* ../tarballs
# svn-buildpackage --svn-ignore -us -uc -rfakeroot
}}}

et si vous avez besoin de paquets multiarch (par exemple, i386 sur amd64) – nécessaires au fonctionnement de Steam : {{{
# svn-buildpackage --svn-ignore --svn-arch=i386 -us -uc -rfakeroot
}}}

NOTE : pour la multiarch, par exemple i386 sur amd64, vous ne devez PAS installer tous les paquets issus de l'architecture importée, mais SEULEMENT libgl1-nvidia-glx-i386 ou nvidia-driver-libs-i386 selon la branche, et leurs dépendances.
  
NOTE : pour utiliser get-orig-source vous devez avoir tar au moins à la version 1.29, et si ce n’est pas le cas (par exemple sur Jessie), vous pouvez modifier le fichier {{{debian/rules}}} en effaçant les nouveaux arguments {{{tar}}} qui n’existent pas dans les versions plus anciennes de tar ({{{--clamp-mtime}}} et {{{--sort}}}) :
Line 13: Line 236:
$ grep -B2 'Module class: X.Org Video Driver' /var/log/Xorg.0.log
}}}
Vous pouvez simplement [[ConfigureX|configure X]] changer le pilote libre utilisé.

Aucun de ces pilotes libres ne supporte l'accélération tri-dimensionnelle. Seuls les pilotes non-libres ''nvidia'' supportent le 3D. Les pilotes non-libres sont plus complexes et X peut être cassé plus facilement. Si X est cassé et qu'il semble difficile de le faire fonctionner avec les pilots non-libre ''nvidia'', vous pouvez revenir aux pilotes libres.

<<Anchor(non-free)>>
= Pilotes non-libres =
== Pourquoi utiliser une méthode spécifique à Debian ? ==
Les pilotes NVIDIA peuvent être installés à l'aide de l'installeur officiel de NVIDIA ou à partir d'un paquet Debian. Chaque méthode a ses avatanges, mais la méthode Debian est probablement plus simple. Même en construisant un module pour le pilote manuellement, la méthode Debian est plus fiable et évite probablement du travail à long terme.

L'installeur NVIDIA est documenté ailleurs, par exemple [[NvidiaGraphicsDriversNvidiaWay|ici]].

Quelle que soit la méthode choisie, la [[#Troubleshooting|section dépannage]] peut aider.

=== Comparaison de l'installeur nvidia et de la méthode Debian ===
Avantages de la "méthode Debian":

 * Plus automatisée, ce qui évite du travail lors des changements de noyaux.
 * Utilise le système de gestion des paquets Debian, ce qui est plus propre. Si votre système devient cassé à la suite d'une installation par la méthode Debian, cela peut être un bogue qui peut être rapporté dans le BTS.
 * Peut être mise en oeuvre lorsque X est en marche. (X devra être redémarrer pour appliquer le changement de pilote.)
 * Les utilisateurs de ''make-kpkg'' trouveront que cela s'inscrit facilement dans leur procédure de développement existante.
 * Pas de téléchargement de fichiers depuis ''nvidia.com'', les paquets Debian contiennent tout ce qu'il faut.
Avantages de l'installeur officiel NVIDIA:

 * Versions plus récentes des pilotes NVIDIA. Les paquets Debian ont souvent un mois voire plus de retard. Vous pouvez comparer la [[http://www.nvidia.com/object/unix.html|version courante]] et la [[DebianPkg:nvidia-glx|version dans votre distribution Debian]] pour voir s'il y a une différence.

<<Anchor(Installation)>>
== Installation ==
Comment installer les pilotes NVIDIA 3D, la méthode Debian.

=== Aperçu ===
Les pilotes NVIDIA 3D sont constitués de deux parties: un module du noyau et une collection de librairies user-space. Ces librairies (parfois appelées "pilote binaire" ou librairies GLX) sont distribuées sous forme binaire par NVIDIA, et sont empaquetées pour Debian dans les paquet DebianPkg:nvidia-glx. Puisque les pilotes 3D NVIDIA ne sont pas libres, les sources APT non-free sont requises pour les installer. Le module du noyau (l'"interface du noyau avec le pilote binaire") is distributed in source form (though with one binary component), and packaged for Debian in the DebianPkg:nvidia-kernel-source packages. The version numbers of the kernel module and user libraries must match. User libraries only need be installed once, but the kernel module must be recompiled every time the kernel is changed. What to do:

 * 0. Make sure APT has ''non-free'' and ''contrib'' sources (consult the [[DebianMan:5/sources.list|sources.list(5)]] man page for help on doing this)
 * 1. Determine which version of the drivers should be installed.
 * 2. Install the kernel module
 * 3. Install the user-space GLX libraries
 * 4. Configure X to use the ''nvidia'' driver
Steps 3 and 4 need only be done once, but Step 2 is required every time the kernel is changed.
$ svn diff debian/rules
Index: debian/rules
===================================================================
--- debian/rules (revision 6570)
+++ debian/rules (working copy)
@@ -380,8 +380,7 @@
            chmod 0755 $(ORIGDIR.$*)/* ; \
            latestfile=$$(ls -tr $$(find $(ORIGDIR.$*) -type f) | tail -n 1) ; \
            tar cv \
- --clamp-mtime --mtime="./$$latestfile" \
- --sort=name \
+ --mtime="./$$latestfile" \
                --owner=root --group=src \
                $(ORIGDIR.$*) \
                | gzip -n -9 > $(TARBALL.$*) ; \

}}}

De cette manière la commande {{{debian/rules get-orig-source}}} fonctionnera correctement dans Jessie. Au cas où cela ne marche pas, vous pouvez essayer de créer l’archive manuellement en suivant le schéma utilisé pour un existant dans l'archive Debian.

NOTE : si la commande {{{svn-buildpackage}}} échoue avec un message de {{{tar}}} :
{{{
tar: /home/foo/tmp/nvidia/build-area/tmp-0.834000333984481: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
Command ' tar --no-same-owner --no-same-permissions --extract --file /home/foo/tmp/nvidia/tarballs/nvidia-graphics-drivers_367.35.orig-armhf.tar.gz --directory /home/foo/tmp/nvidia/build-area/tmp-0.834000333984481' failed in '/home/foo/tmp/nvidia/367', how to continue now? [Qri?]:
}}}
créez alors le répertoire manquant {{{/home/foo/tmp/nvidia/build-area/tmp-0.834000333984481}}} (le nom change à chaque fois, créez-le donc dans un autre terminal) et appuyez sur {{{r}}} pour relancer la commande. Vous aurez besoin de créer le répertoire à nouveau. Après cela, la construction devrait réussir.

<<Anchor(configure)>>
== Configuration ==

Comme le pilote nvidia n'est pas détecté automatiquement par [[fr/Xorg|Xorg]], un fichier de configuration doit être mis en œuvre. Cependant, la configuration décrite ci-dessous ne devrait '''pas''' être appliquée aux systèmes dotés d'un processeur Optimus ; sur de tels systèmes, l'affichage primaire de X est piloté par votre processeur graphique Intel, qui est automatiquement détecté par X. Voir [[fr/Bumblebee|Bumblebee]] pour plus de détails sur la manière de configurer un système équipé d'un processeur Optimus.

=== Automatique ===
Installer le paquet {{{nvidia-xconfig}}}, puis lancez-le avec {{{sudo}}}. Cela génèrera automatiquement un fichier de configuration Xorg à cet emplacement {{/etc/X11/xorg.conf}}}.

=== Manuelle ===
Par exemple :

{{{/etc/X11/xorg.conf.d/20-nvidia.conf}}}
 {{{
Section "Device"
 Identifier "My GPU"
 Driver "nvidia"
EndSection
}}}

On peut créer le fichier de configuration ci-dessus avec ces commandes :
 {{{
# mkdir /etc/X11/xorg.conf.d
# echo -e 'Section "Device"\n\tIdentifier "My GPU"\n\tDriver "nvidia"\nEndSection' > /etc/X11/xorg.conf.d/20-nvidia.conf
}}}

Attention, cette configuration cassera Xorg sur les systèmes dotés d'un processeur Optimus. Pour ces matériels, voir plutôt la page [[fr/Bumblebee|Bumblebee]].

'''Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».'''

[[fr/NvidiaGraphicsDrivers/Configuration|Des informations complémentaires de configuration]] sont disponibles.
== Dépannage ==

 * Le pilote NVIDIA entre en conflit avec le pilote DRM « nouveau » (DebianBug:580894). Le module du noyau « nouveau » est blacklisté par les paquets DebianPkg:glx-alternative-nvidia ou DebianPkg:nvidia-kernel-common.
  * Redémarrez votre ordinateur après avoir [[#configure|configuré Xorg]] pour le pilote NVIDIA.
  * Comme il est dit dans le README.Debian du paquet [[DebianPkg:xserver-xorg-video-nouveau]] : {{{
Si vous décidez de basculer sur le pilote propriétaire, il est très
recommandé de redémarrer parce qu'il n'est pas compatible avec « nouveau », et
que décharger ce dernier n'est pas simple et peut aboutir à une console vide.
}}}

 * Si vous ne pouvez pas ajuster la luminosité de l'écran, ouvrez votre fichier de configuration Xorg ({{{/etc/X11/xorg.conf}}} ou {{{/etc/X11/xorg.conf.d/20-nvidia.conf}}} selon la méthode que vous avez employée) et ajoutez dans la section {{{Device}}} : {{{
    Option "RegistryDwords" "EnableBrightnessControl=1;"
}}}

 * Des [[fr/NvidiaGraphicsDrivers/Troubleshooting|informations de dépannage supplémentaires]] sont disponibles.

== Revenir en arrière en cas d'incident ==
Dans le cas où vous souhaitez restaurer votre système dans son état précédent, faites :

Si vous ne pouvez pas utiliser votre environnement de bureau, appuyez sur Ctrl+alt+F2

Connectez-vous en tant que superutilisateur (root)
{{{

 # apt-get purge nvidia. (N'oubliez pas le point « . », ceci efface chaque paquet contenant « nvidia » dans son nom.)


 # /etc/init.d/gdm3 stop (dans le cas de gdm3 pour Gnome 3)

 # apt-get install --reinstall xserver-xorg
 # apt-get install --reinstall xserver-xorg-video-nouveau

 # killall Xorg

 # reboot
}}}

Xorg devrait se reconfigurer par lui-même. Si ce n'est pas le cas, ouvrez un terminal et exécutez la commande {{{

# X -configure}}}


== Voir aussi ==

 * [[fr/NvidiaGraphicsDrivers/Configuration|Configuration]]
 * [[fr/NvidiaGraphicsDrivers/Troubleshooting|Dépannage]]
 * [[NvidiaGraphicsDrivers/Optimus]] (en anglais)
 * [[fr/Xorg|Xorg]]
Line 55: Line 344:
## Vous pouvez ajouter d'autres articles utiles ici.
##Voir aussi:
## Si cette article correspond à certaines catégories (qui existent!), ajoutez les ici.
## ["CategorySomething"] | ["CategorySomethingElse"]
CategoryProprietarySoftware

Translation(s): English - Español - Français - Italiano - Русский - 简体中文


Pilote propriétaire NVIDIA

Ce document explique comment installer le pilote d'affichage propriétaire NVIDIA sur les systèmes Debian.

NOTE : Pour les systèmes Apple, suivez ces étapes afin d'éviter un écran noir après l'installation des pilotes : http://askubuntu.com/a/613573/134848

Identification

La série ou le nom de code du processeur graphique NVIDIA d'une carte graphique peut être identifié habituellement avec la commande lspci. Par exemple :

  • $ lspci -nn | grep VGA
    01:00.0 VGA compatible controller [0300]: NVIDIA Corporation G80 [GeForce 8800 GTS] [10de:0193] (rev a2)

Voir la page fr/HowToIdentifyADevice/PCI pour plus d'informations. On peut utiliser l'ID PCI pour vérifier la prise en charge d'un périphérique.

nvidia-detect

Le script nvidia-detect (paquet nvidia-detect dans non-free) peut également être utilisé pour identifier le processeur graphique et le pilote adapté :

  • $ nvidia-detect
    Detected NVIDIA GPUs:
    02:00.0 VGA compatible controller [0300]: NVIDIA Corporation GF108 [GeForce GT 430] [10de:0de1] (rev a1)
    Your card is supported by the default drivers.
    It is recommended to install the
        nvidia-driver
    package.

Pilotes

Le pilote propriétaire « NVIDIA Accelerated Linux Graphics Driver » fournit une accélération matérielle optimisée des applications OpenGL grâce à un serveur X de rendu direct. C'est un pilote de Xorg seulement disponible sous forme binaire qui a besoin d'un module du noyau Linux pour fonctionner.

Plusieurs versions précompilées de pilotes sont disponibles pour Debian 8 « Jessie » :

Il y a quatre versions du pilote disponibles pour Debian 7 « Wheezy » :

Toutes ces versions ne sont disponibles que pour les architectures x86 et x86-64 (ports Debian i386 et AMD64 respectivement).

Installation

Debian 8 « Jessie »

Depuis Jessie, si vous souhaitez seulement avoir des fonctionnalités de base et n'êtes pas concernées par les performances, la nécessité d'utiliser des pilotes propriétaires n'existe quasiment plus - le pilote « nouveau » marche à présent plutôt bien et fonctionne avec le mode d'affichage bi-écran par une simple configuration à partir de votre environnement de bureau (pour KDE voir System_Settings/Hardware/Display_and_Monitor/Display_Configuration). Les pilotes propriétaires ne fournissent pas de journalisation normale et peuvent être à l'origine de problèmes cachés. Si vous faites une mise à jour de distribution - vous devriez au préalable supprimer tous les paquets Nvidia de Wheezy - faites fonctionner votre environnement de bureau avec le pilote « nouveau » - puis réinstallez les paquets Nvidia, si vous rencontrez une raison impérieuse de le faire.

Version 375.26 (à partir du dépôt jessie-backports)

Périphériques pris en charge.

  1. Ajoutez le dépôt jessie-backports à votre fichier /etc/apt/sources.list, par exemple :

    # jessie-backports
    deb http://httpredir.debian.org/debian jessie-backports main contrib non-free
  2. Installez les en-têtes Linux pour le noyau que vous utilisez. Si vous utilisez le noyau Linux 3.16 dans Debian Jessie :

    # apt-get install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,')

    Ou si vous utilisez un noyau Linux à partir de jessie-backports :

    # apt-get install -t jessie-backports linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,')
  3. On peut donc installer le paquet nvidia-driver issu de ce dépôt :

    # apt-get update
    # apt-get install -t jessie-backports nvidia-driver 
    DKMS compilera le module nvidia pour votre ordinateur.
  4. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

Version 340.96

Pour la prise en charge des processeurs graphiques GeForce 8xxx et plus (périphériques pris en charge). Pour les processeurs anciens, voir Version 304.125 (processeurs anciens).

  1. Ajoutez les sources « contrib » et « non-free » à votre fichier /etc/apt/sources.list, par exemple :

    # Debian 8 "Jessie"
    deb http://httpredir.debian.org/debian/ jessie main contrib non-free
  2. Mettez à jour la liste des paquets disponibles. Installez les paquets linux-headers appropriés et les modules du noyau :

    # aptitude update
    # aptitude -r install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') nvidia-kernel-dkms

    Cela installera aussi le paquet recommandé nvidia-driver. DKMS compilera le module nvidia pour votre ordinateur.

  3. Créez un fichier de configuration pour le serveur Xorg.

  4. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».
  5. (La réponse ici pourrait être nécessaire pour activer une résolution élevée.)

Version 304.131 (processeurs anciens)

Pour la prise en charge des processeurs graphiques GeForce 6xxx and 7xxx (périphériques pris en charge).

  1. Ajoutez les sources « contrib » et « non-free » à votre fichier /etc/apt/sources.list, par exemple :

    # Debian 8 "Jessie"
    deb http://httpredir.debian.org/debian/ jessie main contrib non-free
  2. Mettez à jour la liste des paquets disponibles. Installez les paquets linux-headers appropriés et les modules du noyau :

    # aptitude update
    # aptitude -r install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') nvidia-legacy-304xx-kernel-dkms

    Cela installera aussi le paquet recommandé nvidia-legacy-304xx-driver. DKMS compilera le module nvidia pour votre ordinateur.

  3. Créez un fichier de configuration pour le serveur Xorg.

  4. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

Debian 7 « Wheezy »

Version 340.96 (avec wheezy-backports)

Les versions les plus récentes du pilote NVIDIA sont disponibles à partir de wheezy-backports (périphériques pris en charge).

  1. Ajoutez la source « wheezy-backports » à votre fichier /etc/apt/sources.list, par exemple :

    # wheezy-backports
    deb http://httpredir.debian.org/debian/ wheezy-backports main contrib non-free
  2. Mettez à jour la liste des paquets disponibles :

    # aptitude update
  3. Installez le paquet linux-headers approprié :

    # aptitude install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,')
  4. Installez le paquet du module du noyau à partir de wheezy-backports :

    # aptitude -t wheezy-backports -r install nvidia-kernel-dkms

    Cela installera aussi le paquet recommandé nvidia-driver. DKMS compilera le module nvidia pour votre ordinateur.

  5. Créez un fichier de configuration pour le serveur Xorg.

  6. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

Version 304.125

Pour la prise en charge des processeurs graphiques GeForce 6xxx et plus (périphériques pris en charge). Pour les périphériques plus anciens, voir Version 173.14.35 (processeurs anciens) et Version 96.43.23 (processeurs anciens).

  1. Ajoutez les sources « contrib » et « non-free » à votre fichier /etc/apt/sources.list, par exemple :

    # Debian 7 "Wheezy"
    deb http://httpredir.debian.org/debian/ wheezy main contrib non-free
  2. Mettez à jour la liste des paquets disponibles. Installez les paquets linux-headers appropriés et les modules du noyau :

    # aptitude update
    # aptitude -r install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') nvidia-kernel-dkms

    Cela installera aussi le paquet recommandé nvidia-glx. DKMS compilera le module nvidia pour votre ordinateur.

  3. Créez un fichier de configuration pour le serveur Xorg.

  4. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

Version 173.14.35 (processeurs anciens)

Pour la prise en charge des processeurs graphiques GeForce 5xxx / GeForce FX (périphériques pris en charge).

  1. Ajoutez les sources « contrib » et « non-free » à votre fichier /etc/apt/sources.list, par exemple :

    # Debian 7 "Wheezy"
    deb http://httpredir.debian.org/debian/ wheezy main contrib non-free
  2. Mettez à jour la liste des paquets disponibles. Installez les paquets linux-headers appropriés et les modules du noyau :

    # aptitude update
    # aptitude -r install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') nvidia-kernel-legacy-173xx-dkms

    Cela installera aussi le paquet recommandé nvidia-glx-legacy-173xx. DKMS compilera le module nvidia pour votre ordinateur.

  3. Créez un fichier de configuration pour le serveur Xorg.

  4. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

Version 96.43.23 (processeurs anciens)

Pour la prise en charge des processeurs graphiques GeForce 2, GeForce 3 et GeForce 4 (périphériques pris en charge).

  1. Ajoutez les sources « contrib » et « non-free » à votre fichier /etc/apt/sources.list, par exemple :

    # Debian 7 "Wheezy"
    deb http://httpredir.debian.org/debian/ wheezy main contrib non-free
  2. Mettez à jour la liste des paquets disponibles. Installez les paquets linux-headers appropriés et les modules du noyau :

    # aptitude update
    # aptitude -r install linux-headers-$(uname -r|sed 's,[^-]*-[^-]*-,,') nvidia-kernel-legacy-96xx-dkms

    Cela installera aussi le paquet recommandé nvidia-glx-legacy-96xx. DKMS compilera le module nvidia pour votre ordinateur.

  3. Créez un fichier de configuration pour le serveur Xorg.

  4. Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

Construire de nouvelles versions à partir de SVN

Alors que les nouvelles versions amonts du pilote propriétaire sont disponibles, le téléchargement pourrait ne pas arriver immédiatement. Cela pour diverses raisons, notamment l’attente de nouveaux paquets binaires pour effacer la nouvelle file d’attente, ce qui doit être approuvé manuellement par les responsables FTP.

Avant d’exécuter l’installateur amont, qui pourrait causer des problèmes à votre installation, vous pouvez construire et installer les paquets localement s’ils sont prêts sur SVN. Vérifiez si la version qui vous intéresse est disponible :

https://anonscm.debian.org/viewvc/pkg-nvidia/packages/nvidia-graphics-drivers/branches/

Si c’est le cas, installez par les commandes suivantes :

# apt-get install subversion svn-buildpackage
# apt-get build-dep nvidia-driver

Consultez ensuite la branche que vous souhaitez et construisez-la localement :

# svn co svn://anonscm.debian.org/pkg-nvidia/packages/nvidia-graphics-drivers/branches/364
# cd 364
# debian/rules get-orig-source
# mkdir ../tarballs
# mv nvidia-graphics-drivers* ../tarballs
# svn-buildpackage --svn-ignore -us -uc -rfakeroot

et si vous avez besoin de paquets multiarch (par exemple, i386 sur amd64) – nécessaires au fonctionnement de Steam :

# svn-buildpackage --svn-ignore --svn-arch=i386 -us -uc -rfakeroot

NOTE : pour la multiarch, par exemple i386 sur amd64, vous ne devez PAS installer tous les paquets issus de l'architecture importée, mais SEULEMENT libgl1-nvidia-glx-i386 ou nvidia-driver-libs-i386 selon la branche, et leurs dépendances.

NOTE : pour utiliser get-orig-source vous devez avoir tar au moins à la version 1.29, et si ce n’est pas le cas (par exemple sur Jessie), vous pouvez modifier le fichier debian/rules en effaçant les nouveaux arguments tar qui n’existent pas dans les versions plus anciennes de tar (--clamp-mtime et --sort) :

$ svn diff debian/rules
Index: debian/rules
===================================================================
--- debian/rules        (revision 6570)
+++ debian/rules        (working copy)
@@ -380,8 +380,7 @@
            chmod 0755 $(ORIGDIR.$*)/* ; \
            latestfile=$$(ls -tr $$(find $(ORIGDIR.$*) -type f) | tail -n 1) ; \
            tar cv \
-               --clamp-mtime --mtime="./$$latestfile" \
-               --sort=name \
+               --mtime="./$$latestfile" \
                --owner=root --group=src \
                $(ORIGDIR.$*) \
                | gzip -n -9 > $(TARBALL.$*) ; \

De cette manière la commande debian/rules get-orig-source fonctionnera correctement dans Jessie. Au cas où cela ne marche pas, vous pouvez essayer de créer l’archive manuellement en suivant le schéma utilisé pour un existant dans l'archive Debian.

NOTE : si la commande svn-buildpackage échoue avec un message de tar :

tar: /home/foo/tmp/nvidia/build-area/tmp-0.834000333984481: Cannot open: No such file or directory
tar: Error is not recoverable: exiting now
Command ' tar --no-same-owner --no-same-permissions --extract --file /home/foo/tmp/nvidia/tarballs/nvidia-graphics-drivers_367.35.orig-armhf.tar.gz --directory /home/foo/tmp/nvidia/build-area/tmp-0.834000333984481' failed in '/home/foo/tmp/nvidia/367', how to continue now? [Qri?]:

créez alors le répertoire manquant /home/foo/tmp/nvidia/build-area/tmp-0.834000333984481 (le nom change à chaque fois, créez-le donc dans un autre terminal) et appuyez sur r pour relancer la commande. Vous aurez besoin de créer le répertoire à nouveau. Après cela, la construction devrait réussir.

Configuration

Comme le pilote nvidia n'est pas détecté automatiquement par Xorg, un fichier de configuration doit être mis en œuvre. Cependant, la configuration décrite ci-dessous ne devrait pas être appliquée aux systèmes dotés d'un processeur Optimus ; sur de tels systèmes, l'affichage primaire de X est piloté par votre processeur graphique Intel, qui est automatiquement détecté par X. Voir Bumblebee pour plus de détails sur la manière de configurer un système équipé d'un processeur Optimus.

Automatique

Installer le paquet nvidia-xconfig, puis lancez-le avec sudo. Cela génèrera automatiquement un fichier de configuration Xorg à cet emplacement /etc/X11/xorg.conf}.

Manuelle

Par exemple :

/etc/X11/xorg.conf.d/20-nvidia.conf

  • Section "Device"
            Identifier "My GPU"
            Driver "nvidia"
    EndSection

On peut créer le fichier de configuration ci-dessus avec ces commandes :

  • # mkdir /etc/X11/xorg.conf.d
    # echo -e 'Section "Device"\n\tIdentifier "My GPU"\n\tDriver "nvidia"\nEndSection' > /etc/X11/xorg.conf.d/20-nvidia.conf

Attention, cette configuration cassera Xorg sur les systèmes dotés d'un processeur Optimus. Pour ces matériels, voir plutôt la page Bumblebee.

Redémarrez votre ordinateur pour activer le blacklistage du module « nouveau ».

Des informations complémentaires de configuration sont disponibles.

Dépannage

  • Le pilote NVIDIA entre en conflit avec le pilote DRM « nouveau » (580894). Le module du noyau « nouveau » est blacklisté par les paquets glx-alternative-nvidia ou nvidia-kernel-common.

    • Redémarrez votre ordinateur après avoir configuré Xorg pour le pilote NVIDIA.

    • Comme il est dit dans le README.Debian du paquet xserver-xorg-video-nouveau :

      Si vous décidez de basculer sur le pilote propriétaire, il est très 
      recommandé de redémarrer parce qu'il n'est pas compatible avec « nouveau », et
      que décharger ce dernier n'est pas simple et peut aboutir à une console vide.
  • Si vous ne pouvez pas ajuster la luminosité de l'écran, ouvrez votre fichier de configuration Xorg (/etc/X11/xorg.conf ou /etc/X11/xorg.conf.d/20-nvidia.conf selon la méthode que vous avez employée) et ajoutez dans la section Device :

        Option         "RegistryDwords" "EnableBrightnessControl=1;"
  • Des informations de dépannage supplémentaires sont disponibles.

Revenir en arrière en cas d'incident

Dans le cas où vous souhaitez restaurer votre système dans son état précédent, faites :

Si vous ne pouvez pas utiliser votre environnement de bureau, appuyez sur Ctrl+alt+F2

Connectez-vous en tant que superutilisateur (root)

 # apt-get purge nvidia. (N'oubliez pas le point « . », ceci efface chaque paquet contenant « nvidia » dans son nom.)


 # /etc/init.d/gdm3 stop  (dans le cas de gdm3 pour Gnome 3)

 # apt-get install --reinstall xserver-xorg
 # apt-get install --reinstall xserver-xorg-video-nouveau

 # killall Xorg

 # reboot

Xorg devrait se reconfigurer par lui-même. Si ce n'est pas le cas, ouvrez un terminal et exécutez la commande

# X -configure

Voir aussi


CategoryProprietarySoftware