Все обновления ядра зависят от политики обновления-secureboot -enroll-key.

Я использую Xubuntu 18.04 на своем текущем ноутбуке, а также на своем старом ноутбуке, который пытаюсь продать. Я недавно установил это на последнем; это абсолютно чисто, без PPA или дополнительных ядер.

Обе системы являются ноутбуками Nvidia Optimus, и обе были установлены в режиме UEFI. В моем текущем ноутбуке безопасная загрузка отключена. Я еще ничего такого не делал на старом. Я установил nvidia 396 из PPA графического драйвера на свой основной ноутбук и использовал nvidia 390 из официального репо на старом ноутбуке. Мой основной ноутбук имеет ядро ​​xanmod и стандартное ядро. Старый ноутбук имеет только стандартное ядро.

Обе системы испытывают полное зависание в dpkg при попытке обновить ядра. Сама система не зависает, но обновление застревает. Немного о терминальном отключении показывает это:

TiZLappy:~$ pgrep dpkg
2499
TiZLappy:~$ pstree -l 2499
dpkg───linux-image-4.1───run-parts───dkms_autoinstal───dkms───dkms───frontend─┬─update-securebo
                                                                              └─whiptail
TiZLappy:~$ ps aux | grep securebo
root      5146  0.0  0.1 111876 22928 pts/1    S+   23:57   0:00 /usr/bin/perl -w /usr/share/debconf/frontend /usr/sbin/update-secureboot-policy --enroll-key
root      5160  0.0  0.0   4628  1844 pts/1    S+   23:57   0:00 /bin/sh /usr/sbin/update-secureboot-policy --enroll-key
tiz      10409  0.0  0.0  22004  1028 pts/2    S+   23:59   0:00 grep --color=auto securebo
TiZLappy:~$ ps aux | grep whiptail
root      5175  0.0  0.0  32356  4252 pts/1    S+   Jul03   0:00 whiptail --backtitle Package configuration --title Configuring Secure Boot --output-fd 12 --nocancel --msgbox Your system has UEFI Secure Boot enabled.  UEFI Secure Boot requires additional configuration to work with third-party  drivers.  The system will assist you in configuring UEFI Secure Boot. To permit the use  of third-party drivers, a new Machine-Owner Key (MOK) has been generated. This  key now needs to be enrolled in your system's firmware.  To ensure that this change is being made by you as an authorized user, and not  by an attacker, you must choose a password now and then confirm the change  after reboot using the same password, in both the "Enroll MOK" and "Change  Secure Boot state" menus that will be presented to you when this system  reboots.  If you proceed but do not confirm the password upon reboot, Ubuntu will still  be able to boot on your system but any hardware that requires third-party  drivers to work correctly may not be usable. --scrolltext 21 84
tiz      30605  0.0  0.0  22004  1040 pts/2    S+   00:07   0:00 grep --color=auto whiptail

Итак, сценарий update-secureboot-policy прямо заморожен и останавливает все обновление. Я не знаю, должен ли whiptail представлять какой-то диалог или полезный интерактив, но это не так; ни по методу, ни по dpkg --configure -a.

Уничтожение этих застрявших процессов не позволяет процессу обновления продолжить с apt.

Это поведение одинаково как на моем главном ноутбуке с xanmod и графическим драйвером PPA, так и на моем старом ноутбуке со всем необходимым, поэтому в этом нельзя винить дополнительные пакеты.

3
задан 4 July 2018 в 07:12

1 ответ

С помощью ps вы можете видеть, о чем вас спрашивает Уиптейл. Проблема в том, что его вывод перенаправляется в / dev / null. Некоторый сценарий «более высокого уровня» не хотел, чтобы один из подписчиков вызывал его, и перенаправляет вывод в devnull. Но когда у вас есть безопасная загрузка, вывод политики update-secureboot становится очень важным.

В файле /usr/lib/dkms/common.postinst вы найдете примерно за 30 строк до конца перенаправление на / dev / null. Снимите редирект.

В моей системе ненормальная остановка обновлений повредила систему, так что она больше не будет пытаться установить ключ. Я надеюсь, что ваш не в этом состоянии .....

0
ответ дан 4 July 2018 в 07:12

Другие вопросы по тегам:

Похожие вопросы: