У меня есть странное поведение после обновления моего ПК от коварного до гостеприимного (обе разновидности Kubuntu). Прежде и после обновления у меня есть два параметра загрузки "человечности" в моем BIOS. Здесь Вы видите значения позади каждой записи под гостеприимным:
stephane@nausicaa:~$ sudo efibootmgr -v
BootCurrent: 0002
Timeout: 0 seconds
BootOrder: 0002,0000
Boot0000 ubuntu HD(1,GPT,xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx,0x800,0x64000)/File(\EFI\ubuntu\shimx64.efi)
Boot0002* ubuntu HD(1,GPT,xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx,0x800,0x64000)/File(EFI\Ubuntu\grubx64.efi)
С коварным я использовал shimx64 (первая запись) и NVIDIA собственный драйвер без проблем. Так как обновление гостеприимного shimx64 (первая запись) не загружает NVIDIA собственный драйвер. Я должен использовать grubx64 вместо этого (вторая запись).
Когда я использую grubx64, я нахожу следующие записи для "Nvidia" или "NVRM" в журнале ядра:
nvidia: module license 'NVIDIA' taints kernel.
nvidia: module verification failed: signature and/or required key missing - tainting kernel
[drm] Initialized nvidia-drm 0.0.0 20150116 for 0000:01:00.0 on minor 0
NVRM: loading NVIDIA UNIX x86_64 Kernel Module 340.96 Sun Nov 8 22:33:28 PST 2015
nvidia_uvm: Loaded the UVM driver, major device number 245
NVRM: Your system is not currently configured to drive a VGA console
NVRM: on the primary VGA device. The NVIDIA Linux graphics driver
NVRM: requires the use of a text-mode VGA console. Use of other console
NVRM: drivers including, but not limited to, vesafb, may result in
NVRM: corruption and stability problems, and is not supported.
Когда я использую shimx64 нет никакой записи для "Nvidia" или "NVRM" в журнале ядра, даже сообщения об ошибках.
Я раньше полагал, что shimx64 является просто chainloader со знаком для grubx64, но от различий в журнале ядра это, очевидно, не настолько просто. У кого-либо есть объяснение того, что происходит там? Это могло иметь некоторое отношение к цифровой подписи драйверов?
NVIDIA не подписывает свой собственный видеодрайвер. Ядро Linux всегда проверяет на подписи в модулях ядра, даже с безопасной отключенной начальной загрузкой. То, когда я использую grubx64 I, видит это сообщение:
kernel: nvidia: module verification failed: signature and/or required key missing - tainting kernel
Это не ошибка, так как безопасная начальная загрузка отключена; NVIDIA собственный видеодрайвер все еще работает. Забавная часть - то, что, когда я использую shimx64, это сообщение не появляется. Драйвер NVIDIA пропускается ядром без любого сообщения. Я могу сказать, что безопасная начальная загрузка включена из-за этого сообщения:
kernel: Secure boot enabled