Mount: Difference between revisions

From Leo's Notes
This page was last edited on 18 February 2020, at 18:55.
mounting without root
mounting specific partition on disk image
Line 30: Line 30:


See Also: https://wiki.debian.org/ManipulatingISOs
See Also: https://wiki.debian.org/ManipulatingISOs
== Mounting disk image partitions ==
To mount a specific partition inside a disk image, use the {{code|fdisk}} utility to see where the partition boundaries are.
{{highlight|lang=terminal|code=
# fdisk -l out.bin
Disk out.bin: 58.6 MiB, 61440000 bytes, 120000 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: 0x000981cb
Device    Boot  Start    End Sectors  Size Id Type
out.bin1          8192  122879  114688  56M  c W95 FAT32 (LBA)
out.bin2        122880 5785599 5662720  2.7G 83 Linux
}}
The first partition starts on sector 8192. Since each sector is 512 bytes, we can mount this particular partition by passing an offset of 8192 * 512 bytes.
{{highlight|lang=terminal|code=
# mount -o loop,offset=$((8192 * 512)) out.bin /mnt/card
}}
Alternatively, you may want to set up a loopback device specifically for a partition using {{code|losetup}}:
{{highlight|lang=terminal|code=
# losetup /dev/loop0 disk.img -o $((10860003 * 512))
# file -s /dev/loop0
/dev/loop0: Linux rev 1.0 ext3 filesystem data
# mount /dev/loop0 /mnt
[...]
# umount /mnt
# losetup -d /dev/loop0
}}
== See Also ==
# http://madduck.net/blog/2006.10.20:loop-mounting-partitions-from-a-disk-image/
{{Navbox Linux}}[[Category:Linux]]

Revision as of 18:55, 18 February 2020

Todo Merge all Mount articles here.

Remounting from Read-Only to Read-Write

You can remount something that's mounted read-only by using the remount option.

# mount -o remount,rw /

Mounting a disk image without root

Using udisksctl, you can mount disk images without requiring root or sudoers access.

$ dd if=/dev/zero of=test.img bs=1M count=100
$ udisksctl loop-setup -f test.img
Mapped file $PATH_TO_IMAGE as /dev/loop0.

Depending on your system, this may have triggered the loopmount to automount somewhere in /run/media/username. If nothing was mounted, manually mount the loopmount device:

$ udisksctl mount -b /dev/loop0
Mounted /dev/loop0 at /media/$USER/$IMAGE_NAME

To unmount the filesystem:

$ udisksctl unmount -b /dev/loop0
$ udisksctl loop-delete -b /dev/loop0

See Also: https://wiki.debian.org/ManipulatingISOs

Mounting disk image partitions

To mount a specific partition inside a disk image, use the fdisk utility to see where the partition boundaries are.

# fdisk -l out.bin
Disk out.bin: 58.6 MiB, 61440000 bytes, 120000 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: 0x000981cb

Device     Boot  Start     End Sectors  Size Id Type
out.bin1          8192  122879  114688   56M  c W95 FAT32 (LBA)
out.bin2        122880 5785599 5662720  2.7G 83 Linux

The first partition starts on sector 8192. Since each sector is 512 bytes, we can mount this particular partition by passing an offset of 8192 * 512 bytes.

# mount -o loop,offset=$((8192 * 512)) out.bin /mnt/card

Alternatively, you may want to set up a loopback device specifically for a partition using losetup:

# losetup /dev/loop0 disk.img -o $((10860003 * 512))
# file -s /dev/loop0
/dev/loop0: Linux rev 1.0 ext3 filesystem data
# mount /dev/loop0 /mnt
[...]
# umount /mnt
# losetup -d /dev/loop0


See Also

  1. http://madduck.net/blog/2006.10.20:loop-mounting-partitions-from-a-disk-image/