Vous n'êtes pas identifié(e).
L'icône rouge permet de télécharger chaque page du wiki visitée au format PDF et la grise au format ODT →
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente Prochaine révision Les deux révisions suivantes | ||
doc:materiel:cartes-graphique:nvidia:optimus [10/12/2016 16:46] smolski modifification du titrage de tête |
doc:materiel:cartes-graphique:nvidia:optimus [09/08/2020 18:18] Debian Alain [Procédure d'installation de Bumblebee] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
- | ====== Bumblebee Procédure d'installation ====== | + | ====== Nvidia Optimus ====== |
- | <note warning>**NE SURTOUT PAS CHERCHER À INSTALLER LES PILOTES NVIDIA PAR TOUT AUTRE MÉTHODE !!!** \\ | + | * Objet : Nvidia Optimus |
- | Si jamais vous l'avez fait, désinstallez tout avant : | + | * Niveau requis :{{tag>avisé}} |
- | <code root>apt-get remove --purge nvidia-*</code></note> | + | * Commentaires : // Le logiciel Bumblebee est un logiciel qui se charge de gérer votre 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}} | ||
+ | * Création par [[user>smolski]] le 08/02/2012 | ||
+ | * Testé par [[user>PengouinPdt]] | ||
+ | * Commentaires sur le forum : [[http://debian-facile.org/viewtopic.php?id=4924 |C'est ici]]((N'hésitez pas à y faire part de vos remarques, succès, améliorations ou échecs !)) | ||
- | La démarche est la suivante : | ||
- | - Activation des **dépôts contrib**, et **non-free officiels** | ||
- | - Installation de Bumblebee | ||
- | - Redémarrage | ||
- | - Lancement des applications voulues avec le préfixe « optirun » | ||
- | - Optionnel : Éditer vos raccourcis pour utiliser la carte graphique dédiée | ||
- | ==== Installation des dépôts ==== | ||
- | Éditez(([[:doc:editeurs:nano]])) votre fichier '/etc/apt/sources.list(([[:doc:systeme:apt:sources.list]]))' dans un terminal en tant que [[doc:systeme:superutilisateur|superutilisateur]] : | + | ===== Introduction ===== |
- | <code root>apt edit-sources</code> | + | |
- | Vérifiez que le dépôt principal Debian soit suffixé ((que la ligne se termine par...)) de « main contrib non-free » ... //(Bumblebee étant une// contribution// et les pilotes Nvidia étant// non-libres). | + | La technologie Nvidia Optimus est équipée sur certains ordinateurs portables. \\ |
+ | Il s'agit : | ||
+ | - [[doc:materiel:cartes-graphique:cartes-graphique|d'une carte graphique]] **dédiée** | ||
+ | - //couplée// à une carte graphique **intégrée** de marque **Intel**. | ||
- | === Dépôts pour Wheezy === | + | Le processeur de l'ordinateur portable gère l'affichage graphique et y alloue une partie de sa puissance. \\ |
+ | Lorsque la charge graphique est trop importante : | ||
+ | - la carte graphique Intel intégrée passe le relais à -> \\ | ||
+ | - [[doc:materiel:cartes-graphique:nvidia:accueil|la carte Nvidia]], (//qui est beaucoup plus puissante mais plus énergivore//). | ||
- | Ensuite, ajoutez [[doc:systeme:apt:sources.list#les-retroportages-depot-backports | les dépôts backports]] s'ils ne sont pas présents : | + | De ce fait, cette technologie permet à l'ordinateur portable |
+ | - d'avoir une meilleure autonomie sur batterie en utilisant que la carte graphique intégrée | ||
+ | - d'avoir une meilleure puissance graphique branché sur secteur, en utilisant la carte graphique dédiée. \\ Bien sûr, il reste possible aussi de l'utiliser sur batterie... | ||
- | <code apt_sources wheezy-stable-backport.list>## backports | + | Sous votre Debian adorée, cela n'est pas correctement possible. |
- | deb http://httpredir.debian.org/debian/ wheezy-backports main contrib non-free</code> | + | |
- | === Dépôts pour Jessie (et versions supérieures) === | + | La situation est en fait critique parce que le portable alimente bien électriquement la carte graphique Nvidia mais ne peut pas utiliser sa puissance, il n'y a donc : |
+ | - ni autonomie, | ||
+ | - ni puissance... | ||
- | <code apt_sources jessie.list> | + | [[doc:systeme:noyau:theorie|Les noyaux Linux 3.3]] ou supérieurs devraient améliorer davantage encore le support matériel. |
- | deb http://httpredir.debian.org/debian/ jessie main contrib non-free</code> | + | |
- | <note tip>Préferez l'usage des dépôts backports de Jessie : \\ | + | ==== Eurékâ ! ==== |
- | <code apt_sources jessie-backports.list> | + | |
- | deb http://httpredir.debian.org/debian/ jessie-backports main contrib non-free</code> | + | |
- | </note> | + | |
- | ==== Mise-à-jour des dépôts ==== | + | **Bumblebee** est un logiciel qui se charge de gérer votre carte graphique Nvidia. \\ |
+ | Tous les logiciels que vous lancez utiliseront par défaut la carte intégrée, cependant, vous pourrez alors lancer ces programmes en //leur donnant l'ordre// d'utiliser la carte Nvidia avec le préfixe ''optirun'' ! =) | ||
- | Enregistrez le fichier <key>Ctrl</key> + <key>O</key> + <key>Entrée</key> et actualisez les dépôts : | + | ===== Fonctionnement ===== |
- | <code root>apt-get update</code> | + | |
+ | Il vous faut bien comprendre le fonctionnement : | ||
+ | - Votre station démarre et fonctionne **à partir** de la puce graphique Intel et grâce au projet ''Bumblebee'' avec l'usage de l'outil ''optirun'', vous activerez //momentanément// votre processeur graphique nvidia. | ||
+ | - Dans ce contexte d'usage, vous ne fonctionnerez jamais **directement** avec votre carte nvidia. | ||
+ | |||
+ | ==== HDMI ==== | ||
+ | |||
+ | Pas de gestion HDMI à partir de la puce graphique nVidia ! | ||
+ | |||
+ | ===== Vérification ===== | ||
+ | |||
+ | |||
+ | Pour vérifier que vous disposez effectivement de matériel équipé de ce système, ouvrez un terminal et rentrez : | ||
+ | <code user>lspci | egrep "VGA|3D|Display"</code> | ||
+ | |||
+ | Exemple de sortie du terminal : | ||
+ | <code> | ||
+ | 00:02.0 VGA compatible controller: Intel Corporation 2nd Generation Core Processor Family Integrated Graphics Controller (rev 09) | ||
+ | 01:00.0 VGA compatible controller: nVidia Corporation GF108 [GeForce GT 540M] (rev ff) | ||
+ | </code> | ||
+ | |||
+ | Autre exemple : | ||
+ | <code> | ||
+ | 00:02.0 VGA compatible controller: Intel Corporation Haswell-ULT Integrated Graphics Controller (rev 0b) | ||
+ | 03:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 860M] (rev ff) | ||
+ | </code> | ||
+ | |||
+ | Si une seule ligne est rapportée, c'est que votre PC ne dispose pas de ce système. \\ | ||
+ | Par contre, si la réponse est de deux lignes, dont une qui contient Intel et une autre Nvidia, c'est que votre ordinateur portable en est équipé. | ||
+ | |||
+ | ===== Procédure d'installation de Bumblebee ===== | ||
+ | |||
+ | <note warning>**NE SURTOUT PAS CHERCHER À INSTALLER LES PILOTES NVIDIA PAR TOUT AUTRE MÉTHODE !!!** \\ | ||
+ | Si jamais vous l'avez fait, désinstallez tout avant((voir : [[doc:systeme:apt:apt-get#purge-autoremove | Nettoyage des paquets avec apt-get]])) : | ||
+ | <code root>apt purge nvidia-*</code></note> | ||
+ | |||
+ | La démarche est la suivante : | ||
+ | - Activation des **dépôts contrib**, et **non-free officiels** | ||
+ | - Installation de Bumblebee | ||
+ | - Redémarrage | ||
+ | - Lancement des applications voulues avec le préfixe « optirun » | ||
+ | - Optionnel : Éditer vos raccourcis pour utiliser la carte graphique dédiée | ||
+ | |||
+ | ==== Les dépôts ==== | ||
+ | |||
+ | - Vérifiez que [[doc:systeme:apt:sources.list|le dépôt principal Debian]] soit suffixé((que la ligne se termine par...)) de « main contrib non-free » ... //(Bumblebee étant une// contribution// et les pilotes Nvidia étant// non-libres). | ||
+ | - Pour stable, ajoutez [[doc:systeme:apt:sources.list#les-retroportages-depot-backports | les dépôts backports]] s'ils ne sont pas présents. | ||
==== Installation de Bumblebee ==== | ==== Installation de Bumblebee ==== | ||
+ | |||
+ | === Ajout support architecture 32 bits === | ||
<note important>Pour ceux qui ont installé la version 64 bits de Debian, pensez à ajouter la [[https://wiki.debian.org/fr/Multiarch/HOWTO|gestion du multi-architecture]] pour 32 bits, on vérifie que l'architecture soit 'amd64', et si c'est le cas, on active le mode correspondant, puis on met-à-jour sa distribution : | <note important>Pour ceux qui ont installé la version 64 bits de Debian, pensez à ajouter la [[https://wiki.debian.org/fr/Multiarch/HOWTO|gestion du multi-architecture]] pour 32 bits, on vérifie que l'architecture soit 'amd64', et si c'est le cas, on active le mode correspondant, puis on met-à-jour sa distribution : | ||
Ligne 48: | Ligne 99: | ||
<code>amd64</code> | <code>amd64</code> | ||
<code root>dpkg --add-architecture i386</code> | <code root>dpkg --add-architecture i386</code> | ||
- | <code root>apt-get update</code> | + | <code root>apt update</code> |
- | <code root>apt-get install primus-libs-ia32 # pour wheezy, c'est : primus-libs:i386</code> | + | <code root>apt install primus-libs-ia32</code> |
</note> | </note> | ||
+ | |||
+ | === Choisir le pilote nouveau ou nvidia ? === | ||
À cette étape, il vous faut choisir quel pilote logiciel vous désirez installer : | À cette étape, il vous faut choisir quel pilote logiciel vous désirez installer : | ||
+ | |||
* Le pilote libre nommé 'nouveau', fonctionnel pour la plupart des anciennes cartes graphiques, | * Le pilote libre nommé 'nouveau', fonctionnel pour la plupart des anciennes cartes graphiques, | ||
* ou installer le pilote "privatif" nvidia, qui apportera plus de support que le pilote libre 'nouveau'. | * ou installer le pilote "privatif" nvidia, qui apportera plus de support que le pilote libre 'nouveau'. | ||
- | <note warning>Comprenez que c'est soit l'un, soit l'autre ... ce ne peut pas être les deux en même temps.</note> | + | |
- | De même, si vous installez le pilote, il vous faudra être attentif aux différentes recommandations pour désactiver le support 'nouveau'. | + | <note warning>Comprenez que c'est soit l'un, soit l'autre… ce ne peut pas être les deux en même temps. |
+ | |||
+ | De même, si vous installez le pilote nvidia, il vous faudra être attentif aux différentes recommandations pour désactiver le support 'nouveau'. | ||
+ | |||
+ | **Ne cherchez pas à utiliser le pilote libre 'nouveau' si votre carte graphique de fabriquant nvidia n'est pas supportée** par celui-ci. | ||
+ | |||
+ | Pour savoir si elle est supportée, lisez la [[https://nouveau.freedesktop.org/wiki/CodeNames/|page du "code name" fournie par la projet nouveau]], recherchez la mention correspondante à votre GPU, vous y trouverez aussi le nom de l'architecture correspondante. | ||
+ | |||
+ | //Vous pouvez aussi lire cette [[https://nouveau.freedesktop.org/wiki/VideoAcceleration/|page]] pour connaître le support complet ou non de votre carte vidéo.// | ||
+ | </note> | ||
+ | |||
+ | Pour récapituler : | ||
+ | - l'architecture matérielle NV110, nommée Maxwell, est supportée à partir de la version du serveur X : "**xf86-video-nouveau-1.0.14**". | ||
+ | - l'architecture matérielle NV130, nommée Pascal, est supportée à partir de la version du serveur X : "**xf86-video-nouveau-1.0.15**" | ||
+ | |||
+ | Pour information, la version supportée du serveur X : | ||
+ | - Sous Jessie (Debian 8) : la **[[https://packages.debian.org/jessie/xserver-xorg-video-nouveau|1.0.11]]** | ||
+ | - Sous Stretch (Debian 9): la **[[https://packages.debian.org/stretch/xserver-xorg-video-nouveau|1.0.13]]** | ||
+ | - Sous Buster (Debian 10) : la **[[https://packages.debian.org/buster/xserver-xorg-video-nouveau|1.0.16]]** | ||
+ | |||
+ | **De fait, les cartes de famille Maxwell, ou Pascal, n'ont pas le support du pilote libre pour Jessie, ni Stretch. Ce support semble s'améliorer sous Buster . Néanmoins, si votre carte graphique n'est pas supportée ou mal supportée, utilisez directement le projet Bumblebee avec le pilote privatif ! ** | ||
=== Bumblebee avec 'nouveau' === | === Bumblebee avec 'nouveau' === | ||
=> Pour installer Bumblebee et fonctionner avec le pilote libre 'nouveau' : | => Pour installer Bumblebee et fonctionner avec le pilote libre 'nouveau' : | ||
- | <code root>apt-get install bumblebee mesa-utils</code> | + | <code root>apt install bumblebee mesa-utils</code> |
+ | |||
+ | Il semble suggérer d'installer le pilote ''firmware-misc-nonfree'' qui en ont besoin pour l'accélération graphique des cartes 'Maxwell' et supérieures. Néanmoins, il faut à minima la version 1.0.15-2 du serveur X (OK, pour Buster) !!! | ||
+ | |||
+ | <note>xserver-xorg-video-nouveau (1:1.0.15-2) unstable; urgency=medium | ||
+ | |||
+ | (...) | ||
+ | * Suggest firmware-misc-nonfree, needed for acceleration on Maxwell | ||
+ | and newer cards. | ||
+ | (...) | ||
+ | </note> | ||
+ | |||
+ | Si donc, vous fonctionnez avec Buster, installez en plus le pilote 'firmware-misc-nonfree' : | ||
+ | <code root>apt install firmware-misc-nonfree</code> | ||
=== Bumblebee avec 'nvidia' === | === Bumblebee avec 'nvidia' === | ||
=> Pour installer Bumblebee et gérer le pilote privatif nvidia : | => Pour installer Bumblebee et gérer le pilote privatif nvidia : | ||
- | <code root>apt-get install bumblebee-nvidia primus nvidia-kernel-dkms nvidia-xconfig nvidia-settings nvidia-vdpau-driver vdpau-va-driver mesa-utils xserver-xorg-video-nvidia linux-headers-$(uname -r)</code> | + | <code root>apt install nvidia-kernel-dkms nvidia-xconfig nvidia-settings nvidia-vdpau-driver vdpau-va-driver mesa-utils bumblebee-nvidia primus xserver-xorg-video-nvidia linux-headers-$(uname -r)</code> |
- | Toutefois installer de préférence la version des dépôts backports de jessie : \\ | + | |
- | <code root> apt-get install -t jessie-backports bumblebee-nvidia primus nvidia-kernel-dkms nvidia-xconfig nvidia-settings nvidia-vdpau-driver vdpau-va-driver mesa-utils xserver-xorg-video-nvidia linux-headers-$(uname -r)</code> | + | |
Lors de l'installation, il vous sera affiché une première fenêtre d'information : \\ | Lors de l'installation, il vous sera affiché une première fenêtre d'information : \\ | ||
Ligne 75: | Ligne 160: | ||
vous avertissant qu'il y a conflit entre le pilote 'nouveau' et le pilote 'nvidia', que celui-ci devrait être résolu par un redémarrage de votre machine. | vous avertissant qu'il y a conflit entre le pilote 'nouveau' et le pilote 'nvidia', que celui-ci devrait être résolu par un redémarrage de votre machine. | ||
- | \\ | + | |
En suivant, vous aurez une autre fenêtre d'information : | En suivant, vous aurez une autre fenêtre d'information : | ||
Ligne 92: | Ligne 178: | ||
Et, le cas où **il ne faut pas créer de fichier xorg.conf**, c'est justement avec le projet Bumblebee, car celui-ci crée ses propres fichiers utilisés selon le choix du pilote. \\ | Et, le cas où **il ne faut pas créer de fichier xorg.conf**, c'est justement avec le projet Bumblebee, car celui-ci crée ses propres fichiers utilisés selon le choix du pilote. \\ | ||
Fichiers qu'il ne créé surtout pas dans le répertoire relatif à Xorg ... parce que là, //ça serait le "bazard"// ...</note> | Fichiers qu'il ne créé surtout pas dans le répertoire relatif à Xorg ... parce que là, //ça serait le "bazard"// ...</note> | ||
+ | |||
+ | === Evolution bumblebee avec Nvidia === | ||
+ | configuration de l'exemple : | ||
+ | <code> | ||
+ | 00:02.0 VGA compatible controller: Intel Corporation HD Graphics 530 (rev 06) | ||
+ | 01:00.0 3D controller: NVIDIA Corporation GM107M [GeForce GTX 960M] (rev a2) | ||
+ | </code> | ||
+ | |||
+ | installation des méta - paquets : | ||
+ | (avec testing bullseye) : | ||
+ | <code root>apt install --reinstall linux-image-amd64 linux-headers-amd64</code> | ||
+ | avec buster - backports : | ||
+ | <code root>apt -t buster-backports install --reinstall linux-image-amd64 linux-headers-amd64</code> | ||
+ | |||
+ | installation de bumblebee : | ||
+ | avec buster - backports | ||
+ | <code root>apt -t buster-backports install --reinstall bumblebee-nvidia primus libglx-nvidia0</code> | ||
+ | ou testing bullseye : | ||
+ | <code root>apt install --reinstall bumblebee-nvidia primus libglx-nvidia0</code> | ||
+ | installation bumblebee avec buster : | ||
+ | <code root>apt install --reinstall bumblebee-nvidia primus libglx-nvidia</code> | ||
+ | |||
+ | mesa : | ||
+ | <code root>apt install --reinstall mesa-utils</code> | ||
+ | |||
+ | tests carte intel : | ||
+ | <code user>glxinfo -B</code> | ||
+ | <code user>glxgears</code> | ||
+ | |||
+ | tests carte nvidia : | ||
+ | <code user>optirun glxinfo -B</code> | ||
+ | <code user>optirun glxgears</code> | ||
+ | |||
+ | <note tip>n.b.: si la synchro verticale est activée , glxgears s'alignera sur la fréquence de votre écran . | ||
+ | si la synchro verticale n'est pas activée , vous aurez l'indication des fps de votre carte graphique . | ||
+ | ce qui , à part faire joli , ne vous avancera pas plus ; | ||
+ | les fps supplémentaires n'étant tout simplement pas pris en compte par votre écran lors de l'affichage . | ||
+ | ex: vous avez une carte qui tourne à 200 fps , cela vous fera une belle jambe si , comme presque tout le monde , vous avez un écran 60 hz (classique , quoi ...) </note> | ||
+ | |||
+ | merci robert2a . | ||
=== Petites vérifications suite à l'installation du pilote nvidia === | === Petites vérifications suite à l'installation du pilote nvidia === | ||
Ligne 139: | Ligne 265: | ||
Pour être clair, sudo n'est pas nécessaire pour utiliser bumblebee ; juste il simplifie les choses en rendant inutile l'addition manuelle de l'utilisateur courant au groupe //bumblebee//.</note> | Pour être clair, sudo n'est pas nécessaire pour utiliser bumblebee ; juste il simplifie les choses en rendant inutile l'addition manuelle de l'utilisateur courant au groupe //bumblebee//.</note> | ||
- | === Sous Wheezy === | ||
- | La procédure n'étant pas complètement automatisée, **il faut [[doc:systeme:groupadd|créer le groupe]] « bumblebee » et s'y intégrer**, pour avoir le droit de contrôler la carte graphique Nvidia. (Remplacez //USER// de l'exemple de la commande ci-dessous par votre nom d'utilisateur) : | + | Ajoutez votre utilisateur au groupe bumblebee - //là aussi, remplacez //**USER**// du tuto par votre nom d'utilisateur// - : |
- | + | ||
- | <code root>groupadd bumblebee</code> | + | |
<code root>adduser USER bumblebee</code> | <code root>adduser USER bumblebee</code> | ||
+ | Ensuite, **redémarrez l'ordinateur** puis votre session comme d'habitude. | ||
+ | ===== Utilisation ===== | ||
+ | |||
+ | À partir de maintenant, pour activer la gestion du processeur graphique Nvidia, il faut précéder toute commande par l'usage de la commande 'optirun', telle que - //par exemple// - : | ||
+ | |||
+ | <code user>optirun firefox</code> | ||
+ | |||
+ | ==== Test ==== | ||
+ | |||
+ | Lancez un terminal et lancez la commande suivante pour tester les performances de votre carte graphique intégrée Intel : | ||
+ | <code user> | ||
+ | glxgears</code> | ||
+ | |||
+ | Un engrenage doit apparaître et le nombre d'image par seconde doit être inscrit toutes les 5s dans le terminal. Cela estime la puissance de la carte intégrée. | ||
+ | |||
+ | Maintenant, démarrez la même commande avec le préfixe « optirun » : | ||
+ | <code user>optirun glxgears</code> | ||
+ | |||
+ | Normalement, les performances affichées dans le terminal devraient être nettement supérieures ! \\ | ||
+ | Sur le PC où ces lignes sont écrites, la carte intégrée affiche 60fps (pour « frames per seconds », images par seconde en français) et la carte Nvidia affiche 1100fps. | ||
+ | |||
+ | ==== Gestion du panel nvidia ==== | ||
+ | |||
+ | Pour pouvoir utiliser le panel nvidia, le seul moyen est de le lancer en mode console, tel que : | ||
+ | |||
+ | <code user>optirun nvidia-settings -c :8 </code> | ||
+ | |||
+ | <note>Il est possible de modifier le menu, pour ajouter la commande 'optirun', voir ci-dessous ... le chapitre "Gestion menu"</note> | ||
+ | |||
+ | ==== Gestion de Steam ==== | ||
+ | |||
+ | => Ajoutez la variable d'environnement OPTIMUS_PREFIX | ||
+ | |||
+ | <code root>sh -c 'echo OPTIMUS_PREFIX=\"primusrun\" >> /etc/environment'</code> | ||
+ | |||
+ | **Déloguez-vous** de votre session **pour vous reconnectez** ! | ||
+ | |||
+ | => Puis, pour chaque jeu, dont vous voulez profiter d'optirun, il faut modifiez les propriétés de lancement de celui-ci. | ||
+ | |||
+ | - Exécutez Steam, | ||
+ | - allez dans votre librairie de jeux, | ||
+ | - sélectionnez le jeu en question, | ||
+ | - puis faites un clic droit dessus, et choisissez le menu "Propriétés". | ||
+ | - Ensuite, cliquez sur le bouton [DÉFINIR LES OPTIONS DE LANCEMENT...], | ||
+ | - et spécifiez dans le champ l'information qui suit : ''$OPTIMUS_PREFIX %command%'' - Il est possible d'y écrire directement : ''primusrun %command%'' | ||
+ | |||
+ | |||
+ | ===== Gestion des erreurs ===== | ||
+ | |||
+ | S'il n'y a pas de différence de performances entre « glxgears » et « optirun glxgears », vérifiez que vous avez scrupuleusement suivi le tutorial. | ||
+ | |||
+ | Si c'est le cas, veuillez rapporter votre problème sur le forum dans le lien pour la FAQ de ce tuto ci-dessous : | ||
+ | |||
+ | * [[http://debian-facile.org/viewtopic.php?id=6324 | Problème d'installation résolu par Rol]] | ||
+ | * http://forum.ubuntu-fr.org/viewtopic.php?id=565321 | ||
+ | |||
+ | |||
+ | <note important>Il semble que la version 340 du pilote nvidia soit défectueuse - version par défaut pour Jessie !</note> | ||
+ | |||
+ | <note warning>**NOTE** : Après avoir appliqué une des corrections proposées, pensez toujours à [[#redemarrer-le-service-bumblebeed|redémarrer le service Bumblebee]] !</note> | ||
+ | |||
+ | ==== erreur libGL.so.1 ==== | ||
+ | |||
+ | <note warning>Les modifications systèmes que ces propositions de solutions sont **pour des utilisateurs confirmés**. Comprenez bien qu'il ait très probable qu'aucune solution ne fonctionne dans votre cas. En effet, certaines solutions fonctionnent chez certains, et d'autres pour d'autres, voire aucune solution peut n'être fonctionnelle ! | ||
+ | |||
+ | **Tenez en compte** ! | ||
+ | |||
+ | Un bogue #[[https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=876033|867033]] est ouvert... Il n'est pas résolu, et pose régulièrement des problèmes avec les nouvelles versions de pilote. | ||
+ | </note> | ||
+ | |||
+ | Lorsque vous exécutez ''optirun'' ou ''primusrun'', vous avez le retour d'erreur suivant : | ||
+ | |||
+ | <code user> | ||
+ | primus: fatal: failed to load any of the libraries: /usr/lib/x86_64-linux-gnu/nvidia/libGL.so.1:/usr/lib/i386-linux-gnu/nvidia/libGL.so.1:/usr/lib/nvidia/libGL.so.1 | ||
+ | /usr/lib/x86_64-linux-gnu/nvidia/libGL.so.1: cannot open shared object file: No such file or directory | ||
+ | /usr/lib/i386-linux-gnu/nvidia/libGL.so.1: cannot open shared object file: No such file or directory | ||
+ | /usr/lib/nvidia/libGL.so.1: cannot open shared object file: No such file or directory | ||
+ | </code> | ||
+ | |||
+ | <code user> | ||
+ | primus: fatal: failed to load any of the libraries: /usr/lib/x86_64-linux-gnu/ nvidia/libGL.so.1:/usr/lib/i386-linux-gnu/nvidia/libGL.so.1:/usr/lib/nvidia/libGL.so.1 | ||
+ | /usr/lib/x86_64-linux-gnu/nvidia/libGL.so.1: wrong ELF class: ELFCLASS64 | ||
+ | /usr/lib/i386-linux-gnu/nvidia/libGL.so.1: cannot open shared object file: No such file or directory | ||
+ | /usr/lib/nvidia/libGL.so.1: cannot open shared object file: No such file or directory | ||
+ | </code> | ||
+ | |||
+ | Dans un premier temps, vérifiez que vous avez bien installé le package ''primus-libs-ia32''. Si ce n'est pas le cas, faites-le ! | ||
+ | |||
+ | Sachant qu'**il n'y a aucune garantie de fonctionnement**, vous pouvez essayer l'une des solutions suivantes : | ||
+ | |||
+ | * Exécutez ''primusrun'' en le préfixant de l'option ''_GLVND_DISALLOW_PATCHING=1'', tel que : ''_GLVND_DISALLOW_PATCHING=1 primusrun glxgears'' - //(cf, la réponse [[https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=876033#22 | 22]])// | ||
+ | * Éditez le fichier ''/usr/bin/primusrun'', pour modifier la ligne ''PRIMUS_libGL=${PRIMUS_libGL:-'/usr/$LIB/primus'}'' par ''PRIMUS_libGL=${PRIMUS_libGL:-"/usr/$LIB/primus"}'' - c'est-à-dire **changer les simples quotes en doubles quotes** - //(cf, la réponse [[https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=876033#59 | 59]])// | ||
+ | * Essayez l'installation des packages suivants : <code root>apt install libgl1-nvidia-glx libgl1-nvidia-glx:i386 nvidia-driver-libs nvidia-driver-libs-i386</code> | ||
+ | |||
+ | |||
+ | ==== erreur libturbojpeg.so ==== | ||
+ | |||
+ | Lorsque vous exécutez une commande avec optirun, vous avez pour retour le message d'erreur suivant : | ||
+ | |||
+ | <code>error while loading shared libraries: libturbojpeg.so: cannot open shared object file: No such file or directory</code> | ||
+ | |||
+ | Selon votre version de Debian, il va falloir faire une modification système, avec des droits administrateurs, puis une fois accomplie, exécutez à nouveau la commande ! | ||
+ | |||
+ | === architecture pc 32 bits === | ||
+ | |||
+ | Si votre architecture est 32 bits, tapez dans votre terminal console préféré, cette commande avec les droits administrateur : | ||
+ | |||
+ | <code root>ln -s /usr/lib/i386-linux-gnu/libturbojpeg.so.0 /usr/lib/i386-linux-gnu/libturbojpeg.so</code> | ||
+ | |||
+ | === architecture pc 64 bits === | ||
+ | |||
+ | Si votre architecture est 64 bits, tapez cette commande-ci, toujours avec les droits administrateur : | ||
+ | <code root>ln -s /usr/lib/x86_64-linux-gnu/libturbojpeg.so.0 /usr/lib/x86_64-linux-gnu/libturbojpeg.so</code> | ||
+ | |||
+ | ==== [ERROR]Cannot access secondary GPU - error: Could not load GPU driver ==== | ||
+ | |||
+ | Testez une des solutions, une par une, puis ensuite [[#redemarrer-le-service-bumblebeed|redémarrer le service Bumblebee]], et essayez d'utiliser à nouveau votre commande précédée d'optirun ! | ||
+ | |||
+ | === Modification de "Driver" === | ||
+ | |||
+ | Une solution très simple est d'éditer le fichier /etc/bumblebee/bumblebee.conf, avec les droits administrateurs, pour modifier la ligne 'Driver=' en début de fichier : | ||
+ | |||
+ | <code> | ||
+ | # Configuration file for Bumblebee. Values should **not** be put between quotes | ||
+ | |||
+ | ## Server options. Any change made in this section will need a server restart | ||
+ | # to take effect. | ||
+ | [bumblebeed] | ||
+ | # The secondary Xorg server DISPLAY number | ||
+ | VirtualDisplay=:8 | ||
+ | # Should the unused Xorg server be kept running? Set this to true if waiting | ||
+ | # for X to be ready is too long and don't need power management at all. | ||
+ | KeepUnusedXServer=false | ||
+ | # The name of the Bumbleblee server group name (GID name) | ||
+ | ServerGroup=bumblebee | ||
+ | # Card power state at exit. Set to false if the card shoud be ON when Bumblebee | ||
+ | # server exits. | ||
+ | TurnCardOffAtExit=false | ||
+ | # The default behavior of '-f' option on optirun. If set to "true", '-f' will | ||
+ | # be ignored. | ||
+ | NoEcoModeOverride=false | ||
+ | # The Driver used by Bumblebee server. If this value is not set (or empty), | ||
+ | # auto-detection is performed. The available drivers are nvidia and nouveau | ||
+ | # (See also the driver-specific sections below) | ||
+ | Driver= | ||
+ | (...) | ||
+ | </code> | ||
+ | |||
+ | Modifiez la ligne 'Driver=' tel que : **Driver=nvidia** | ||
+ | |||
+ | <note>En effet, sans cette modification, Bumblebee semble ne pas arriver à trouver le bon module. //version touchée 3.2.1-5, 3.2.1-7//</note> | ||
+ | |||
+ | === Modification de "KernelDriver" === | ||
+ | |||
+ | Dans un premier temps, vérifiez le nom du pilote nvidia chargé : | ||
+ | |||
+ | <code root>modinfo nvidia</code> | ||
+ | |||
+ | puis : | ||
+ | |||
+ | <code root>modinfo nvidia-current</code> | ||
+ | |||
+ | Si l'une des deux commandes restitue, par exemple : | ||
+ | |||
+ | <code>modinfo: ERROR: Module not found.</code> | ||
+ | |||
+ | C'est que ce n'est pas le bon nom de pilote utilisé. | ||
+ | |||
+ | S'il vous restitue, par exemple : | ||
+ | |||
+ | <code> | ||
+ | modinfo nvidia-current | ||
+ | filename: /lib/modules/4.8.0-1-amd64/updates/dkms/nvidia-current.ko | ||
+ | alias: char-major-195-* | ||
+ | version: 367.57 | ||
+ | supported: external | ||
+ | license: NVIDIA | ||
+ | (...) | ||
+ | </code> | ||
+ | |||
+ | <note>Normalement, le bon nom de pilote doit être 'nvidia-current'</note> | ||
+ | |||
+ | Ensuite, éditez le fichier '/etc/bumblebee/bumblebee.conf' pour vérifier la section [driver-nvidia], avec les droits administrateur : | ||
+ | |||
+ | <code root>nano /etc/bumblebee/bumblebee.conf</code> | ||
+ | <code> | ||
+ | (...) | ||
+ | ## Section with nvidia driver specific options, only parsed if Driver=nvidia | ||
+ | [driver-nvidia] | ||
+ | # Module name to load, defaults to Driver if empty or unset | ||
+ | KernelDriver=nvidia-current | ||
+ | (...) | ||
+ | </code> | ||
+ | |||
+ | S'il apparaît que la ligne 'KernelDriver' comporte juste la mention suivante 'KernelDriver=nvidia', modifiez-la par '** KernelDriver=nvidia-current**' | ||
+ | |||
+ | Si dans votre cas, exceptionnel, le bon nom de pilote est bel et bien 'nvidia', modifiez si besoin la ligne en question par "KernelDriver=nvidia". | ||
+ | |||
+ | //C'est un [[https://bugs.debian.org/717687|bogue]] Debian connu - apparemment réglé dans la future version 3.2.1-11 de Bumblebee// | ||
+ | |||
+ | ==== [ERROR]Cannot access secondary GPU - error: [XORG] (EE) /dev/dri/card0: failed to set DRM interface version 1.4: Permission denied ==== | ||
+ | |||
+ | Cette erreur peut-être générée par un des différents points suivants ... veuillez les vérifier un par un, //pas tous en même temps, cela ne sert à rien//. Une fois qu'un point est vérifié/corrigé, [[#redemarrer-le-service-bumblebeed|redémarrez le service Bumblebee]] et essayez à nouveau votre commande. | ||
+ | |||
+ | Si cela ne fonctionne pas, passez au point suivant qui peut aider à la résolution, et répétez le même processus de vérification/modification puis redémarrage du service adéquat - **bien comprendre et accepter que cela ne réglera pas forcément votre problème** ! | ||
+ | |||
+ | === Vérifier 'xserver-xorg-video-nvidia' === | ||
+ | |||
+ | Vérifier l'installation du paquet **xserver-xorg-video-nvidia**. | ||
+ | |||
+ | <code user>dpkg -l | egrep "xserver-xorg-video-nvidia"</code> | ||
+ | <code>ii xserver-xorg-video-nvidia 340.96-1 amd64 NVIDIA binary Xorg driver</code> | ||
+ | |||
+ | Si vous n'avez aucun retour, c'est qu'il n'est pas installé, faites-le : | ||
+ | |||
+ | <code root>apt install xserver-xorg-video-nvidia</code> | ||
+ | |||
+ | === Gestion du fichier 'xorg.conf.nvidia' === | ||
+ | |||
+ | Ouvrez le fichier '/etc/bumblebee/xorg.conf.nvidia', et ajoutez les informations suivantes : | ||
+ | |||
+ | <code root>nano /etc/bumblebee/xorg.conf.nvidia</code> | ||
+ | <code> | ||
+ | Section "Screen" | ||
+ | Identifier "Default Screen" | ||
+ | Device "DiscreteNvidia" | ||
+ | EndSection | ||
+ | </code> | ||
+ | |||
+ | //C'est un [[https://bugs.debian.org/756522|bogue]] Debian Jessie connu, à-propos de Bumblebee - version 3.2.1-*, et Nvidia : 340.*.// | ||
+ | |||
+ | === Vérification prise en charge par 'nouveau' === | ||
+ | |||
+ | Si vous avez installé Bumblebee pour fonctionner avec le pilote libre 'nouveau', vérifiez le support de votre GPU nvidia par le pilote - s'il n'est pas pris-en-charge, installez la version 'Bumblebee-nvidia'. Si votre version de GPU est bien prise en charge par le pilote 'nouveau', vérifiez l'écriture de l'identifiant de Bus PCI, tel que ci-dessous. | ||
+ | |||
+ | === Erreur d'identifiant PCI === | ||
+ | |||
+ | <note important>L'identifiant de Bus PCI doit bien être écrit ainsi : BusID "PCI:01:00:0" - et non pas BusID "PCI:01:00.0"</note> | ||
+ | |||
+ | Si vous utilisez Bumblebee avec le pilote 'nouveau', vérifiez le support de votre version de GPU - si ce n'est pas le cas, installez la version de 'Bumblebee-nvidia'. Si c'est le cas, vérifiez votre écriture de l'identifiant du Bus PCI. | ||
+ | |||
+ | Il peut être utile, dans les deux cas de commenter toute écriture relative à l'identifiant du Bus PCI. | ||
+ | |||
+ | === Xorg >= 1.18 === | ||
+ | |||
+ | Si le serveur X est >= 1.18 et que votre Debian est une Testing, ou une Sid, il semble exister une incompatibilité entre le projet Bumblebee et le paquet 'xserver-xorg-legacy', donc supprimez ce dernier en tant qu'administrateur, s'il est installé ! | ||
+ | |||
+ | <code root>apt purge xserver-xorg-legacy</code> | ||
+ | |||
+ | //C'est clairement un [[https://github.com/Bumblebee-Project/Bumblebee/issues/749#issuecomment-216352740|bogue]] de Bumblebee.// | ||
+ | |||
+ | ==== [ERROR]Cannot access secondary GPU - error: [XORG] (EE) Failed to load module "mouse" (module does not exist, 0) ==== | ||
+ | |||
+ | Cette erreur peut-être générée par un des différents points suivants ... veuillez les vérifier un par un, //pas tous en même temps, cela ne sert à rien//. Une fois qu'un point est vérifié/corrigé, [[#redemarrer-le-service-bumblebeed|redémarrez le service Bumblebee]] et essayez à nouveau votre commande. | ||
+ | |||
+ | Si cela ne fonctionne pas, passez au point suivant qui peut aider à la résolution, et répétez le même processus de vérification/modification puis redémarrage du service adéquat - **bien comprendre et accepter que cela ne réglera pas forcément votre problème** ! | ||
+ | |||
+ | === Vérifier 'xserver-xorg-input-mouse' === | ||
+ | |||
+ | Vérifier l'installation du paquet **xserver-xorg-input-mouse**. | ||
+ | |||
+ | <code user>dpkg -l | egrep "xserver-xorg-input-mouse"</code> | ||
+ | <code>ii xserver-xorg-input-mouse 340.96-1 amd64 NVIDIA binary Xorg driver</code> | ||
+ | |||
+ | Si vous n'avez aucun retour, c'est qu'il n'est pas installé, faites-le : | ||
+ | |||
+ | <code root>apt install xserver-xorg-input-mouse</code> | ||
+ | |||
+ | === Vérifier le fichier xorg.conf.nvidia === | ||
+ | |||
+ | Vérifiez le fichier ''/etc/bumblebee/[[#gestion-du-fichier-xorgconfnvidia|xorg.conf.nvidia]]''. | ||
+ | |||
+ | === Vérifier votre identifiant PCI === | ||
+ | |||
+ | Vérifiez que votre [[#erreur-d-identifiant-pci|identifiant de Bus PCI]] soit correctement écrit ! | ||
+ | |||
+ | |||
+ | ==== [ERROR]Cannot access secondary GPU - error: [XORG] (EE) No devices detected ==== | ||
+ | |||
+ | Ouvrez le fichier '/etc/bumblebee/xorg.conf.nvidia', et modifiez l'option BusID. Vous trouverez cette information par l'usage de la commande 'lsusb'. | ||
+ | |||
+ | ==== [ERROR]Cannot access secondary GPU - error: [XORG] (EE) Problem parsing the config file ==== | ||
+ | |||
+ | **Vérifiez le fichier de configuration que vous venez de modifier !!!** | ||
+ | |||
+ | Que ce soit le fichier '/etc/bumblebee/xorg.config.nvidia' ou '/etc/bumblebee/xorg.config.nouveau', vous avez créé/modifié une section, et oublié/supprimé par erreur, de fermer correctement la section, voire une section est mal écrite ! | ||
+ | |||
+ | ==== fallen off the bus ==== | ||
+ | |||
+ | Si 'dmesg' vous informe du soucis GPU suivant 'fallen off the bus', il y a deux manières de régler le problème : | ||
+ | |||
+ | === première solution === | ||
+ | |||
+ | Testez la commande suivante, avant le lancement d'optirun : | ||
+ | |||
+ | <code root>tee /sys/module/rcutree/parameters/rcu_idle_gp_delay <<<1 </code> | ||
+ | |||
+ | Si cela fonctionne en effet correctement, **modifiez le fichier '/etc/default/grub' pour ajouter** l'information suivante à la ligne de commande GRUB_CMDLINE_LINUX_DEFAULT : rcutree.rcu_idle_gp_delay=1. | ||
+ | |||
+ | <code root>nano /etc/default/grub</code> | ||
+ | <code>(...) | ||
+ | GRUB_CMDLINE_LINUX_DEFAULT="quiet rcutree.rcu_idle_gp_delay=1" | ||
+ | (...)</code> | ||
+ | |||
+ | Mettez-à-jour votre grub : | ||
+ | |||
+ | <code root>update-grub</code> | ||
+ | |||
+ | et **redémarrez votre ordinateur** ... | ||
+ | |||
+ | === deuxième solution === | ||
+ | |||
+ | L'autre solution est de vérifier votre version de kernel linux - en effet ce problème concerne les noyaux versions 3.10 à 3.19 ! | ||
+ | Soit vous choisissez un noyau antérieur, soit vous upgradez sur un noyau plus récent ! | ||
+ | |||
+ | //C'est clairement un [[https://github.com/Bumblebee-Project/Bumblebee/issues/455#issuecomment-22497464|bogue]] de Bumblebee.// | ||
+ | |||
+ | ==== modprobe:FATAL:Module nouveau in use ==== | ||
+ | |||
+ | Vous avez installé le pilote nvidia ... \\ | ||
+ | et le système vous répond l'erreur suivante : 'modprobe:FATAL:Module nouveau in use', il est intéressant de le désactiver le module 'nouveau' lors du démarrage du noyau. | ||
+ | |||
+ | Paramétrez le fichier de configuration de grub '/etc/default/grub' afin de rajouter les paramètres noyau suivants 'nouveau.modeset=0' et 'modprobe.blacklist=nouveau' dans la ligne de configuration relative à 'GRUB_CMDLINE_LINUX_DEFAULT', telle que, par exemple : | ||
+ | |||
+ | <code root>nano /etc/default/grub</code> | ||
+ | <code>(...) | ||
+ | GRUB_CMDLINE_LINUX_DEFAULT="quiet nouveau.modeset=0 modprobe.blacklist=nouveau" | ||
+ | (...)</code> | ||
+ | |||
+ | Mettez-à-jour votre grub : | ||
+ | |||
+ | <code root>update-grub</code> | ||
+ | |||
+ | et **redémarrez votre ordinateur** ... | ||
+ | |||
+ | //[[https://fixmynix.com/nvidia-optimus-troubleshooting-in-debain-kali-linux-ubuntu/|source]]// | ||
+ | ===== Autres informations ===== | ||
+ | |||
+ | ==== Redémarrer le service bumblebeed ==== | ||
+ | |||
+ | Pour redémarrer le service lié à Bumblebee, exécutez la commande suivante en tant qu'administrateur : | ||
+ | |||
+ | <code root>systemctl restart bumblebeed</code> | ||
+ | |||
+ | ==== Documentation alternative ==== | ||
+ | |||
+ | Vous pouvez retrouver un complément d'informations sur la page [[http://wiki.debian.org/fr/Bumblebee|wiki du projet Debian]]... | ||
+ | |||
+ | ==== Gestion menu ==== | ||
+ | |||
+ | Si vous utilisez « Gnome », l'environnement de bureau par défaut de Debian, vous pouvez configurer vos raccourcis du menu avec « alacarte » | ||
+ | <code root>apt-get install alacarte</code> | ||
+ | |||
+ | ==== Ordinateurs testés ==== | ||
+ | |||
+ | * Asus G551JK, sous Stretch | ||
+ | * Asus N53SV, wheezy et SID, s'installe et fonctionne sans modification manuelle. | ||
+ | * Dell AlienWare 13, sous Sid | ||
+ | * Dell Optirun R15, sous Jessie | ||
- | === Pour Jessie (et versions supérieures) === | ||
- | Ajoutez votre utilisateur au groupe bumblebee - //là aussi, remplacez //**USER**// du tuto par votre nom d'utilisateur// - : | ||
- | <code root>adduser USER bumblebee</code> | ||
- | Ensuite, **redémarrez l'ordinateur** puis votre session comme d'habitude. |