web-dev-qa-db-fra.com

Ubuntu - Les variables EFI ne sont pas prises en charge sur ce système

J'essaie d'exécuter Sudo mokutil --disable-validation et Sudo mokutil --import MOK.der Mais je reçois ce message en ligne de commande:

Les variables EFI ne sont pas supportées sur ce système

lsblk output:

NAME   MAJ:MIN RM   SIZE RO TYPE MOUNTPOINT
sda      8:0    0 232.9G  0 disk 
├─sda1   8:1    0   4.7G  0 part [SWAP]
├─sda2   8:2    0     1K  0 part 
├─sda5   8:5    0  82.9G  0 part /media/ALi/8593EB75DEE9C7C1
└─sda6   8:6    0 145.4G  0 part /
sdb      8:16   0 465.8G  0 disk 
└─sdb1   8:17   0 465.8G  0 part /media/ALi/Local Disk

Qu'est-ce que c'est?

Comment le problème peut-il être résolu?

la version Ubuntu est 16.04 LTS.

2
Ali Hesari

J'ai eu le même problème en essayant de compiler un module de noyau dans un ordinateur invité Virtualbox (Ubuntu 16.04). Dans ce cas, l'option de configuration du noyau CONFIG_MODULE_SIG requiert la signature des modules du noyau. Cependant, UEFI et, par conséquent, Secure Boot ne sont pas disponibles, vous ne pouvez donc pas signer le module. Et comme vous l'avez remarqué, désactiver la validation ne fonctionne pas non plus.

Dans ce cas, la seule solution qui fonctionnait pour moi était de recompiler le noyau en suivant les instructions de buntu Wiki . Ces instructions ont fonctionné pour moi telles quelles, à la seule exception que j'ai également dû installer libncurses5 et libncurses5-dev via apt.

Lorsque vous modifiez les options de configuration avec fakeroot debian/rules editconfigs, désactivez l'option Module signature verification dans la section Enable Loadable Module Support. Je l'ai fait pour chaque arche/saveur, ce qui pourrait ou non être nécessaire.

Cette approche a fonctionné pour moi, et si vous ne vous trompez pas trop (comme je l'ai fait ...), cela devrait être fait en moins de 30 minutes (plus le temps de compilation, qui dépend fortement de votre système). Notez cependant que la compilation du noyau a nécessité environ 15 Go d’espace disque. Assurez-vous également de conserver vos paquets de noyau plus tard afin de ne pas mettre à niveau votre noyau accidentellement (vous devrez répéter la procédure pour chaque nouvelle version du noyau).

2
TheWolf