Secure boot & pilotes nVIdia
Ce qui va suivre est valable pour Ubuntu 18.04.
Secure boot
Secure boot est une fonction de UEFI, utilisée par Windows et supportée par Ubuntu qui permet de n’exécuter que des modules Kernel approuvés. Cela veut dire que si le secure boot est activé lors de l’installation d’Ubuntu, l’installation de modules Kernel va nous demander d’approuver les modules. Ubuntu 18.04 utilise un truc qui s’appelle shim.
Les problèmes
Le problème est survenu quand j’ai voulu avoir des pilotes pour ma carte graphique. En effet, je n’ai pas fait le lien entre ce que j’ai vu à l’installation du pilote et shim qui m’as poppé à la figure. Le module du pilote graphique n’était pas approuvé et donc, aps de pilote (et un écran en 480p !). Lors de l’installation du pilote nvidia, celui-ci demande à rentrer un mot de passe qui sera redonné au démarrage dans shim. Si dans shim je ne fais pas “enroll keys” correctement, le module est perdu !
Le problème de shim est qu’en plus de ne pas afficher ce que l’on tape, il met le clavier en je-ne-sais-quelle configuration. Et puis on nous demande de taper la première lettre du mdp, puis la 7e, puis la 2e… Bref, c’est chiant.
Quand on nous demande un mot de passe de validation de module, il faut utiliser un mot de passe du style : “rrrrrrrr”. Cela permet d’éviter toute erreur, de disposition de clavier et de comptage de lettres.
Les ressources trouvées
Désactiver le secure-boot avec Shim
Pour éviter les ennuis, on peut désactiver le secure boot depuis shim (depuis UEFI aussi, mais mon UEFI est horrible) :
https://fourdollars.blogspot.com/2016/07/disable-secure-boot-in-shim-signed.html
sudo update-secureboot-policy #Rentrer notre mot de passe : rrrrrrrr
Au redémarrage, shim nous apparaît. Il faut choisir “change secure boot state”, et rentrer la lettre r à chaque fois. Nouveau reboot.
Une fois fait, on peut réinstaller les pilotes graphiques "par le menu logiciels, par exemple…).
Installer les pilotes Nvidia ou utiliser Nouveau?
Nouveau fonctionne par défaut pas mal, une fois les problèmes de Secure boot réglés. Cela dit, on peut vouloir les pilotes NVidia. Sur ce point, la meilleure façon que j’ai trouvé est celle-ci :
sudo add-apt-repository ppa:graphics-drivers sudo apt update apt list --upgradable sudo apt upgrade sudo ubuntu-drivers autoinstall
Ici, j’ai eu des problèmes de “Paquets défectueux garder en l’état…” (les crises habituelles de apt !). J’ai juste eu à installer la dépendance en question manuellement :
sudo apt install libnvidia-cfg1-430
Puis installer les pilotes:
sudo ubuntu-drivers autoinstall
Et reboot. Cela devrait fonctionner, en l’absence de problèmes de secure-boot.
Une fois tout cela fait, on peut toujours passer par l’utilitaire graphique “logiciels et mises à jour” et par l’onglet “pilotes” pour utiliser le pilote que l’on veut. Je suis revenue sur Nouveau qui fonctionne très bien sur ma GTX 1070.