Debian 10.10にアップグレードしたら、再起動できなくなってしまった。原因はshim-signed-common:amd64とのこと。
環境
- Dell precision T1600 (Intel Xeon E31245 3.30GHz, メモリ 16GB)
- BIOS version A02(後述するようにA21までアップグレードした。ただし、今回のエラーとは関係ない)
状況
特に考えなく 10.xから10.10へアップグレードし、その後再起動を行ったら以下のエラーメッセージが表示され、再起動しなかった(メッセージ提示後、自動で電源が切れる)
Could not create MokListXRT: Out of Resources Something has gone seriously wrong: import_mok_state() failed: Out of Resources
- Debian 10.10のCD(debian-10.10.0-amd64-netinst.iso)だとUEFIからブートできない(上記のエラーメッセージがでる)。
- Debian 10.2のCD(debian-10.2.x-amd64-netinst.iso)だとUEFIからブートできる。
この現象は以下に報告されているものと同じ現象
www.mail-archive.com
どうも原因はshim-signed-common:amd64らしい。
現時点での解決法
2021年7月11現在は、shim-signed-common:amd64を古いバージョンに戻すか、Secure bootをオフにして、shim-signed-common:amd64もオフにするのが解決法とのこと。
In terms of making your system boot, I'd suggest temporarily one of:
- switch back to an older shim-signed package
- disable Secure Boot and remove shim-signed
解決法:shim-signedを使用しない
UEFIでの起動時に /boot/efi/EFI/debian/shimx64.efi で起動すると、shim-signed-common:amd64 を呼び出すことになる。そこで、grubx64.efi で起動するように設定することで、無事、再起動できるようになった。
手順は以下のとおり。
- Dell precision T1600のロゴがでているときにF12を押し、起動順選択画面を出す
- BIOS Setup を選ぶ
- General → Boot Sequence を選択する
- すでにUEFIでDebianを起動する設定がある場合は編集する。編集方法が分からない場合は削除する。
- 編集するか、Add boot optionで、設定する。
- Boot Option Nameは debian
- File System Listは既に入力されている値(ハードディスク情報が入力済み)
- File Nameは \EFI\debian\grubx64.efi を入力 or 選択する。
今回、BIOSのバージョンが古すぎたので最新のBIOSにアップグレードした。
- Precision T1600のサポート | ドライバーおよびダウンロード | Dell 日本 からBIOSをダウンロードする(サービスタグの入力が必要だった)。最新はA21だが、その前にA04のインストールが必要だった。
- ダウンロードしたBIOSをインストールするには、ブータブルDOSのUSBメモリが必要だったので windows10でDOS boot USBを作成する。 | GARAGEMASTERMOJAに従い、作成し、アップグレードした。
余談: watchdog did not stop! となり、リブートできない
Debian GNU/Linux 10.10 で再起動する(reboot, shutdown -r now)をすると、watchdog did not stop! というメッセージがでて、フリーズする。そこで以下のページに従い、以下のように設定したらdebian上から再起動できるようになった。
unix.stackexchange.com
- /etc/default/grub のGRUB_CMDLINE_LINUXの値を GRUB_CMDLINE_LINUX="reboot=acpi"とする
- ターミナルで update-grub で反映させる。