Systemd-boot
- gummiboot は設定済みの EFI イメージを実行できるシンプルな UEFI ブートマネージャです。デフォルトのエントリは設定したパターン (glob) または画面上のメニューで選択されます。
gummiboot は簡単に設定することができ、Linux カーネルの EFISTUB や UEFI シェル、grub.efi などの EFI 実行可能ファイルだけを起動できます。
インストール
gummiboot をインストールしてから次のコマンドを実行して gummiboot をあなたのブートローダとしてインストールしてください:
# gummiboot install
上のコマンドで自動的に gummiboot のバイナリがあなたの EFI System Partition にコピーされ EFI Boot Manager にブートエントリが作成されます。EFI で起動していない場合、ブートエントリの作成は失敗します。ただし gummiboot のバイナリを ESP 内にある EFI バイナリのデフォルトの配置場所 (x64 環境では /boot/EFI/Boot/BOOTX64.EFI
) にコピーすれば gummiboot を起動することは可能です。インストール作業を一度でも完了すれば、パッケージのアップデート中 gummiboot の post_install スクリプトによって自動で更新がなされます。
設定
基本的な設定は /boot/loader/loader.conf
に記述します、2つの設定オプションが使えます:
default
– 選択するデフォルトエントリ (.conf
を付けない);arch-*
のようにワイルドカードを使うことができます
timeout
– メニューのタイムアウト秒数。この値が設定されていない場合、起動中にスペースキーを押した時だけメニューが表示されます。
例:
/boot/loader/loader.conf
default arch timeout 4
オプションは両方ともブートメニューで変更するこができ、EFI 変数として保存されます。
ブートエントリの追加
Gummiboot は /boot/loader/entries/*.conf
にあるブートメニューのアイテムを検索します – それぞれのファイルにはひとつのブートエントリを含めなくてはなりません。利用できるオプションは:
title
– オペレーティングシステムの名前。必須。
version
– カーネルバージョン、同じ title のエントリが複数存在する場合にのみ表示されます。任意。
machine-id
–/etc/machine-id
のマシン識別子、title と version が同じエントリが複数存在する場合にのみ表示されます。任意。
efi
– 起動する EFI プログラム、ESP (/boot
) からの相対パス; 例:/vmlinuz-linux
。このオプションかlinux
(下を参照) のどちらか一方が必須です。
options
– EFI プログラムに渡すコマンドラインオプション。任意ですが、Linux を起動する場合initrd=efipath
とroot=dev
が最低限必要になります。
Linux では、linux path-to-vmlinuz
と initrd path-to-initramfs
を指定することができます。この値は自動で efi path
と options initrd=path
に翻訳されます – この文法は利便性のためにサポートされており機能に違いはありません。
Arch Linux のエントリのサンプル:
/boot/loader/entries/arch.conf
title Arch Linux linux /vmlinuz-linux initrd /initramfs-linux.img options root=PARTUUID=14420948-2cea-4de7-b042-40f67c618660 rw
上の例にある PARTUUID/PARTLABEL は GPT パーティションを識別しています。ファイルシステムを識別する UUID/LABEL とは異なっていることに注意してください。PARTUUID/PARTLABEL には他のファイルシステムでパーティションをフォーマットしなおしても値が変わらないという利点があります。またパーティションにファイルシステムがない (もしくは LABEL をサポートしていない LUKS を使っている) 場合などにも有用です。
また、\EFI\arch\grub.efi
など他の EFI プログラムを追加することもできます。
ブートメニュー
キー一覧
メニューの中では以下のキーが使われます:
Up/Down
- エントリの選択Enter
- 選択したエントリの起動d
- (不揮発の EFI 変数に保存された) デフォルトエントリを選択して起動t/T
- (不揮発の EFI 変数に保存された) タイムアウトを調整e
- カーネルコマンドラインを編集q
- 終了v
- gummiboot と UEFI のバージョンを表示p
- 現在の設定を表示h
- キーマップを表示
以下のホットキーを、起動中やメニューで押すことで、特定のエントリを直接起動します:
l
- Linuxw
- Windowsa
- OS Xs
- EFI Shell1-9
- エントリの数字
トラブルシューティング
efibootmgr を使って手動エントリを追加する
gummiboot install
コマンドが失敗した場合、efibootmgr
ユーティリティを使って EFI ブートエントリを手動で作成することができます:
# efibootmgr -c -d /dev/sdX -p Y -l /EFI/gummiboot/gummibootx64.efi -L "Gummiboot"