โดยทั่วไปการติดตั้งจะต้องดำเนินการกับอุปกรณ์บล็อก ไดรเวอร์ลูปวางอุปกรณ์บล็อกส่วนหน้าลงในไฟล์ข้อมูลของคุณ
หากคุณใช้การวนลูปโดยไม่losetup
ใช้ระบบปฏิบัติการจะทำสิ่งใดสิ่งหนึ่งในพื้นหลัง
เช่น
$ dd if=/dev/zero of=/tmp/foo bs=1M count=100
100+0 records in
100+0 records out
104857600 bytes (105 MB) copied, 0.0798775 s, 1.3 GB/s
$ mke2fs /tmp/foo
mke2fs 1.42.9 (28-Dec-2013)
....
$ losetup
$ mount -o loop /tmp/foo /mnt1
$ losetup
NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE
/dev/loop0 0 0 1 0 /tmp/foo
$ umount /mnt1
$ losetup
$
คุณอาจจำเป็นต้องโทรlosetup
โดยตรงหากภาพไฟล์ของคุณมีพาร์ทิชันฝังอยู่
เช่นถ้าฉันมีภาพนี้:
$ fdisk -l /tmp/foo2
Disk /tmp/foo2: 104 MB, 104857600 bytes, 204800 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
Disk label type: dos
Disk identifier: 0x1f25ff39
Device Boot Start End Blocks Id System
/tmp/foo2p1 2048 204799 101376 83 Linux
ฉันไม่สามารถเมานต์โดยตรง
$ mount -o loop /tmp/foo2 /mnt1
mount: /dev/loop0 is write-protected, mounting read-only
mount: wrong fs type, bad option, bad superblock on /dev/loop0,
missing codepage or helper program, or other error
แต่ถ้าผมใช้losetup
และkpartx
จากนั้นฉันสามารถเข้าถึงพาร์ทิชัน:
$ losetup -f /tmp/foo2
$ losetup
NAME SIZELIMIT OFFSET AUTOCLEAR RO BACK-FILE
/dev/loop0 0 0 0 0 /tmp/foo2
$ kpartx -a /dev/loop0
$ mount /dev/mapper/loop0p1 /mnt1
$
mount
ฉลาดพอที่จะสร้างความยุ่งยากให้กับคุณ (ดังที่สตีเฟ่นแฮร์ริสแสดงในคำตอบของเขา)