最近、Antergos(基本的にはArch)をインストールし、フルディスク暗号化を使用するように設定しました。ここで、encrypt
からsd-encrypt
に移行したいと思います。休止状態にしたいため、同じLUKSボリュームにスワップパーティションを配置できなかったためです。
セットアップ中:
/
パーティションとスワップパーティションに使用しました。/etc/crypttab
を使用して、スワップパーティション(および2番目のドライブの別の暗号化されたEXT4パーティション)をマウントしました。私はそのインストールが動作することをテストしました、grubはlinuxとデュアルブートされたWindowsの両方を起動させ、Linuxブートでは両方の暗号化されたドライブを復号化してマウントします。
しかし、スワップドライブのUUIDでディスクが見つからないというエラーが発生し、Archのマニュアルでは、インストーラーから取得したencrypt
がブート時に1つの暗号化パーティションしか処理できないことを確認しました。それらをさらに処理したい場合は、sd-encrypt
に移動する必要があります。ただし、ドキュメントを読んだ後でも、sd-encrypt
に移行するために何をしなければならないかわかりません。
HOOKS="base udev autodetect modconf block keyboard keymap encrypt resume filesystems fsck"
GRUB_CMDLINE_LINUX_DEFAULT="quiet resume=UUID=[encrypted swap UUID]"
GRUB_CMDLINE_LINUX=cryptdevice=/dev/disk/by-uuid/[/ UUID]:Arch_crypt
GRUB_ENABLE_CRYPTODISK=y
/etc/crypttab
swap_crypt /dev/disk/by-uuid/[/ UUID] password_file luks
data_crypt /dev/disk/by-uuid/[/ UUID] password_file luks
encrypt
のHOOKS
をsd-encrypt
に変更した後、他に何をすべきですか? /etc/crypttab.initramfs
を作成し、そこにswap_crypt
を移動する必要がありますか? luks
をrd.luks
に変更する必要がありますか?スワップパーティションと/パーティションの両方で同じパスワードを使用しているため、ドキュメントによると、パスワードを1回入力した後、両方をブート時にマウントする必要があります。ドキュメントにluks.*
およびrd.luks.*
paramsと同様のものが記載されています-それらを使用する必要がありますか。使用する場合、どこに配置する必要がありますか?
私は自分でGrubを使用していませんが(Archとsd-encrypt)、カーネルオプションから、構成を次のように変換する必要があると思います(切り替える前に、古い構成をバックアップすることを忘れないでください)。
HOOKS="base systemd autodetect modconf block keyboard sd-vconsole sd-encrypt resume filesystems fsck"
GRUB_CMDLINE_LINUX_DEFAULT="quiet resume=UUID=[decrypted swap UUID]"
# I use resume=/dev/mapper/name-of-decrypted-device
GRUB_CMDLINE_LINUX=luks.uuid=[/ encrypted UUID] luks.uuid=[swap encrypted UUID]
GRUB_ENABLE_CRYPTODISK=y
/etc/crypttab
swap_crypt /dev/disk/by-uuid/[/ UUID] password_file luks
data_crypt /dev/disk/by-uuid/[/ UUID] password_file luks
HOOKSの変更が完了したら、mkinitcpio -p linux
または同等のものを実行してinitramfsを再生成することを忘れないでください。そして、grub-mkconfig -o /boot/grub/grub.cfg
または同様の何かを含むgrub.cfgファイル。