在Linux中模拟硬盘驱动器

时间:2011-08-06 16:49:04

标签: linux linux-device-driver hard-drive virtual-drive

我开发了一个基于FUSE的文件系统作为研究项目的一部分,现在必须研究硬盘驱动器接收的实际读/写请求。为了做到这一点,我正在考虑在linux中创建虚拟硬盘的选项,它将拦截文件系统生成的请求并记录它们。

互联网上是否有任何资源可以帮助我编写模拟器和/或开发编写模拟器所需的技能?我目前正在阅读Linux设备驱动程序3一书,以了解Linux如何管理块设备。

感谢任何帮助。

由于

2 个答案:

答案 0 :(得分:3)

嗯,有一种方法可以将图像文件挂载为分区:

mount -t <fs type> -o loop file.img /mnt

替换为您的文件系统类型,file.img应该是所需分区的图像。

另一种方法是,您可以安装virtualbox,在虚拟机上安装linux,添加新的虚拟硬盘,并在虚拟机中使用所需的文件系统格式化虚拟硬盘并使用它。这种方法的一个优点是它提供了一个安全的沙箱,因此您在进行实验时不会意外损坏现有系统。

答案 1 :(得分:3)

查看SCSI调试驱动程序。引自site

  

scsi_debug适配器驱动程序模拟可变数量的SCSI磁盘,每个磁盘共享驱动程序分配的常用RAM量,以充当(易失性)存储。

如果是我,我会启用该驱动程序中已存在的调试日志记录,然后根据您的需要进行增强。