手动解密 LUKS 分区后无法挂载 LVM 卷

手动解密 LUKS 分区后无法挂载 LVM 卷

我有一个完整的驱动器映像2022-06-11_fedora.iso,我正在尝试在另一台计算机上操作其分区。 (例如调整 LVM 逻辑卷大小、移动 ESP 和扩展/boot分区)。

解密 LUKS 分区后,我似乎无法挂载 LVM 卷。在解密 LVM 卷所在的 LUKS 分区后如何挂载 LVM 卷,以便使用 LVM 命令套件操作这些卷?

图像内容的 fdisk

3个分区:

  1. 2022-06-11_fedora.iso1/boot
  2. 2022-06-11_fedora.iso2是ESP
  3. 2022-06-11_fedora.iso3LVM 位于 LUKS 上
$ fdisk -l 2022-06-11_fedora.iso 
Disk 2022-06-11_fedora.iso: 238.47 GiB, 256060514304 bytes, 500118192 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 

Device                      Start       End   Sectors   Size Type
2022-06-11_fedora.iso1   2048    514047    512000   250M Linux filesystem
2022-06-11_fedora.iso2 514048    808959    294912   144M EFI System
2022-06-11_fedora.iso3 808960 500117503 499308544 238.1G Linux filesystem

解密第三分区

$ sudo cryptsetup plainOpen --offset=808960 2022-06-11_fedora.iso cryptdisk
Enter passphrase for 2022-06-11_fedora.iso: 

$ lsblk
NAME            MAJ:MIN RM   SIZE RO TYPE  MOUNTPOINTS
loop0             7:0    0 238.5G  0 loop  
└─cryptdisk     253:2    0 238.1G  0 crypt 
sda               8:0    0   1.8T  0 disk  
└─sda1            8:1    0   1.8T  0 part  
nvme0n1         259:0    0   1.8T  0 disk  
├─nvme0n1p1     259:1    0   487M  0 part  /boot/efi
├─nvme0n1p2     259:2    0   3.8G  0 part  /recovery
└─nvme0n1p3     259:3    0   1.8T  0 part  
  └─cryptdata   253:0    0   1.8T  0 crypt 
    └─data-root 253:1    0   1.8T  0 lvm   /

$ sudo fdisk -l /dev/mapper/cryptdisk 
Disk /dev/mapper/cryptdisk: 238.09 GiB, 255646326784 bytes, 499309232 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

正在尝试挂载/dev/mapper/cryptdisk

$ sudo mount /dev/mapper/cryptdisk /mnt/crypt
mount: /mnt/crypt: wrong fs type, bad option, bad superblock on /dev/mapper/cryptdisk, missing codepage or helper program, or other error.

解密 LUKS 分区后如何挂载 LVM 卷?

答案1

首先,这个

sudo cryptsetup plainOpen --offset=808960 2022-06-11_fedora.iso cryptdisk

是错的。如果第三个分区确实是 LUKS 分区,那么您没有正确打开它,清楚的cryptsetup 中的模式使用提供的密码短语的哈希来解密数据,这对 LUKS 不起作用。

第二:该/dev/mapper/cryptdisk设备是 LVM 物理卷(或者如果解密正确的话),它是不可安装的。您需要在其上安装逻辑卷。

要正确执行此操作:

  • 用于losetup创建循环设备:sudo losetup -f 2022-06-11_fedora.iso --partscan
  • 您现在应该在lsblk输出中看到所有三个分区。
  • 使用 打开第三个分区sudo cryptsetup luksOpen /dev/loop0p3 cryptdisk
  • 如果在输出中没有看到逻辑卷lsblk,则它们没有自动激活,请使用vgscan扫描卷组,然后使用sudo vgchange -ay <vg name>激活它。
  • 在 VG 中装载逻辑卷。该路径将是/dev/mapper/<vgname>-<lvname>(与您的系统 LV 相同data-root)。

注意:VG 名称是 LVM 中的唯一标识符,因此如果映像上的 VG 也称为data,则您将无法激活它,并且需要先通过使用 的 UUID 识别正确的 VG 来重命名它vgrename <uuid> <new name>。(您会注意到,LVM 会抱怨系统中有两个同名的 VG。)

相关内容