
最近、Antergos(デフォルトではArch)をインストールし、フルディスク暗号化を有効にしました。これで休止状態が必要で、スワップパーティションを同じLUKSボリュームに入れることができないので、LUKSencrypt
に移行したいと思います。sd-encrypt
背景
設定中:
/
パーティショニングとスワップパーティショニングにLUKSを使用します。- 私のメインSSDが小さいので休止状態も可能にしたいと思い、RAMも32GBなので、2台目のドライブに暗号化されたスワップパーティションを作成しました。
- スワップパーティション(および2番目のドライブに別の暗号化されたEXT4パーティション)をマウントしました
/etc/crypttab
。
インストールが正しく機能しているかどうかをテストし、grubを介してLinuxとデュアルブートWindowsで起動でき、Linuxブートでは両方の暗号化ドライブを復号化してマウントしました。
ただし、スワップドライブUUIDを持つディスクが見つからないというエラーが発生し、Archのマニュアルでは、インストーラencrypt
から取得した情報が起動中に暗号化されたパーティションのみを処理できることを確認します。さらに問題を処理するには、に進む必要があります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
inに変更したsd-encrypt
後は何をすべきですかHOOKS
?そこまで作成して/etc/crypttab.initramfs
移動する必要がありますかswap_crypt
?luks
に変更する必要がありますかrd.luks
? swap パーティションと /partition の両方が同じパスワードを使用するため、マニュアルによれば、パスワードを一度入力した後、起動時に両方をマウントする必要があります。そうですか?ドキュメントにはパラメータluks.*
とrd.luks.*
同様の内容が記載されています。これを使用する必要がありますが、それではどこに置くべきですか?
答え1
私は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
mkinitcpio -p linux
HOOKSの変更が終わったら、initramfsを再生成するために、またはそれに対応するコマンドを実行することを忘れないでください。 grub.cfgファイルgrub-mkconfig -o /boot/grub/grub.cfg
または同様のもの。