2025-09-16 (Tu) [長年日記]
_ PC を secure boot 化
yay -S shim-signed
sudo cp -i /usr/share/shim-signed/shimx64.efi /efi/EFI/arch
sudo cp -i /usr/share/shim-signed/mmx64.efi /efi/EFI/arch
sudo efibootmgr --unicode -b 0002 --disk /dev/nvme0n1 --part 1 --create --label Shim --loader /EFI/arch/shimx64.efi
sudo pacman -S mokutil
sudo mokutil --disable-validation
パスワードを聞かれるので設定。
sudo mokutil --kek
これで KEK が表示できた。
Validity
Not Before: Jun 24 20:41:29 2011 GMT
Not After : Jun 24 20:51:29 2026 GMT
Subject: C=US, ST=Washington, L=Redmond, O=Microsoft Corporation, CN=Microsoft Corporation KEK CA 2011
やばいやんw 来年6月に期限が切れるものが使われてるらしい。
grub-install --target=x86_64-efi --efi-directory=/efi --sbat /usr/share/grub/sbat.csv
grub は arch 公式 repo に入ってるものに戻してある。
sudo pacman -S efitools
yay -S preloader-signed
sudo cp /usr/share/preloader-signed/PreLoader.efi /efi/EFI/arch/
sudo cp /usr/share/preloader-signed/HashTool.efi /efi/EFI/arch/
この後、↓こんな感じになるように mv でファイル名を変更する。
| パス | 実体 |
|---|---|
| /efi/EFI/arch/shimx64.efi | shim |
| /efi/EFI/arch/grubx64.efi | preloader |
| /efi/EFI/arch/loader.efi | grub |
んで、一旦起動し、Change secure boot state で OFF にする。 もし、この画面が消えるまでボーッと見てたら、次の起動からこの画面は表示されなくて設定できない。 その場合は mokutil --disable-validation をもう一度実行して再起動すると、表示される。
Booting in insecure mode と表示されるようになる。
最後に、UEFI の設定で secure boot を ON にして、 Allow Microsoft 3rd party UEFI CA も ON にして起動。
Linux も Windows も起動できるはず。 Windows でセキュアブートの状態を確認すると、有効になってるはず。
以前からやりたかったことが、やっとできたわ。 shim と preloader を両方使うとは気づかなかった。
[ツッコミを入れる]