web-dev-qa-db-ja.com

既存の暗号化されたパーティションに再インストールする

私のディスクレイアウトは次のとおりです。

  • /の暗号化されたパーティション
  • /homeの暗号化されたパーティション
  • /bootの暗号化されていないパーティション

前回、Ubuntuの完全な再インストール(ディスクの消去を含む)を行ったときに、これを設定しました。さて、最新のUbuntuにアップグレードした後、いくつかの問題が壊れたため、最初から再インストールすることにしました。ただし、/home用の別のパーティションと/用の別のパーティションがあり、どちらも既に暗号化されているため、最初からやり直すのではなく、これらを再利用したいと思います。特に、/homeをバックアップし、新規インストール後に再度復元するのにかかる時間を節約するために。

インストーラーを実行する前に、暗号化された2つのパーティションのロックを解除します。これにより、新規インストールの/および/homeにこれらを選択できます。インストーラーUIからパーティションのロックを解除できないため、このインストール前のロック解除を行います。

すべてが正常にインストールされているようです。

しかし、システムを再起動すると、ロック解除プロンプトが表示されません。 5ドットブートスプラッシュはしばらくの間存在し、その後(initramfs)プロンプトが表示されます。

起動時にロック解除プロンプトを取得するにはどうすればよいですか? /bootパーティションのどこかにあるファイルの設定を変更できますか?インストール中に別のことをする必要がありますか?別の再インストールをしてもかまいません(時間がかからないからです!)。 /homeのバックアップ/復元を行う必要はありません(多くの時間がかかるので、ブー!)。

5
decibyte

問題は、/etc/crypttabが新しいシステムで適切にセットアップされていないことです。これを修正するには、ライブ環境で起動し、新しいシステムをマウントして修正します。以下はあなたがする必要があることの概要ですが、デバイス名はおそらくあなたのシステムのために変更される必要があるでしょう。

$ Sudo -i
# cryptsetup open /dev/sda5 sda5_crypt # For root partition
# cryptsetup open /dev/sda6 sda6_crypt # For home partition
# lvchange -ay  # activates the logical volumes if you use llvm
# mkdir /mnt/ubuntu
# mount /dev/mapper/sda5_crypt /mnt/ubuntu
# mount /dev/mapper/sda6_crypt /mnt/ubuntu/home
# mount /dev/sda1 /mnt/ubuntu/boot
# mount --bind /dev /mnt/ubuntu/dev
# mount --bind /sys /mnt/ubuntu/sys
# mount -t proc none /mnt/ubuntu/proc

システムがマウントされたので、/mnt/ubuntu/etc/crypttabを追加できます。次のようになります。

sda5_crypt UUID=12345678-9abc-def012345-6789abcdef01 none luks
sda6_crypt UUID=87654321-cba9-543210fed-01fedcba9876 none luks

UUIDはls -l /dev/disk/by-uuidで見つけることができます。使用されるUUIDは、暗号化されたパーティションではなく、暗号化されたパーティションである必要があります。

また、/mnt/ubuntu/etc/fstabを見て、sdaX_cryptで割り当てた/mnt/ubuntu/etc/crypttabの名前で復号化されたパーティションが参照されていることを確認してください。インストールする前にOSインストーラーでデバイスを復号化した場合、自分で割り当てたものとは別の名前で参照される場合があります(例:luks-<uuid>)。これに失敗すると、ブート中にcryptsetup: lvm is not availableというエラーが表示される場合があります。

最後に、新しいシステムにchrootして、initramfsを更新できます。

# chroot /mnt/ubuntu /bin/bash
# update-initramfs -u

これで、新しいシステムを再起動する準備が整いました。

7
Virdal