SDカードとかUSBスティックにdd
して使うつもりのインストールイメージの中身を見たいとき、mount
したいが、ひと手間が必要。
インストールイメージという事はbootできるように作られているわけで、つまり複数のパーティションを持っているのだ。
これをmount
するためには、offsetオプションをつける必要がある。素直に実行すると以下のような感じでエラーが出る。
$ sudo mount 2020-02-13-raspbian-buster.img /mnt
mount: /mnt: wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or helper program, or other error.
offsetの値を調べるため、fdisk -l -u
。
$ fdisk -l -u 2020-02-13-raspbian-buster.img
Disk 2020-02-13-raspbian-buster.img: 3.54 GiB, 3787456512 bytes, 7397376 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: dos
Disk identifier: 0xea7d04d6
Device Boot Start End Sectors Size Id Type
2020-02-13-raspbian-buster.img1 8192 532479 524288 256M c W95 FAT32 (LBA)
2020-02-13-raspbian-buster.img2 532480 7397375 6864896 3.3G 83 Linux
Sector size
とStart
の積をoffsetに指定すれば良い。
// 第1パーティション
$ sudo mount -o loop,offset=`expr 8192 \* 512` 2020-02-13-raspbian-buster.img /mnt
// 第2パーティション
$ sudo mount -o loop,offset=`expr 532480 \* 512` 2020-02-13-raspbian-buster.img /mnt