我最近在Ubuntu服务器上安装了iSCSI环境。 在这个系统中,我使用了使用以下命令创build的图像:
dd if=/dev/zero of=/storage/lun1.img bs=1024k count=20000
如下所示: http : //www.howtoforge.com/using-iscsi-on-ubuntu-9.04-initiator-and-target
然后通过iSCSI启动器对它们进行分区和格式化。
我现在的问题是,如果iSCSI服务器closures以获取数据,我想要挂载这些映像。
我如何装载这些图像文件?
fdisk lun4.img:
Disk lun4.img: 0 MB, 0 byte 33 heads, 61 sectors/track, 0 cylinders Units = sectors of 2013 · 512 = 1030656 byte Sector size (logical/physical): 512 bytes / 512 bytes I/O size (minimum/optimal): 512 bytes / 512 bytes Device Boot Start End Blocks Id System lun4.img1 1 1017 1023580 83 Linux
mount -o loop,offset = 512 -t ext4 lun4.img / mnt
mount: wrong fs type, bad option, bad superblock on /dev/loop0, missing codepage or other error In some cases useful info is found in syslog - try dmesg | tail or so
假设它们使用文件系统格式化,则内核支持您可以使用环回挂载来挂载它们。 回送安装允许您像挂载设备一样安装文件。
如果你已经对映像文件所代表的虚拟“磁盘”进行了分区,那么你必须使用mount命令来做一些琐碎的事情来回送分区中的文件系统。 你可以在这篇文章中看到我在说什么。 基本上,你正在告诉mount命令来寻找指定的文件偏移量。 该偏移量对应于文件内分区的起始位置。
使用fdisk,“virtualdiskname”.img,然后“p”,可以检查每个音轨信息的开始扇区(在我的情况下,开始= 48)。 然后用“v”,可以检查扇区大小,并在你的公式后,结果可以用来抵消值:
[每扇区扇区] * [扇区大小] =偏移值
mount -o loop,offset=result -t ext4 virtualdiskname.img /mount-folder