.png)
そこで、完全に暗号化されたブート パーティションを作成しようとしています。Funtoo を実行していますが、主に Arch wiki を参考にしています。
そこで、私はクレイジーで議論の余地のあることをすることにしました。ブート/ルート パーティションを分離しないのです。私の設定は次のようになります。
/dev/nvme0n1p1 - EFI parition
/dev/nvme0n1p2 - Swap
/dev/nvme0n1p3 - Encrypted /
私の場合は/etc/default/grub
次のとおりです:
GRUB_ENABLE_CRYPTODISK=y
GRUB_PRELOAD_MODULES="luks cryptodisk"
GRUB_CMDLINE_LINUX="luks enc_root=/dev/nvme0n1p3 root=/dev/mapper/enc_root"
Linuxの議論はすべてより良いinitramfsパスワードを 2 回入力するように求められないように、RAM ディスク内にファイル システムへのキーを含めます。
次のようにして Grub をインストールしました。
grub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id="Funtoo Linux [GRUB]" --recheck --boot-directory=/boot/efi/EFI
現在の状態では、Grub レスキュー プロンプトが表示されます。構成ファイルが見つかりません (暗号化されたブート/ルート ディスク上にあります)。そこで、次のコマンドを実行します。
insmod luks
cryptomount (hd1,gpt3)
set root=(crypto0)
configfile (crypto)/boot/grub/grub.cfg
..そして、完全に起動/動作するシステムができました! :)
そこで質問ですが、暗号化されたパーティションを自動的にロードして(crypt0)
その構成ファイルを読み取るように Grub EFI ローダーを構成するにはどうすればよいでしょうか?
注: Grub がディスクを識別しているのは、おそらく USB スティックがまだ接続されているためです。USB スティックを取り外して再起動すると、ディスク(hd1,gpt3)
が認識されるはずです。(hd0,gpt3)
答え1
Gentoo/Funtoo では、grub のデバイス マッパーはデフォルトでは有効になっていないことがわかりました。以下を追加しました/etc/portage/package.use
:
sys-boot/grub device-mapper
その後、grub を再度起動し、実行してgrub-install --target=x86_64-efi --efi-directory=/boot/efi --bootloader-id="Funtoo Linux [GRUB]" --recheck
再起動すると、luks パスワード要求画面が表示されました。入力すると、すべてが完璧に起動しました。
このスレッドで解決策を提供してくれた frostschutz に特に感謝します。