.
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é.
Pour déterminer le pilote, utilisez la commande grep ainsi :
grep -B2 'Module class: X.Org Video Driver' /var/log/Xorg.0.log
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
Dans un terminal superutilisateur tapez et validez les lignes suivantes :
apt-get update && apt-get install xserver-xorg-video-nouveau
apt-get install libgl1-mesa-glx libgl1-mesa-dri
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 :
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à !
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
aptitude purge '~i nvidia'
rm /etc/X11/xorg.conf
rm -r /etc/X11/xorg.conf.d
Tout devrait alors rentrer dans l'ordre au prochain redémarrage.
Préalable :
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.
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
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
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
Remarque: testé le 13.05.2018 par slyfox avec NVIDIA Corporation GM204 [GeForce GTX 970] (rev a1)
É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
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 :
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 ! ).
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 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
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.
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 souhaitez10).
D'autres options sont possibles (par exemple pour les ordinateurs portables) : http://wiki.etechnik-rieke.de/index.php/NVidia_PowerMizer (en)
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 exécutable ainsi :
chmod +x /etc/profile.d/tearing.sh