私はフォローしましたこのガイドLVMの単一ファイルシステムを介してセカンダリドライブを完全に暗号化したいと思います。
これが私が順番にしたことです:
fdisk /dev/sdb # goes to interactive promt (choose defaults)
pvcreate /dev/sdb1
vgcreate vg_crypt /dev/sdb1
lvcreate -l 100%FREE -n storage vg_crypt
cryptsetup luksFormat -c aes-xts-plaint64 -s 512 /dev/mapper/vg_crypt-storage # set passphrase
cryptsetup open /dev/mapper/vg_crypt-storage storage # use passphrase
mkfs.ext4 /dev/mapper/storage
mkdir /storage
mount /dev/mapper/storage /storage
echo "cryptdevice=/dev/vg_crypt/storage:storage root=/storage" >> /etc/default/grub
echo "storage /dev/mapper/vg_crypt-storage /dev/urandom storage,cipher=aes-xts-plain64,size=256" >> /etc/crypttab
echo "/dev/mapper/vg_crypt-storage storage ext4 defaults 0 0" >> /etc/fstab
echo "this is a test" >> /storage/test
reboot
/dev/sdb1
再起動後、復号化に使用するパスワード入力要求をバイパスできることがわかりましたCtrl ^c
。私はこれが私がファイルシステムにアクセスするのを妨げると予想しました/dev/sdb
。驚くべきことに、このファイルは完全に読み取ることができ、ファイルはプレーンテキストで表示されます。
私が間違って設定したのでしょうか?
私はこれを見つけました:
cd /storage
df .
Filesystem .....
/dev/mapper/othervg_root .... (on sda!)
したがって、このディレクトリは私のSDAのLVMにあります。しかし、/dev/mapper/storage
にインストールすれば/storage
そのディレクトリをに入れると思いましたsdb1
。ここで何を見逃しているのかよくわかりません。
そのため、ログインに必要なパスワードが/dev/mapper/storage
存在しないことにも気づきました。だから私は入り、/storage
再起動しました。今回はパスワードを入力して/dev/mapper/storage
それが存在することを知り、そこにい/storage
ましたが(ただいま削除したにもかかわらず)まだ論理ボリュームにありましたsda
。混乱しています。
lsblk
これで、保存のためのマウントポイントがないことがわかりました。だから私は以前のように再び馬に乗った。これでdf /storage
ファイルシステムが表示されます/dev/mapper/storage
。今回は再起動してパスワードを入力しました。/storage
再び間違ったファイルシステムから。何らかの理由で起動時にインストールが正しくありません。 etcファイルの内容でなければなりません。
/etc/*tab ファイルのマニュアルページを読み、いくつかの点を変更しました。
ファイルシステムテーブル:
/dev/mapper/vg_crypt-storage /storage ext4 defaults 0 0 # add the '/' in /storage
パスワードテーブル:
storage /dev/mapper/vg_crypt-storage none cipher=aes-xts-plain64,size=512
# changed size to match key in cryptsetup
# changed key to none (/dev/urandom is something particular to swap i guess)
# removed uneccesary 'storage' in key=val list. I saw 'root' in the guide and thought i needed the name of my crypto device
私はそれが何をしているのかわからなかったので、Grubからその行を削除しました。sdb1
コマンドを使用してすべてのLVMエントリを削除し、{lv,vg,pv}remove
パーティションを削除しましたsdb1
。ファイルからこの行を一時的にコメントアウトして再/etc/*tab
起動しました。
最後に、パーティション、LVMスキーム、ext4ファイルシステムを再設計し、/etc/*tab
ファイルから2行のコメントを削除しました。
再起動すると起動の問題が発生し、パニックモードになります。
journalctl -xb
私にいくつかの珍しいセリフを見せた:
.... kernel: EXT4-fs (dm-3): VFS: Can't find ext4 filesystem
.... systemd[1]: Failed to mount /storage
ローカルファイルシステムの依存関係、ファイルシステムラベルの再指定、ローカルSELinuxポリシーの変更の移行に関連する他のエラーもあります。しかし、これが完全に関連しているかどうかはわかりません。
ベストアンサー1
考え出したうふ!
問題は/etc/fstab
。
私の通常のsda
パーティションは次のようにマウントされます。
/dev/mapper/vg_sda-root / ext4 defaults 0 0
/dev/mapper/vg_sda-swap swap ext4 defaults 0 0
/dev/mapper/vg_sda-home /home ext4 defaults 0 0
だから当然私はその計画に従い、私を追加しました:
/dev/mapper/vg_crypt-storage storage ext4 defaults 0 0
この行の問題は最初のフィールドです。FS_仕様で説明されているようにfstab(5) のマニュアルページ。 「このフィールドは、マウントするブロック特殊デバイスまたはリモートファイルシステムを説明します。」
crypttabはfstabの前に処理されるため、復号化されたデバイスは/dev/mapper/storage
元のLVMマッピングデバイス名ではなくデバイス名でアクセスできます/dev/mapper/vg_crypt-storage
。
だから私の行を/etc/fstab
次のように変更します。
/dev/mapper/storage storage ext4 defaults 0 0
/etc/fstab
次に、正しい復号化デバイスを/storage
。
再起動し、パスワードフレーズをキャンセル(3回)してパニックモードに入るようCtrl ^C
にテストしました。ここでは暗号化デバイスが存在しないため、手動で復号化してインストールする必要があります。
私が明確に/正確に説明したと思いますが、もし欠けている部分があれば訂正してください!