2011-05-10 70 views
-1

对,所以我在装载的设备上有一个Ramdisk映像,例如/mnt/sda1/Ramdisk.img。我想直接将原始数据复制到/ dev/ram0上的ramdisk设备,这样就不需要使用mke2fs:我可以挂载映像和设备,并发现它们是相同的。将Ramdisk映像直接复制到Ramdisk设备

理想情况下,这只使用linux命令。

我的想法到目前为止:在loopback上挂载映像,并使用基本IO将数据从一个设备放入另一个设备。我可以用C来做这件事。 另外,以某种方式找到虚拟硬盘设备的物理地址,并使用linux或C命令将文件直接放入内存。

在此先感谢。 P:我知道内核以某种方式标记用于ramdisk的内存,所以系统不会回收它。任何人都知道这些标志在哪里?

回答

0

任何类型的复制命令都需要在目的地分区和文件系统。然而,dd可以在磁盘或分区级别上工作,仅通过指定磁盘(例如/ dev/sda上)或分区(例如(DEV/SDA1)的水平。所以,从理论上讲,你可以做

dd if=ramdisk_image_file of=/dev/ram0 
+0

好极了!正是我需要的。 – 2011-05-10 18:08:46