Je viens de mettre à jour mon système du 15.10 au 16.04 via sudo do-release-upgrade
. Au cours de ce processus, il a affiché un écran avec le message suivant:
UEFI Secure Boot est activé sur votre système. UEFI Secure Boot n'est pas compatible avec l'utilisation de pilotes tiers.
(...) Ubuntu pourra toujours démarrer sur votre système mais ces pilotes tiers ne seront pas disponibles pour votre matériel.
Désactiver le démarrage sécurisé UEFI? (oui | non)
Étant donné que les seuls pilotes tiers que j'utilise sont les pilotes graphiques NVIDIA et qu'ils fonctionnent correctement avec Ubuntu 15.10 et Secure Boot activé, j'ai choisi l'option "non" ici. Je ne vois pas pourquoi je devrais désactiver cela sans raison valable, et j'ai supposé que je peux simplement réinstaller le pilote tiers via l'interface graphique des paramètres système après la mise à jour.
Hélas non. Au redémarrage, mon écran de connexion est apparu en très basse résolution. Lorsque vous essayez de vous connecter, cela me renvoie immédiatement à l'écran de connexion.
J'ai essayé ce qui suit pour corriger la situation:
sudo apt-get purge nvidia*
sudo reboot
Cela conduit à un écran violet et aucune réaction à Ctrl-Alt-F1. En me connectant via SSH, j'ai ensuite fait:
sudo apt-get install nvidia-current
sudo reboot
ce qui m'amène à nouveau à l'ancien scénario, avec un écran de connexion très basse résolution, et aucun moyen de se connecter.
C'est une très mauvaise expérience de mise à niveau. Quelqu'un d'autre avait-il cela et que puis-je faire pour y remédier? (tout en gardant UEFI Secure Boot activé) Merci.
Réponses:
Grâce à Ubuntu 15.10, la gestion par Ubuntu du démarrage sécurisé s'est arrêtée à GRUB - c'est-à-dire que la version d'Ubuntu de Shim lancerait la version d'Ubuntu de GRUB, qui lancerait n'importe quel noyau Linux, qu'il soit signé ou non. Il s'agissait d'une barre de support très faible pour Secure Boot. À titre de comparaison, le GRUB de Fedora ne lancerait que les noyaux Linux signés et les noyaux de Fedora, lorsqu'ils détecteraient que le démarrage sécurisé était actif, chargeraient uniquement les binaires du noyau signés. L'intention de la prise en charge de Secure Boot plus robuste de Fedora était de protéger le système contre les modules du noyau "voyous", qui pourraient, en théorie, prendre le contrôle de l'ordinateur à un niveau très bas. Ubuntu 15.10 et les versions antérieures n'avaient pas cette protection.
À partir de la version 16.04, Ubuntu suit un module de démarrage sécurisé plus strict, plus semblable à ce que Fedora fait depuis un certain temps. Cela présente des avantages en termes de sécurité, mais comme vous l'avez vu, il présente également des problèmes. Si un pilote tiers n'est pas signé avec une clé cryptographique que la version Ubuntu du noyau Linux reconnaît comme valide, il ne sera pas chargé. Cela affecte principalement les pilotes vidéo Nvidia et AMD / ATI à source fermée, mais d'autres pilotes peuvent également être affectés.
Il existe (ou peut exister) plusieurs solutions à ce problème:
Notez que les deux seules de ces options dont je suis sûr à 100% fonctionneraient sont de désactiver le démarrage sécurisé ou d'éviter les modules de noyau tiers. J'évite les modules de noyau tiers comme la peste, donc je n'ai aucune expérience personnelle de leur utilisation dans un environnement Secure Boot. Outre la désactivation du démarrage sécurisé, la construction de votre propre noyau pourrait être la prochaine méthode la plus susceptible de fonctionner, suivie de l'utilisation d'un GRUB plus ancien ou d'un chargeur de démarrage qui n'honore pas le démarrage sécurisé. Construire son propre noyau était autrefois courant, mais peu de gens le font plus, et avec les noyaux modernes, le temps investi pour apprendre à configurer un noyau, sans parler de le faire, peut être important. L'utilisation d'un GRUB plus ancien ou d'un autre chargeur de démarrage pourrait être plus facile, mais vous devrez en savoir suffisamment pour pouvoir le configurer.
la source
/lib/modules/x.y.z/updates/dkms/nvidia*.ko
aveckmodsign
(également après chaque mise à jour du pilote) ou automatiquement avecapt install shim-signed
.