Comment résoudre le problème de chargement des pilotes NVIDIA après une mise à jour du noyau sous Ubuntu

Une mise à jour du noyau Ubuntu peut permettre à un système NVIDIA de démarrer normalement alors que le pilote propriétaire ne se charge plus. Les symptômes visibles varient : nvidia-smimessage d’erreur indiquant une impossibilité de communication avec le pilote, applications CUDA ne reconnaissant plus le GPU, basculement du rendu logiciel vers le bureau, voire modprobe nvidiaplantage. La solution consiste à identifier la couche défectueuse plutôt que de tout réinstaller.

Ce document de référence traite des pilotes NVIDIA fournis avec Ubuntu et des recommandations actuelles de Canonical. En octobre 2026, Ubuntu recommandait l' ubuntu-driversoutil ou l'application « Pilotes supplémentaires » pour la plupart des systèmes et préconisait l'utilisation de modules noyau précompilés et signés lorsqu'ils étaient disponibles. La documentation NVIDIA pour Ubuntu est également compatible avec Ubuntu 22.04, 24.04 et 26.04, mais la dénomination des paquets diffère selon les versions ; par conséquent, ne copiez pas le numéro de branche d'un exemple à moins qu'il ne soit effectivement disponible pour votre machine.

Liste de contrôle pour un diagnostic rapide

VérifierCommandeCe que cela vous dit
Noyau en cours d'exécutionuname -rL'ABI du noyau exact qui nécessite un module NVIDIA correspondant.
Statut du conducteurnvidia-smiEst-il possible pour l'espace utilisateur de communiquer avec le module noyau NVIDIA chargé ?
Modules chargéslsmod | grep -E 'nvidia|nouveau'Que ce soit actuellement NVIDIA ou Nouveau qui possède le GPU.
forfait recommandésudo ubuntu-drivers listBranches de pilotes qu'Ubuntu considère comme appropriées pour le matériel.
Démarrage sécurisémokutil --sb-statePeut-on rejeter les modules de noyau tiers non signés ?
Journal du noyausudo dmesg | grep -iE 'nvrm|nvidia|nouveau|secure|module'Indices utiles en cas d'incompatibilité d'API, de rejet de signature ou d'échec de sondage.
Le terminal Ubuntu affiche uname -r, une commande nvidia-smi ayant échoué et aucun module NVIDIA renvoyé par lsmod.
Voici un exemple typique d'erreur après une mise à jour : le nouveau noyau s'exécute, mais le module NVIDIA n'est pas chargé. Les versions exactes du noyau et des pilotes sur votre système peuvent varier.

1. Confirmez que le problème a commencé avec le noyau actuel

Commencez par enregistrer le noyau en cours d'exécution et l'état actuel de la carte NVIDIA :

uname -r
nvidia-smi
lsmod | grep -E 'nvidia|nouveau'

En cas nvidia-smid'échec et si aucun nvidiamodule n'apparaît lsmod, l'erreur se situe en dessous de la couche CUDA ou de l'application de bureau. Si nvidia-smiune erreur est signalée Failed to initialize NVML: Driver/library version mismatch, Canonical la décrit comme une incompatibilité entre les modules espace utilisateur et noyau, souvent consécutive à une mise à jour de pilote ; un redémarrage peut suffire si le nouveau module est déjà installé.

Si vous pouvez encore sélectionner un noyau plus ancien via GRUB et que le pilote y fonctionne, cela indique fortement que le nouveau noyau ne dispose pas d'un module NVIDIA utilisable. Un noyau plus ancien constitue une solution temporaire utile, mais ne représente pas une réparation définitive, car la compatibilité entre le noyau et le pilote actuels reste indispensable.

2. Demandez à Ubuntu quelle branche de pilotes il recommande.

Sur un ordinateur de bureau ou une station de travail Ubuntu standard, utilisez la logique de sélection des pilotes d'Ubuntu plutôt que de deviner une branche :

sudo apt update
sudo ubuntu-drivers list

Pour la plupart des ordinateurs de bureau et des systèmes de jeu, Canonical recommande le pilote UDA standard plutôt qu'un -serverpaquet. Sur les serveurs de calcul, suivez les instructions spécifiques aux serveurs, ubuntu-drivers list --gpgpule cas échéant. Si votre système a été précédemment installé avec l'installateur autonome NVIDIA .runou un dépôt tiers, l'utilisation de plusieurs sources de paquets peut compliquer le diagnostic. Canonical avertit explicitement que les pilotes installés en dehors de ses méthodes documentées peuvent écraser les composants fournis par Ubuntu et perturber le démarrage sécurisé.

Terminal Ubuntu affichant la liste des pilotes Ubuntu et les périphériques Ubuntu avec un pilote NVIDIA marqué comme recommandé.
Utilisez la détection automatique des pilotes Ubuntu pour identifier la branche appropriée pour le GPU installé au lieu de coder en dur une version provenant d'une autre machine.

3. Vérifiez le démarrage sécurisé avant toute reconstruction.

Le démarrage sécurisé est une cause fréquente de non-chargement d'un module NVIDIA présent sur le disque. Vérifiez son état :

mokutil --sb-state
sudo modprobe nvidia

Si le démarrage sécurisé est activé et modproberenvoie un message tel que celui-ci Key was rejected by service, le noyau applique la validation des modules. Ubuntu impose depuis des années la validation des modules du noyau sous démarrage sécurisé sur les versions amd64 prises en charge. Canonical recommande d'utiliser des modules NVIDIA précompilés et signés lorsqu'ils sont disponibles. Si vous utilisez DKMS, Ubuntu peut exiger la création et l'enregistrement d'une clé de propriétaire de machine (MOK) au redémarrage.

Ne désactivez pas le démarrage sécurisé en premier lieu. Cela peut constituer un test de diagnostic rapide dans un environnement contrôlé, mais la meilleure solution consiste généralement à installer un module signé ou à enregistrer correctement la clé d'activation (MOK). Canonical décrit la procédure d'enregistrement dans sa documentation relative au démarrage sécurisé UEFI .

Le terminal Ubuntu affiche SecureBoot activé et la commande modprobe nvidia échoue avec un message de rejet de clé.
Un rejet de signature indique un problème de confiance avec le démarrage sécurisé plutôt qu'une absence de GPU. Résolvez le problème de signature des modules ou d'inscription MOK au lieu de réinstaller systématiquement les bibliothèques espace utilisateur.

4. Vérifiez si le module NVIDIA correspondant existe pour le noyau en cours d'exécution

Les paquets NVIDIA précompilés d'Ubuntu sont liés à une ABI du noyau. Remplacez-les DRIVER_BRANCHpar la branche indiquée parubuntu-drivers list :

DRIVER_BRANCH=XXX
apt-cache policy linux-modules-nvidia-${DRIVER_BRANCH}-$(uname -r)

Si le paquet est installé pour le noyau actuel, passez aux vérifications de démarrage sécurisé, de Nouveau et des journaux ci-dessous. S'il est manquant, installez le paquet de module correspondant :

sudo apt install linux-modules-nvidia-${DRIVER_BRANCH}-$(uname -r)

Canonical prend également en charge l'installation du métapaquet de configuration, linux-modules-nvidia-${DRIVER_BRANCH}-genericqui permet aux futures mises à jour du noyau d'intégrer les modules NVIDIA correspondants. Le nom exact du paquet dépend de votre version d'Ubuntu, de la configuration du noyau, de la branche du pilote et du type de serveur utilisé ; vérifiez donc le nom proposé par APT avant de confirmer.

Vérification, dans le terminal Ubuntu, de la politique de cache apt pour un paquet de module noyau NVIDIA et les en-têtes du noyau actuel.
La vérification de la politique des paquets permet de distinguer un module NVIDIA spécifique au noyau manquant d'un problème de pilote en espace utilisateur.

5. Si vous utilisez DKMS, assurez-vous que les en-têtes du noyau actuels sont présents.

DKMS crée un module spécifique au noyau que vous utilisez. Il nécessite donc les en-têtes du noyau correspondants. Canonical recommande DKMS principalement lorsque les modules précompilés ne sont pas disponibles, notamment avec certains noyaux personnalisés.

sudo apt install linux-headers-$(uname -r)
dkms status

Si l'entrée NVIDIA DKMS n'indique pas une compilation réussie pour le noyau actuel, consultez le journal de compilation /var/lib/dkms/avant de tenter de supprimer des paquets au hasard. Les échecs courants incluent des en-têtes manquants, des combinaisons compilateur/noyau non prises en charge ou un problème de signature de module. Après avoir corrigé le prérequis, réinstallez le paquet DKMS approprié ou utilisez la procédure automatisée d'Ubuntu :

sudo ubuntu-drivers install --include-dkms

N'utilisez cette commande que lorsque DKMS est réellement nécessaire. La documentation actuelle de Canonical indique que les modules précompilés sont la solution privilégiée par la plupart des utilisateurs, notamment avec le démarrage sécurisé.

Terminal Ubuntu installant les en-têtes Linux pour le noyau actuellement en cours d'exécution.
Des en-têtes de noyau correspondants sont nécessaires lorsque DKMS doit compiler un module NVIDIA pour le noyau actuel.

6. Installez le module précompilé manquant lorsqu'il est disponible.

Si l'étape 4 a montré que le noyau actuel ne contient pas le module NVIDIA précompilé, installez-le explicitement et laissez APT reconstruire l'initramfs :

sudo apt install linux-modules-nvidia-${DRIVER_BRANCH}-$(uname -r)

Vérifiez ensuite que l'installation d'APT s'est terminée sans erreur de dépendance. Évitez de forcer l'installation des paquetsdpkg --force-* ; cela peut entraîner des versions incompatibles du module noyau, des bibliothèques espace utilisateur et du métapaquet.

En cas de doute sur la branche à utiliser, la réparation générale la plus sûre est :

sudo ubuntu-drivers install

Canonical indique qu'il ubuntu-driversutilise la même logique que l'application Pilotes supplémentaires et choisit, par défaut, des pilotes précompilés et signés connus pour fonctionner avec le démarrage sécurisé.

Terminal Ubuntu installant un paquet linux-modules-nvidia pour le noyau actuel et mettant à jour l'initramfs.
L'installation du module spécifique au noyau corrige le problème courant où la branche du pilote est présente mais où le nouveau noyau ne dispose pas de son module NVIDIA correspondant.

7. Redémarrez après les modifications du package

Le redémarrage n'est pas ici purement formel. Le noyau en cours d'exécution peut conserver un ancien module NVIDIA en mémoire alors qu'APT a déjà mis à jour les bibliothèques espace utilisateur sur le disque. Canonical documente précisément ce phénomène comme étant la cause d'une incompatibilité de version entre le pilote et la bibliothèque NVML après les mises à jour.

sudo reboot

Après le redémarrage, ne réinstallez pas immédiatement. Vérifiez d'abord le résultat avec les commandes de la section suivante.

Terminal Ubuntu affichant une opération d'installation de pilotes Ubuntu suivie d'un redémarrage avec la commande sudo.
Après toute modification du pilote ou du module du noyau, redémarrez le système afin que le noyau charge le module NVIDIA nouvellement installé et que les composants de l'espace utilisateur retrouvent leur version initiale.

8. Vérifiez que le module NVIDIA est chargé.

Courir:

nvidia-smi
lsmod | grep nvidia
cat /proc/driver/nvidia/version

Une réparation réussie présente trois signes utiles : nvidia-smila liste du GPU, lsmodl’affichage des modules NVIDIA et /proc/driver/nvidia/versionl’indication de la version du module en cours d’exécution. Pour les charges de travail CUDA, relancez également l’application ou le framework qui avait échoué ; nvidia-smicela prouve à lui seul la communication entre les pilotes, et non la compatibilité de toutes les bibliothèques CUDA de votre environnement.

Terminal Ubuntu affichant une sortie réussie de nvidia-smi et les modules NVIDIA listés par lsmod.
État final satisfaisant : nvidia-smi peut communiquer avec le GPU et les modules du noyau NVIDIA sont chargés. Les valeurs affichées sont données à titre d’exemple et ne constituent pas une version requise.

Si cela ne fonctionne toujours pas : utilisez le symptôme pour choisir l’action suivante.

« Incompatibilité de version entre le pilote et la bibliothèque »

Redémarrez d'abord. Comparez ensuite la version du module noyau en cours d'exécution avec les paquets installés. Canonical indique que des composants espace utilisateur mis à jour peuvent temporairement entrer en conflit avec un module plus ancien encore chargé en mémoire. Si l'incompatibilité persiste après le redémarrage, vérifiez la présence de sources de paquets mixtes et de plusieurs branches de pilotes.

« Aucun périphérique n'a été trouvé » et Nouveau est chargé

Vérifier:

lsmod | grep nouveau

La documentation serveur d'Ubuntu indique que Nouveau peut entrer en conflit avec le pilote propriétaire NVIDIA dans ce cas. Si Nouveau est chargé et que vous souhaitez utiliser le pilote propriétaire, Canonical recommande de le bloquer et de reconstruire l'initramfs.

echo "blacklist nouveau" | sudo tee /etc/modprobe.d/disable-nouveau.conf
echo "options nouveau modeset=0" | sudo tee -a /etc/modprobe.d/disable-nouveau.conf
sudo update-initramfs -u
sudo reboot

Ne bloquez pas Nouveau simplement parce qu'il est présent sur le disque ; vérifiez d'abord qu'il est effectivement chargé et pertinent par rapport à la panne.

modprobe nvidiaindique que la clé a été rejetée

Revenez au chemin du démarrage sécurisé. Utilisez des modules Ubuntu signés lorsque cela est possible, ou effectuez l'enregistrement MOK pour un module DKMS. La réinstallation répétée du même module non signé ne modifiera pas la décision de confiance.

Le nouveau noyau ne dispose d'aucun module compatible.

Démarrez temporairement avec un noyau ancien fonctionnel, maintenez le système à jour et vérifiez si Ubuntu fournit un module précompilé compatible avec le noyau plus récent. Si vous utilisez délibérément un noyau personnalisé, DKMS peut convenir, mais consultez son journal de compilation et assurez-vous de la présence d'une signature de démarrage sécurisé. Évitez de figer un ancien noyau indéfiniment, sauf si vous disposez d'un plan de maintenance pour les mises à jour de sécurité.

Commandes à recueillir avant de demander de l'aide

Ces commandes fournissent un ensemble de diagnostics compact sans modifier le système :

uname -a
lspci -nnk | grep -A3 -i nvidia
nvidia-smi
lsmod | grep -E 'nvidia|nouveau'
mokutil --sb-state
dkms status
apt-cache policy 'nvidia-driver-*' | sed -n '1,160p'
sudo dmesg | grep -iE 'nvrm|nvidia|nouveau|secure|module' | tail -n 120

Veuillez indiquer la version d'Ubuntu (depuis ` lsb_release -a/etc/ubuntu` ou `/etc /etc/os-release/ubuntu`), le noyau exact utilisé uname -ret préciser si le pilote a été installé initialement via les paquets Ubuntu, le dépôt NVIDIA, un PPA ou le programme d'installation autonome. Ces détails sont généralement plus importants que la simple affirmation que « le pilote ne fonctionne plus après une mise à jour ».

prévention pratique

  • Privilégiez le flux de travail d'Ubuntu ubuntu-driversou celui des pilotes supplémentaires pour les systèmes de bureau classiques.
  • Conservez le métapaquet de saveur du noyau installé afin que les futures mises à jour du noyau puissent inclure les modules NVIDIA correspondants.
  • Redémarrez après les mises à jour du noyau ou du pilote NVIDIA au lieu de continuer avec une pile mixte en mémoire/sur disque.
  • Conservez au moins un noyau fonctionnel connu jusqu'à ce que vous ayez confirmé que le nouveau démarre avec le pilote GPU.
  • Évitez de mélanger les paquets Ubuntu, les PPA, le programme d'installation autonome de NVIDIA et plusieurs dépôts, sauf si vous gérez intentionnellement les conséquences.

Références officielles

Les procédures actuelles de Canonical sont décrites dans les sections « Installation des pilotes NVIDIA — Ubuntu Desktop » et « Installation des pilotes NVIDIA — Ubuntu Server » . Pour des instructions spécifiques à DKMS, consultez la section « Créer vos propres modules NVIDIA à l'aide du paquet DKMS » . La documentation fournisseur de NVIDIA est disponible dans le Guide d'installation des pilotes NVIDIA pour Ubuntu .

La branche exacte du pilote, l'ABI du noyau et les noms des paquets dépendent de la version. Utilisez toujours les valeurs fournies par votre système et APT plutôt que de considérer les exemples de versions comme universels.

Laisser un commentaire

Résoudre les problèmes de déchirure d'écran sur les cartes graphiques Intel sous Pardus Linux : un guide pratique

Résoudre les problèmes de déchirure d'écran sur les cartes graphiques Intel sous Pardus Linux : un guide pratique

Corrigez les déchirures d'écran des cartes graphiques Intel sous Pardus Linux en vérifiant X11 vs Wayland, les paramètres du compositeur, le taux de rafraîchissement, le pilote Xorg actif et TearFree uniquement lorsque cela est approprié.

Comment configurer le pare-feu SLES 15 avec firewall-cmd

Comment configurer le pare-feu SLES 15 avec firewall-cmd

Configurer firewalld sur SLES 15 : vérifier les zones, autoriser les services ou les ports, enregistrer les règles permanentes, recharger en toute sécurité et vérifier l’accès.

Guide de configuration de la mise à jour en direct de SLES : Appliquer les mises à jour du noyau sans redémarrer

Guide de configuration de la mise à jour en direct de SLES : Appliquer les mises à jour du noyau sans redémarrer

Activez la mise à jour en direct du noyau sur SLES 15 SP7, appliquez les correctifs pris en charge sans redémarrer, vérifiez les correctifs actifs et comprenez quand un redémarrage du noyau est encore nécessaire.

Comment activer le mode FIPS sur SUSE Linux Enterprise Server 15

Comment activer le mode FIPS sur SUSE Linux Enterprise Server 15

Activez le mode FIPS sur SLES 15 avec l'utilitaire de configuration pris en charge par SUSE, redémarrez en toute sécurité, vérifiez l'état du noyau et de la politique de chiffrement, et vérifiez les limites de certification.

Comment installer Google Chrome sur Gooroom OS sans enfreindre les règles de sécurité

Comment installer Google Chrome sur Gooroom OS sans enfreindre les règles de sécurité

Installez Google Chrome sur Gooroom OS en toute sécurité grâce aux paquets .deb officiels, à APT, aux vérifications de politique, aux conseils de mise à jour et aux correctifs pour les appareils gérés.

Comment exporter en toute sécurité les journaux système SLES vers un serveur Syslog distant

Comment exporter en toute sécurité les journaux système SLES vers un serveur Syslog distant

Transférez en toute sécurité les journaux système SLES vers un serveur syslog distant grâce à rsyslog, aux certificats TLS, à la vérification du nom du pair, aux files d'attente, à la validation et aux tests.

Intégration de SLES 15 Active Directory avec SSSD : Guide étape par étape

Intégration de SLES 15 Active Directory avec SSSD : Guide étape par étape

Intégrez SLES 15 à Active Directory avec SSSD à l'aide de YaST. Configurez le DNS et l'heure, configurez les connexions au domaine, vérifiez Kerberos et comparez SSSD, Winbind et realmd.

Résolution des problèmes liés au pilote Wi-Fi Realtek RTL8821CE sous Pardus Linux

Résolution des problèmes liés au pilote Wi-Fi Realtek RTL8821CE sous Pardus Linux

Résolvez les problèmes de Wi-Fi RTL8821CE sur Pardus Linux en vérifiant le pilote rtw88 intégré, le firmware Realtek, rfkill, NetworkManager et les options de repli sécurisées.

Résolution de l'erreur « Échec temporaire de la résolution DNS » sous Debian 12 avec systemd-resolved

Résolution de l'erreur « Échec temporaire de la résolution DNS » sous Debian 12 avec systemd-resolved

Diagnostiquer et corriger les échecs de résolution DNS de Debian 12 avec systemd-resolved, y compris resolv.conf, NetworkManager, networkd, cache et vérification.

Comment installer Pardus Linux en dual boot avec Windows 11 en toute sécurité

Comment installer Pardus Linux en dual boot avec Windows 11 en toute sécurité

Installez Pardus 25.2 à côté de Windows 11 en sauvegardant, en réduisant le volume Windows, en démarrant sur une clé USB UEFI et en protégeant les partitions EFI et de récupération existantes.