我有一个带有 2 个分区的磁盘映像。当我做#losetup -f <file>
只/dev/loop0
出现。我如何制作/dev/loop0p0
和/dev/loop0p1
出现?使用#parted /dev/loop0
它确实显示存在 2 个分区。我需要将 2 个分区作为单独的设备 chroot 到主分区并在 esp 分区上设置 grub。
# sudo losetup -f disk.img
得到:
$ lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS
loop0 7:0 0 5G 0 loop
sda 8:0 0 223,6G 0 disk
├─sda1 8:1 0 300M 0 part /boot/efi
├─sda2 8:2 0 214,5G 0 part /
└─sda3 8:3 0 8,8G 0 part [SWAP]
预期的:
loop0
├─loop0p0
└─loop1p1
Parted 显示分区确实存在:
# parted
[ ... ]
(parted) print list,all
Model: Loopback device (loopback)
Disk /dev/loop0: 5369MB
Sector size (logical/physical): 512B/512B
Partition Table: gpt
Disk Flags:
Number Start End Size File system Name Flags
1 1049kB 135MB 134MB fat32 efi boot, esp
2 135MB 5368MB 5232MB ext4 main
[ ... ]
将
-P
开关添加到 losttup,如下所示:这将为每个分区创建循环设备,例如
/dev/loop8p3
. 请注意,分区扫描取决于扇区大小,默认情况下假定为 512。如果图像是由具有不同扇区大小的东西制成的,那么您还需要指定--sector-size
开关。