Linux 挂载 img 磁盘镜像文件

查看分区偏移量

首先使用 fdisk 查看 img 文件中各个分区的起始位置,也就是偏移量。

1
$ sudo fdisk -l data.img

假设 fdisk 命令输出了以下内容:

1
2
3
4
5
6
7
8
9
Disk data.img: 32 GiB, 34359738368 bytes, 67108864 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: A7CFFC89-5EB6-4DB7-AD2F-2C02D361C0CE

Device Start End Sectors Size Type
data.img1 2048 67103504 67101457 32G Linux filesystem

输出结果解析:

  • 从输出的内容可以看到该磁盘镜像文件中只有 data.img1 一个分区,若不止一个分区,则下面还会列出其余的分区,例如 data.img2 data.img3
  • 最后一行的数字 2048 表示该磁盘镜像文件中第一个分区的起始位置在第 2048 扇区(从 0 开始计数),一个扇区的大小是 512 字节,所以第一个分区的偏移量就是 2048*512=1048576

挂载 img 文件

创建用于挂载 img 文件的目录

1
$ sudo mkdir /mnt/temp

使用 mount 挂载 img 文件

1
$ sudo mount -o loop,offset=1048576 data.img /mnt/temp