Linux下loop device的使用
最近在看
本文引用地址:http://butianyuan.cn/article/201609/304588.htm一、imag 文件的生成
1. 可以通過bochs提供的bximage.exe生成。
2. 在FC3下通過命令dd if=/dev/zero of=test.img bs=512 count=524160 命令生成。
二、對生成的文件進行分區(qū)
1、可以將生成的image文件掛載在bochs下,當作從屬硬盤
fdisk /dev/hdb 命令對硬盤分區(qū)
2、在FC3下
losetup /dev/loop0 test.img
fdisk /dev/loop0 不過發(fā)現(xiàn)在這種方式下的fdisk在保存的時候會提示參數(shù)錯誤。
三、創(chuàng)建文件系統(tǒng)
經(jīng)測試只能在bochs下創(chuàng)建文件系統(tǒng),無法在loopback設(shè)備上創(chuàng)建文件系統(tǒng)。
如 mkfs /dev/hdb1 64000
四、Fdisk分區(qū)表顯示參數(shù)(本文精華)
在normal模式下按p顯示分區(qū)表,列名說明
start end blocks id system
起始磁道 終止磁道 block數(shù)(1 block size=1k bytes) 分區(qū)類型id 分區(qū)類型
其中的blocks數(shù)用于創(chuàng)建文件系統(tǒng)mkfs 所需的blocks
如: mkfs /dev/sdb1 65015
在expert模式下按p顯示分區(qū)表,其中
start 列指當前分區(qū)起始sector
size 列指當前分區(qū)所占的sectors. (1 secotr size=512 byte)
如果一個loop設(shè)備含有幾個文件系統(tǒng)(即幾個分區(qū))的話,要正確讀取分區(qū)中的文件,要正確計算分區(qū)的偏移值。
假設(shè)一個/dev/hdb1 的 start sector=63 size=1023
/dev/hdb2 的 start sector=1086 size=2048
具體如下:
1、mount /dev/hdb1的操作 (63*512 = 32256)
losetup -o 32256 /dev/loop0 test.img
mount -t minix /dev/loop0 /mnt
ls /mnt
umount /mnt
losetup -d /dev/loop0
2、mount /dev/hdb2的操作 (1086*512 = 556032)
losetup -o 556032 /dev/loop0 test.img
mount -t minix /dev/loop0 /mnt
ls /mnt
umount /mnt
losetup -d /dev/loop0
評論