web-dev-qa-db-ja.com

すべてのカーネルアップグレードはupdate-secureboot-policy --enroll-keyでハングします

現在販売している古いラップトップだけでなく、現在のラップトップでXubuntu 18.04を実行しています。最近後者にインストールしました。完全にクリーンで、PPAや追加のカーネルはありません。

どちらのシステムもNvidia Optimusラップトップであり、両方ともUEFIモードでインストールされました。現在のラップトップでは、セキュアブートがオフになっています。私はまだ古いものでそのようなことをしていません。メインラップトップのグラフィックドライバーPPAからnvidia 396をインストールし、古いラップトップの公式リポジトリから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スクリプトはすぐにフリーズし、アップグレード全体が停止します。ホイップテールが何らかのダイアログを表示するのか、それとも対話可能なものを表示するのかはわかりませんが、そうではありません。 aptもdpkg --configure -aも。

これらのスタックプロセスを強制終了しても、アップグレードプロセスをaptで続行することはできません。

この動作は、xanmodとグラフィックスドライバーPPAを使用するメインラップトップと、すべてがストックされている古いラップトップの両方で同じであるため、追加のパッケージを非難することはできません。

3
TiZ

Psを使用すると、ホイップテールが何を求めているかを確認できます。問題は、その出力が/ dev/nullにリダイレクトされていることです。一部の「higherup」スクリプトは、呼び出していた下付き文字の1つのクラッバーを望まず、出力をdevnullにリダイレクトします。ただし、securebootがある場合、update-secureboot-policyの出力は非常に重要になります。

ファイル/usr/lib/dkms/common.postinstには、/ dev/nullへのリダイレクトの終了前に約30行があります。リダイレクトを削除します。

私のシステムでは、アップグレードが正常に停止しなかったため、キーのインストールが試行されなくなるというシステムが破損しました。あなたの状態がその状態ではないことを願っています。

2
Roger Wolff