使用较小的驱动器图像对大型驱动器进行成像

时间:2017-03-14 20:53:21

标签: disk imaging fat32

我的任务是将8 GB的数据映射到更大的外部驱动器,100 + GB的C ++。

我的代码循环遍历所有扇区并从.IMG复制到磁盘本身。与仅复制文件相比,显然制作100 GB的图像并循环浏览它不会产生任何加速。

相反,我拍了一张8 GB硬盘的图像。现在显而易见的是,我无法在100多GB驱动器上将这8 GB写入0-8 GB的范围内。我的问题是,将这些较小的数据写入更大的驱动器的正确分配是什么?我如何才能了解更多信息呢?

1 个答案:

答案 0 :(得分:1)

在某些情况下,您可以将8GB图像写入100GB驱动器,而不会浪费100GB驱动器上的空间。您需要满足两个条件:

  • 100GB驱动器完全是空的,可以覆盖它上面的所有内容。
  • 图像是完整的磁盘映像,而不仅仅是分区映像。

如果满足这两个条件,则首先将原始8GB映像写入100GB驱动器,然后使用GParted之类的工具调整100GB磁盘上的文件系统和分区的大小。 GParted LiveCD将派上用场。

如果您需要在C ++中完成所有操作,那么查看parted / GParted source code将准确地向您展示从头开始可以做到多么复杂。但是,您可以根据自己代码的许可证直接在您的分区中使用分开编码。