从整个磁盘(设备)的映像挂载单个分区

Modified on: Sat, 09 Jun 2018 13:00:53 +0800

我用

制作了整个磁盘的图像

dd if=/dev/sda of=/media/external_media/sda.img

现在问题是我想挂载该磁盘上的ext4文件系统,但是

mount -t ext4 -o loop /media/external_media/sda.img /media/sda_image

显然会出现超级块错误,因为图像包含整个磁盘(mbr,其他分区),而不仅仅是我需要的分区。所以我想我应该找到一种方法让磁盘映像显示在/ dev /文件夹中...
有谁知道怎么做?

PS:我总是可以将图像恢复到原始磁盘,但这样会非常不方便(我更新了操作系统,我希望保持原样)

最佳答案

获取图片的分区布局

$ sudo fdisk -lu sda.img
...
Units = sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
...
  Device Boot      Start         End      Blocks   Id  System
sda.img1   *          56     6400000     3199972+   c  W95 FAT32 (LBA)

计算从图像开始到分区开始的偏移量

行业规模 * 开始 =(在这种情况下)512 * 56 = 28672

使用偏移

将其挂载在/ dev / loop0上

sudo losetup -o 28672 /dev/loop0 sda.img

现在分区位于 / dev / loop0 上。您可以 fsck ,安装它等等

sudo fsck -fv /dev/loop0
sudo mount /dev/loop0 /mnt

卸载强>

sudo umount /mnt
sudo losetup -d /dev/loop0

相关问答

添加新评论