Differences between revisions 34 and 35
Revision 34 as of 2011-06-08 22:07:06
Size: 28627
Comment: corriger lien vers script de choix de version
Revision 35 as of 2011-08-15 01:56:48
Size: 29124
Comment: synchroniser avec la version 179 + DKMS
Deletions are marked like this. Additions are marked like this.
Line 10: Line 10:
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 Debian a trois pilotes libres qui supportent les cartes NVIDIA. Vous pouvez voir lequel est utilisé à l'aide de la commande
Line 17: Line 17:

== vesa ==
Le pilote ''vesa'' est un pilote vidéo générique.

== nv ==
Le pilote ''nv'' donne généralement de meilleurs résultats que ''vesa'', mais n'est plus empaqueté à partir de Wheezy.

== nouveau ==
En plus de ''vesa'' et ''nv'', Debian contient les pilotes Nouveau à partir de Squeeze. Les pilotes Nouveau sont conçus par rétro-ingénierie pour les cartes NVIDIA. Ces pilotes sont expérimentaux et non-recommandés, sauf si vous avez des problèmes avec le pilote ''nv'' et ne voulez pas utiliser les pilotes ''nvidia''.
Line 87: Line 96:
Il y a quatre méthodes différentes pour installer un module du noyau. Il y a cinq méthodes différentes pour installer un module du noyau.
Line 109: Line 118:
Si cette étape abouti avec succès, vous pouvez maintenant [[#Libraries|poursuivre à l'étape 3]]. S'il n'y a pas de modules pré-compilés pour votre noyau, et que la [[#Method1|méthode 2]] échoue, vous pourriez essayer la [[#Method4|méthode 4]]. Si cette étape abouti avec succès, vous pouvez maintenant [[#Libraries|poursuivre à l'étape 3]]. S'il n'y a pas de modules pré-compilés pour votre noyau, et que les méthodes [[#Method2|2]] et [[#Method3|3]] échoue, vous pourriez essayer la [[#Method5|méthode 5]].
Line 129: Line 138:

Vous pouvez aussi rencontrer des problèmes si une tentative (qui a échoué) de compilation du module nvidia a laissé des traces dans /usr/src/modules/nvidia-kernel/

Dans ce cas, essayez de supprimer les anciens fichiers :

{{{
# rm -r /usr/src/modules/nvidia-kernel/
}}}

et de relancer "auto-install" encore une fois.
 * Ce problème devrait être confirmé. Si cette solution vous aide, merci d'en [[mailto:chealer@gmail.com?subject=Debian-NVIDIA|aviser le responsable]]. /* 2009-07-04 */
Line 148: Line 146:
Si vous n'êtes pas en mesure d'installer le module par module-assistant, essayez d'[[#Method2|installer un module pré-compilé]] si vous utilisez un noyau standard ou essayez de [[#Method3|compiler manuellement, avec un noyau personnalisé]]. Si vous n'êtes pas en mesure d'installer le module par module-assistant, essayez d'[[#Method1|installer un module pré-compilé]] si vous utilisez un noyau standard ou essayez de [[#Method4|compiler manuellement, avec un noyau personnalisé]].
Line 151: Line 149:

===== Utiliser DKMS =====
Ceci est la méthode la plus facile et recommandé à moins que vous ayez une raison de ne pas vouloir installer un compilateur.

Tout ce que vous devez faire est d'installer le paquetage d'en-têtes de noyau spécifiques à l'architecture pour l'image de noyau que vous utilisez (habituellement trouvé dans un paquetage nommé '''linux-headers-<version>''', où <version> est la version du noyau que vous utilisez) et puis installer '''nvidia-kernel-dkms''' ou le paquetage nvidia-kernel-legacy-...-dkms pour la version des pilotes dont vous avez besoin).

DKMS s'occupera automatiquement du processus de construction et d'installation.

<<Anchor(Method4)>>
Line 194: Line 201:
<<Anchor(Method4)>> <<Anchor(Method5)>>
Line 342: Line 349:
Dans tous les cas, cela arrivera quand le paquet nvidia-glx sera mis à jour. Toutes les versions de nvidia-glx dépendent d'un paquet virtuel nvidia-kernel-''version''. Lorsque vous avez suivi l'étape 2, vous avez installé un paquet qui fournit ce paquet virtuel. Cependant, lorsque vous mettez à jour nvidia-glx avant de refaire l'étape 2, APT va essayer de satisfaire cette dépendance au paquet virtuel, probablement en tentant d'installer au hasard un module pré-compilé. Vous serez notifié qu'un paquet nvidia-kernel-''quelque chose'' sera installé (ou mis à jour si vous l'avez déjà). Au lieu de laisser faire cela, refaites l'étape 2 pour avoir le module du noyau approprié. Ensuite la dépendance au paquet virtuel sera satisfaite et vous pourrez mettre à jour nvidia-glx en toute sécurité et sans installer de paquet inutile. Dans tous les cas, cela arrivera quand le paquet nvidia-glx sera mis à jour. Toutes les versions de nvidia-glx dépendent d'un paquet virtuel nvidia-kernel-''version''. Lorsque vous avez suivi l'étape 2, vous avez installé un paquet qui fournit ce paquet virtuel. Cependant, lorsque vous mettez à jour nvidia-glx avant de refaire l'étape 2, APT va habituellement essayer de satisfaire cette dépendance en tentant d'installer ''nvidia-kernel-dkms''. Au lieu de laisser faire cela, refaites l'étape 2 pour avoir le module du noyau approprié. Ensuite, la dépendance au paquet virtuel sera satisfaite et vous pourrez mettre à jour nvidia-glx en toute sécurité et sans installer de paquet inutile.

Traduction(s) : English - Español - Italiano


Ce document explique comment utiliser les cartes graphiques NVIDIA sur Debian GNU/Linux. La section suivante décrit brièvement les pilotes libres et le reste du document concerne les pilotes non-libres mais permettant l'accélération 3D.

Pilotes libres

Debian a trois pilotes libres qui supportent les cartes NVIDIA. Vous pouvez voir lequel est utilisé à l'aide de la commande

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

Vous pouvez simplement configurer X pour 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 la 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 pilotes non-libre nvidia, vous pouvez revenir aux pilotes libres.

vesa

Le pilote vesa est un pilote vidéo générique.

nv

Le pilote nv donne généralement de meilleurs résultats que vesa, mais n'est plus empaqueté à partir de Wheezy.

nouveau

En plus de vesa et nv, Debian contient les pilotes Nouveau à partir de Squeeze. Les pilotes Nouveau sont conçus par rétro-ingénierie pour les cartes NVIDIA. Ces pilotes sont expérimentaux et non-recommandés, sauf si vous avez des problèmes avec le pilote nv et ne voulez pas utiliser les pilotes nvidia.

Pilotes non-libres

Pourquoi utiliser une méthode spécifique à Debian ?

Les pilotes NVIDIA peuvent être installés à l'aide de l'installateur officiel de NVIDIA ou à partir d'un paquet Debian. Chaque méthode a ses avantages, 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'installateur NVIDIA est documenté ailleurs, par exemple ?ici.

Quelle que soit la méthode choisie, la section dépannage peut aider.

Comparaison de nvidia-installer 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 système de suivi des bogues Debian.
  • Peut être mise en œuvre lorsque X est en marche. (X devra être redémarré pour appliquer le changement de pilote)
  • Les utilisateurs de make-kpkg trouveront que cela s'inscrit facilement dans leur procédure de compilation existante.

  • Pas de téléchargement de fichiers depuis nvidia.com, les paquets Debian contiennent tout ce qu'il faut.

Avantages de l'installateur officiel NVIDIA :

Installation

Comment installer les pilotes NVIDIA 3D, de la façon Debian.

Aperçu

Les pilotes NVIDIA 3D sont constitués de deux parties: un module du noyau et une collection de librairies en espace utilisateur et un pilote vidéo X. Les librairies et le pilote X (parfois appelées "pilote binaire" ou librairies GLX) sont distribués sous forme binaire par NVIDIA, et sont empaquetés pour Debian dans les paquets 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") est distribué sous forme de sources (bien qu'avec un composant binaire), et empaqueté pour Debian dans les paquets nvidia-kernel-source. Les numéros de version du module du noyau et des librairies et du pilote X doivent correspondre. Les librairies ne doivent être installées qu'une fois, mais le module du noyau doit être recompilé à chaque changement de noyau. Que faire:

  • 0. S'assurer d'avoir les dépôts APT non-free et contrib (voir la page de manuel de sources.list(5) pour savoir comment faire ceci)

  • 1. Déterminer quelle version des pilotes devrait être installée.
  • 2. Installer le module du noyau
  • 3. Installer les librairies GLX et le pilote X
  • 4. Configurer X pour utiliser le pilote nvidia

Les étapes 3 et 4 ne sont à réaliser qu'une seule fois, mais l'étape 2 est requise à chaque changement de version du noyau.

Étapes

Choisir une version des pilotes

Les pilotes courants ne supportent pas certaines anciennes cartes NVIDIA. Jusqu'à maintenant, les pilotes NVIDIA ont arrêté le support d'anciennes cartes 3 fois. Cependant, NVIDIA maintient la dernière version du pilote qui est sortie avant un abandon de support pour des cartes anciennes. Cela signifie qu'il y a actuellement 4 séries de pilotes maintenus par NVIDIA. Le premier arrêt de support a eu lieu en 2005, donc les séries de pilotes legacy les plus anciennes (71xx) devraient fonctionner avec les cartes sorties avant 2005 et pas après. Le second arrêt de support a eu lieu en 2006, donnant lieu aux séries de pilotes legacy 96xx. Le troisième a eu lieu en 2008, et a amené les séries de pilotes legacy 173.14.

Aucune des distributions de Debian ne contient les 4 séries de pilotes disponibles, bien qu'il puisse être possible d'installer des paquets non officiels si votre carte requiert une série de pilotes non disponible dans votre distribution. Et Lenny et Squeeze contiennent la série de pilotes ancienne la plus récente, 173.14, et la deuxième série d'anciens pilotes, 96.43. Squeeze contient aussi la série courante. La série de pilotes la plus ancienne, 71xx, n'est dans aucune suite Debian actuelle (sauf unstable, mais elle y est inutilisable). C'est pratiquement impossible d'utiliser le pilote nvidia avec des cartes plus supportées après 71xx dans une suite Debian actuelle.

Les versions 71xx sont les seules qui supportent les cartes RIVA TNT, RIVA TNT2/TNT2 Pro, RIVA TNT2 Ultra, Vanta/Vanta LT, RIVA TNT2 Model 64/Model 64 Pro, Aladdin TNT2, GeForce 256, GeForce DDR, Quadro, GeForce2 GTS / GeForce2 Pro, GeForce2 Ti, GeForce2 Ultra et Quadro2 Pro. Les versions plus récentes que 96.43 ne supportent pas les cartes GeForce2 et GeForce4. Une liste plus détaillée des cartes seulement supportées par des pilotes legacy est disponible.

Debian distribue plusieurs versions des pilotes par le biais de plusieurs paquets ayant des noms différents. Par exemple, les librairies et le pilote X de la série courante sont dans le paquet nvidia-glx. Cependant, avec le temps, les pilotes courants deviennent des pilotes anciens, si bien que le paquet nvidia-glx dans Lenny n'est plus courant.

Utilisez les pilotes courants si possible. Vous pouvez consulter quelles cartes sont supportées dans l'Appendice A du README du pilote NVIDIA 195.36.24.

Fixez la valeur d'une variable VERSION, à laquelle le reste des instructions référera, à "-legacy-96xx", "-legacy-173xx" ou à une chaîne de caractères vide. Si vous voulez installer la version par défaut pour votre distribution, il n'est pas nécessaire de définir VERSION comme une chaîne de caractères vide. Pour trouver le nom de votre carte, vous pouvez utiliser lspci. Pour déterminer quelle version vous devriez utiliser, vous pouvez lancer ce script, qui vous proposera de définir VERSION.

Installer le module du noyau

Noyau standard ou personnalisé ?

Certaines méthodes d'installation supposent que vous utilisez un noyau standard, c'est à dire pré-compilé par la distribution Debian. Si vous savez quelle sorte de noyau vous avez, vous pouvez passer à la prochaine section.

Par défault, Debian est fournie avec un noyau standard. Si vous ne savez pas quelle sorte de noyau vous utilisez, c'est probablement un noyau standard. Si vous n'en êtes pas sûr, lancez

$ uname -r

et vérifiez si la sortie ressemble à 2.*.*-petit nombre-architecture (par exemple 2.6.18-6-486). Si c'est le cas, il y a de forte chances pour que vous utilisiez un noyau standard.

Méthodes

Il y a cinq méthodes différentes pour installer un module du noyau.

Installer un module pré-compilé

Cette méthode est facile si vous utilisez un noyau récent standard pour lequel un module pré-compilé est disponible; elle ne fonctionne pas du tout si vous utilisez un noyau personnalisé ou si vous utilisez Debian 6 et que vous avez besoin de pilotes legacy. Il y a des modules pré-compilés disponibles pour tous les noyaux installés par défaut par Debian Lenny et pour la version courante des pilotes pour tous les noyaux installés par défaut par Debian Squeeze. S'il y a un module pré-compilé disponible pour votre noyau, utilisez cette méthode.

Si vous ne connaissez pas la version de votre noyau, lancez

$ uname -r

Regardez la toute fin, après le dernier tiret et gardez ceci en tête. Le nom du paquet que nous devons installer commence par "nvidia-kernel-", il est suivi d'une indication de la série de pilotes que vous souhaitez (vide pour la série par défaut). Le nom fini par l'identifiant de votre image Linux.

Par exemple, avec apt-get :

# apt-get install nvidia-kernel${VERSION}-$(uname -r)

Si cette étape abouti avec succès, vous pouvez maintenant poursuivre à l'étape 3. S'il n'y a pas de modules pré-compilés pour votre noyau, et que les méthodes 2 et 3 échoue, vous pourriez essayer la méthode 5.

Utiliser module-assistant

Cette méthode est facile, et devrait marcher avec la plupart des noyaux standards ou personnalisés. Pour un noyau personnalisé, vous aurez besoin que ses en-têtes Linux soient installées.

Il faut module-assistant et nvidia-kernel-common. Pour les installer avec apt-get :

# apt-get install module-assistant nvidia-kernel-common

Lancez ensuite la commande suivante :

# m-a auto-install nvidia-kernel${VERSION}-source

Et c'est tout. Si tout s'est bien passé, votre module nvidia est maintenant compilé et installé; vous pouvez continuer à l'étape 3. Sinon, lisez le reste de cette section.

Vous devez utiliser la même version du compilateur gcc pour compiler votre module nvidia que celle qui a servi à compiler votre noyau. Ceci peut poser problème si vous utilisez un noyau standard. Si module-assistant échoue, lisez son log de sortie et cherchez des messages suggérant que vous auriez besoin, par exemple, de gcc-4.0 au lieu de gcc-4.1. Alors installez le paquet correspondant et réessayez auto-install.

L'étape auto-install est la plus grosse étape de la procédure, et aussi celle qui a le plus de risque d'échouer. auto-install peut être divisé en plusieurs petites étapes de module-assistant, ce qui peut aider à déboguer :

  • get

  • build

  • install

Si # m-a get nvidia; échoue, essayez d'installer le paquet nvidia-kernel-source. Si APT échoue lors de l'installation de nvidia-kernel-source, vous devriez retourner à l'étape 0 et vérifier que vous n'avez rien oublié.

Si vous n'êtes pas en mesure d'installer le module par module-assistant, essayez d'installer un module pré-compilé si vous utilisez un noyau standard ou essayez de compiler manuellement, avec un noyau personnalisé.

Utiliser DKMS

Ceci est la méthode la plus facile et recommandé à moins que vous ayez une raison de ne pas vouloir installer un compilateur.

Tout ce que vous devez faire est d'installer le paquetage d'en-têtes de noyau spécifiques à l'architecture pour l'image de noyau que vous utilisez (habituellement trouvé dans un paquetage nommé linux-headers-<version>, où <version> est la version du noyau que vous utilisez) et puis installer nvidia-kernel-dkms ou le paquetage nvidia-kernel-legacy-...-dkms pour la version des pilotes dont vous avez besoin).

DKMS s'occupera automatiquement du processus de construction et d'installation.

Compilation manuelle, avec un noyau personnalisé

Utilisez cette méthode si vous avez configuré et compilé un noyau personnalisé. La présentation de cette méthode est probablement inexacte et incomplète.

  1. Installez les sources du module. Par exemple, avec apt-get :
    # apt-get install nvidia-kernel${VERSION}-source

    Cela va installer une archive dans /usr/src/. Décompressez-là dans /usr/src :

    cd /usr/src
    tar -xf nvidia-kernel-*.tar.gz

    Les sources du module sont maintenant dans /usr/src/modules/nvidia-kernel[quelque chose].

  2. Configurez votre noyau. Cette étape n'étant pas documentée ici, référez-vous à la documentation de kernel-package si besoin. En résumé, vous devriez faire ceci
    cd /usr/src/linux
    make xconfig

    et ensuite choisir les options souhaitées. Notez cependant qu'il a été rapporté que les options suivantes posent problème avec le pilote nvidia :

    • Device drivers –> Graphics Support –> nVidia Riva support (FB_RIVA)

    • Device drivers –> Graphics support –> nVidia Framebuffer Support (FB_NVIDIA)

    • Device drivers –> Graphics support –> VESA VGA graphics support (FB_VESA)

    • Processor Type and Features –> Local APIC support on uniprocessors (X86_UP_APIC) (non disponible si vous avez un noyau SMP, incluant l'hyperthreading)

    Il est par conséquent recommandé de désactiver ces options dans la configuration du noyau et, si vous ne le faites pas pour une raison quelconque et que votre serveur X ne fonctionne pas correctement avec le pilote nvidia, il y a de fortes chances qu'une de ces options en soit la cause. Pour plus de détails, reportez-vous à la section Dépannage.

  3. Compilation du noyau et du module nvidia :

    make-kpkg clean
    make-kpkg kernel_image modules_image

    La commande précédente va créer deux paquets Debian, linux-image-*.deb et nvidia-kernel-*.deb, dans /usr/src et /usr/src/modules, qui correspondent respectivement au noyau et au module nvidia.
    De même, si vous avez d'autres modules dans /usr/src/modules, alors la cible "modules_image" va indiquer à make-kpkg de compiler des paquets Debian pour ces derniers.

  4. Installation du nouveau noyau et du module :
    cd /usr/src
    # dpkg -i /path/linux-image-*.deb /path/nvidia-kernel-*.deb
    Attention à l'utilisation des * si vous avez plusieurs images de noyau ou plusieurs paquets nvidia-kernel dans /usr/src. L'utilisation des noms explicites est probablement mieux ici.
  5. Démarrage du nouveau noyau. Avant d'essayer les pilotes NVIDIA 3D, vérifiez que le nouveau noyau fonctionne et que X démarre avec un pilote libre.

Passez à l'étape 3.

Compilation manuelle, avec un noyau standard

Utilisez cette méthode si vous utilisez un noyau standard et que les deux premières méthodes ont échoué. module-assistant devrait automatiser ce processus. En d'autres termes, si la première méthode échoue mais que celle-ci fonctionne, vous devriez soumettre un rapport de bogue pour module-assistant.

Cette procédure est adaptée des instructions que l'on trouve dans /usr/share/doc/nvidia-kernel-source/README.Debian et sont potentiellement inexactes.

  1. Sauvegardez le numéro de version de votre noyau (par ex. 2.6.18-6-686) dans quelques variables d'environnement :
    export KVERS=$(uname -r)
    export KSRC=/usr/src/linux-headers-$KVERS
    export KPKG_DEST_DIR=/usr/src
    Ces variables seront utilisées pour la compilation dans ce qui suit, il est donc important de les définir et de les exporter.
  2. Installez les sources du module :
    # apt-get install nvidia-kernel-source nvidia-kernel-common
    Vous obtenez une archive /usr/src/nvidia-kernel-source.tar.gz que vous pouvez extraire ainsi
    cd /usr/src
    tar -zxf nvidia-kernel-source.tar.gz

ou, s'il s'agit d'une archive /usr/src/nvidia-kernel.tar.bz2:

  • cd /usr/src
    tar -jxf nvidia-kernel.tar.bz2

Les sources du module seront extraites dans /usr/src/modules/nvidia-kernel.

  1. Installez les entêtes du noyau:
    apt-get install linux-headers-$KVERS
    Les fichiers d'entête se trouvent alors dans /usr/src/linux-headers-$KVERS. Vérifiez que l'image du noyau qui est installée et les entêtes ont le même numéro de version en lançant:
    apt-cache policy linux-image-$KVERS linux-headers-$KVERS
    et vérifiez que le numéro de version des paquets marqués "Installé" sont les mêmes. Si ce n'est pas le cas, déterminez la distribution qui contient la version du paquet linux-headers dont vous avez besoin, par ex. testing, et relancer la commande précédente en ajoutant par exemple '-t testing' (ou autres).
  2. Compilez le paquet du module du noyau:
    cd /usr/src/modules/nvidia-kernel
    debian/rules binary-modules
    Il en résulte un paquet /usr/src/nvidia-kernel-*.deb, qui contient le module du noyau. Note: il semble que le paquet se retrouve parfois dans /usr/src/modules, au lieu de /usr/src. Dans ce cas, ajustez la suite en conséquence.
  3. Installez le module:
    dpkg -i /usr/src/nvidia-kernel-*.deb
    Comment précédemment, l'utilisation des * doit être faite avec précaution si vous avez plusieurs paquets nvidia-kernel dans /usr/src, dans ce cas, il est plus prudent d'utiliser les noms explicites.

Maintenant poursuivez à l'étape 3, ci-dessous.

Installez le pilote X NVIDIA et les librairies

Installez le paquet des librairies user-space. Par exemple, avec apt-get :

# apt-get install nvidia-glx${VERSION}

Note : La raison pour laquelle cette étape vient après l'étape 2 est que le paquet nvidia-glx dépend d'un paquet virtuel nommé 'nvidia-kernel-$NVVERSION', où $NVVERSION est le numéro de version amont du paquet nvidia-glx. Ce paquet virtuel devrait être fourni par le module du noyau que vous avez installé à l'étape 2; donc vous devez finir cette étape avant. Si l'installation de nvidia-glx échoue parce que la dépendance 'nvidia-kernel-$NVVERSION' n'est pas satisfaite, vous devriez vous assurer que l'étape 2 s'est bien déroulée.

Configuration de X pour utiliser le pilote nvidia

Vous pouvez utiliser la méthode manuelle ou nvidia-xconfig, qui créera un xorg.conf basique et un final correspondant à vos préférences.

La méthode manuelle

xorg.conf peut faire en sorte que X utilise le pilote nvidia. Si vous en avez un, modifiez-le, sinon vous devez en créer un.

Modifier un xorg.conf existant

Prenez soin de sauvegarder votre fichier de configuration X actuel :

# cp -p /etc/X11/xorg.conf /etc/X11/xorg.conf.bak

Attention aux fautes de frappe et surveillez le log de X si les choses se passent mal.

Éditez /etc/X11/xorg.conf :

  • S'il contient une section "Module", vérifiez qu'il contient un ligne :
    Load "glx"
    et effacez ou commentez (en ajoutant un # en début de ligne) n'importe quelles lignes qui réfèrent aux modules "dri" ou "GLCore".
  • Dans la section "Device" de votre carte graphique, changer la ligne driver (normalement nv ou vesa) en nvidia. Si le pilote n'est pas défini (pas de ligne driver), ajoutez

    Driver "nvidia"

Créer un xorg.conf

Créez un xorg.conf avec ce contenu :

Section "Module"
    Load        "glx"
EndSection

Section "Device"
    Identifier  "Video Card"
    Driver              "nvidia"
EndSection

En utilisant nvidia-xconfig

Attention: cette méthode n'est généralement pas recommandée du fait d'un important bogue de X (504692).

Installez nvidia-xconfig. Par exemple, avec apt-get :

# apt-get install nvidia-xconfig

Maintenant créez un xorg.conf basique incluant le pilote NVIDIA :

# nvidia-xconfig

Redémarrage de X

C'est une étape cruciale bien que simple. Si cela ne marche pas pour quelque raison que ce soit, et que vous souhaitez revenir sous X avant de régler le problème, vous devrez revenir à l'étape 4 et inverser le choix du pilote (pour un pilote libre). Quand vous pensez que vous avez réglé le problème, vous pouvez refaire l'étape 4 et réessayer de démarrer X. Souvenez-vous que même si cela fonctionne, vous devriez lire la section suivante pour éviter des ennuis à l'avenir. Si cela ne fonctionne pas... allez voir la section Dépannage.

Si vous n'utilisez pas de gestionnaire de sessions, fermez simplement votre session. Vous serez ainsi ramené à une console. Si ce n'est pas le cas, vous utilisez certainement un gestionnaire de sessions (tel que gdm, kdm ou xdm). Premièrement, identifiez celui que vous utilisez. Si vous ne savez pas, c'est probablement gdm. Vous pouvez aussi le déterminer en vérifiant si un processus dont le nom se termine par "dm" est en cours. Une fois que vous avez déterminé celui que vous utilisez, fermez votre session et lancez le script init approprié dans une console (à laquelle vous accéderez en tapant Ctrl+Alt+Fx, Fx=F1-F6 habituellement). Voici un exemple pour gdm :

# invoke-rc.d gdm restart

Sinon, tapez simplement Alt+E à l'écran de connexion si vous utilisez kdm. Si vous ne voyez pas comment redémarrer X avec ces instructions, vous pouvez simplement redémarrer votre système. En outre, le raccourci clavier Ctrl+Alt+Backspace devrait faire l'affaire, bien qu'il soit quelque peu inamical.

Vérification que ça fonctionne

Pour savoir si l'accélération fonctionne, glxinfo peut être utilisé. Ce programme est dans le paquet mesa-utils. Si

$ glxinfo |grep rendering

retourne "direct rendering: Yes", l'accélération fonctionne. Sinon, référez-vous à la section "L'accélération matérielle, alias rendu direct (direct rendering, en anglais), ne fonctionne pas". Si la commande retourne oui, l'accélération 3D (dans les jeux tels que PlanetPenguin Racer ou Extreme Tux Racer et Neverball) devrait fonctionner.

Comment gérer les changements de noyaux et les mises à jour du pilote

L'étape 3 et 4 sont faites pour de bon. Cependant, vous devrez répéter l'étape 2 dans certaines situations. Si vous ne faites pas attention lorsque ces situations se produisent, X ne démarrera pas. Il y a deux approches pour ceci : soit se rappeler quand cela arrive et essayer de l'empêcher, ou se souvenir de revenir ici quand X ne démarre plus. Quoi qu'il en soit, vous n'en aurez jamais fini. Si X ne démarre pas à cause de ça, vous pouvez revenir et inverser l'étape 4 (en choisissant un pilote libre à nouveau) et ensuite choisir à nouveau le pilote nvidia lorsque vous voulez réessayer.

Quand

L'étape 2 installe un module nvidia pour un noyau spécifique et pour une version du pilote NVIDIA. Il faudra le refaire pour chaque nouveau noyau et pour chaque nouvelle version du pilote. Si vous ne savez pas de quoi il s'agit continuez à lire.

... la version du pilote NVIDIA change

Si vous utilisez Debian stable, ceci n'arrivera pas tant que vous ne passerez pas à la prochaine version, mais cela arrivera à ce moment-là.

Dans tous les cas, cela arrivera quand le paquet nvidia-glx sera mis à jour. Toutes les versions de nvidia-glx dépendent d'un paquet virtuel nvidia-kernel-version. Lorsque vous avez suivi l'étape 2, vous avez installé un paquet qui fournit ce paquet virtuel. Cependant, lorsque vous mettez à jour nvidia-glx avant de refaire l'étape 2, APT va habituellement essayer de satisfaire cette dépendance en tentant d'installer nvidia-kernel-dkms. Au lieu de laisser faire cela, refaites l'étape 2 pour avoir le module du noyau approprié. Ensuite, la dépendance au paquet virtuel sera satisfaite et vous pourrez mettre à jour nvidia-glx en toute sécurité et sans installer de paquet inutile.

... le noyau change

Si vous avez compilé d'autres modules avec module-assistant, vous devez refaire l'étape 2 à chaque fois que vous relanceriez module-assistant pour d'autres modules, c'est à dire pour chaque nouvelle ABI du noyau. Si vous ne savez pas de quoi il s'agit, continuez.

Si vous avez installé un noyau avec une nouvelle ABI, un nouveau paquet image du noyau sera installé. Par exemple, si le noyau Linux 2.6.18 a une nouvelle ABI et que vous utilisez actuellement linux-image-2.6.18-4-486, vous devrez installer le paquet linux-image-2.6.18-5-486 pour avoir un nouveau noyau (les parties "-4" et "-5" du nom du paquet indiquent respectivement que ces paquets contiennent les quatrième et cinquième ABI des noyaux standards Debian 2.6.18 pour l'architecture i386). Ceci pourrait survenir sans votre intervention lors d'une mise à jour du système si le méta-paquet linux-image-2.6-486 est installé. Ceci peut aussi arriver si vous installez un noyau différent. Par exemple, vous pouvez à la fois avoir les noyaux 2.6.26 et 2.6.32 dans Lenny. Si vous avez fait l'étape 2 pout 2.6.26 seulement, vous devrez le faire pour 2.6.32 aussi. Un nouveau noyau est installé lorsqu'un nouveau paquet linux-image-quelque chose est installé. X ne démarrera pas avec ce nouveau noyau tant que vous n'aurez pas réalisé l'étape 2 pour ce noyau.

Dépannage

À traduire...

Pour plus d'informations

  • Pour plus d'informations au sujet du pilote, voir:
    • /usr/share/doc/nvidia-glx/README.Debian
    • /usr/share/doc/nvidia-glx/README.txt.gz

    Ces fichiers contiennent beaucoup d'informations à propos d'options et concernant le dépannage sur les pilotes propriétaires NVIDIA. En les lisant, vous y découvrirez par exemple comment supprimer l'écran d'accueil avec le logo NVIDIA qui s'affiche à chaque lancement du serveur X (astuce : rechercher "NoLogo").

  • Vous pouvez ajuster la fréquence d'horloge de votre carte graphique et sa mémoire vive à l'aide des commandes nvclock, nvclock_gtk, ou nvclock_qt, disponibles respectivement dans les paquets nvclock, nvclock-gtk, et nvclock-qt. Mise en garde de rigueur : vous pouvez détruire votre carte graphique avec ces outils si vous ne faites pas attention.
  • Vous pouvez aussi faire d'autres ajustements, comme des réglages relativement obscurs pour le pilote en lançant nvidia-settings, disponible dans le paquet nvidia-settings.

À propos de ce document

Cette page de wiki a été traduite de la version anglaise créée par Philippe Cloutier dans le but de publier une mise à jour au Andrew's Debian-nVidia HOWTO. Vous êtes libre de modifier cette page tant que vous acceptez de laisser les droits d'auteur de vos changements à l'auteur. Pour tout problème, commentaire, ou toute question concernant les informations de ce document, vous pouvez écrire au responsable. Il n'est pas un expert, mais il fait de son mieux pour rendre ce document utile.

Crédits

Merci à Andrew Schulman pour la publication de ce HOWTO, pour avoir accepté d'en partager les droits, et pour avoir lié le HOWTO à cette page depuis qu'il a arrêté de le maintenir. Merci à Denis Laxalde pour la traduction de toutes ces lignes en français ;-)

Licence

Ce document est sous Copyright 2005, par Andrew E. Schulman. Vous avez la permission de copier, distribuer et/ou modifier librement le contenu de ce document de quelque manière et à quelque fin.

Voir aussi