これは、NetBSD Advent Calendar 2020の15日目の記事です。
はじめに
UEFIな環境のPCでNetBSD/amd64を起動させる場合には、Secure Bootを無効にするようにBIOS設定画面で設定しておく必要があります。 ですが、Secure Bootを無効にしないで起動する方法はないかと思っていました。 GitHUb.comを見ていると、Super UEFIinSecureBoot Diskというのを 見つけました。 Red Hat社がFedore Linux用に用意しているSecure Bootに対応したブートローダーを利用した仕組みのようです。 既にSecure Boot無効な状態でインストール済みのPCで、Secure Bootを有効にし、起動できることを確認しました。 試したPCは、Dell XPS 13 9300です。
Super UEFIinSecureBoot Diskを入手する
現在のSuper UEFIinSecureBoot Diskのバージョンは3のようです。 https://github.com/ValdikSS/Super-UEFIinSecureBoot-Disk/releases/tag/3から、 Super-UEFIinSecureBoot-Disk_v3.zipファイルをダウンロードしました。 ですが、Super-UEFIinSecureBoot-Disk_minimal_v3.zipファイルでも問題ないかと思います。 以下のようにUSBスティックに書き込んでおきます。
$ unzip Super-UEFIinSecureBoot-Disk_v3.zip Archive: Super-UEFIinSecureBoot-Disk_v3.zip extracting: Super-UEFIinSecureBoot-Disk.img # dd if=Super-UEFIinSecureBoot-Disk.img of=/dev/sd0d
ここで再起動し、BIOS設定画面に入り、Secure Bootを有効にしておきました。
このままNetBSD/amd64を起動させると、以下のようなエラーメッセージで起動できませんでした。 Secure Bootが有効になっていることが分かります。
Operating System Loader has no signature. Imcompatible with SecureBoot.
USBスティックから起動させます。 初回は、hashとkeyを登録するように求められますので、促されるようにインストールしておきます。
ブートセレクターが表示されたら、cを入力してコマンド入力画面に切り替えます。 その上で以下のように実行することで、NetBSD/amd64のブートローダーを起動でき、NetBSDを起動できました。
> insmod fat > chainloader (hd1,gpt1)/efi/boot/bootx64.efi > boot
0 件のコメント:
コメントを投稿
注: コメントを投稿できるのは、このブログのメンバーだけです。