感谢支持
我们一直在努力

Linux下loop device的使用

最近在看<<Linux内核0.11(0.95)详细注释>> ,对Linux下loopback设备的使用琢磨了一段时间。记录如下:


一、imag 文件的生成


1. 可以通过bochs提供的bximage.exe生成。


2. 在FC3下通过命令dd if=/dev/zero of=test.img bs=512 count=524160 命令生成。


二、对生成的文件进行分区


1、可以将生成的image文件挂载在bochs下,当作从属硬盘


fdisk /dev/hdb 命令对硬盘分区


2、在FC3下


losetup /dev/loop0 test.img


fdisk /dev/loop0 不过发现在这种方式下的fdisk在保存的时候会提示参数错误。


三、创建文件系统


经测试只能在bochs下创建文件系统,无法在loopback设备上创建文件系统。


如 mkfs /dev/hdb1 64000


四、Fdisk分区表显示参数(本文精华)


在normal模式下按p显示分区表,列名说明


start end blocks id system


起始磁道 终止磁道 block数(1 block size=1k bytes) 分区类型id 分区类型


其中的blocks数用于创建文件系统mkfs 所需的blocks


如: mkfs /dev/sdb1 65015


在expert模式下按p显示分区表,其中


start 列指当前分区起始sector


size 列指当前分区所占的sectors. (1 secotr size=512 byte)


如果一个loop设备含有几个文件系统(即几个分区)的话,要正确读取分区中的文件,要正确计算分区的偏移值。


假设一个/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

赞(0) 打赏
转载请注明出处:服务器评测 » Linux下loop device的使用
分享到: 更多 (0)

听说打赏我的人,都进福布斯排行榜啦!

支付宝扫一扫打赏

微信扫一扫打赏