0

我需要在 grub2 命令提示符下挂载一个 VHD 文件。

我尝试使用“loopback”命令,如下所示:

grub > insmod ntfs
grub > insmod ntldr
grub > loopback loop (hd0,1)/test.vhd
grub > ls (loop)/
error: unknown filesystem

我尝试了“静态”和“动态”vhd,两个 VHD 文件都有 ntfs 分区数据。

我猜 VHD 文件有一些头数据,这使得文件系统在“环回”挂载后无法识别。我能够使用相同的命令集安装和访问“iso”文件。

我的猜测正确吗?如果是这样,有没有办法克服这个问题?

4

3 回答 3

1

好吧,你的猜测对了一半:

虽然 VHD 支持线性“固定”存储模型,它实际上只是原始数据,因为它将存储在“真实”硬盘驱动器上,然后是 VHD 页脚,但通常情况并非如此;VHD 支持动态调整图像大小,这在内部当然不是线性的,因此您不能简单地启动它。

于 2015-02-11T16:51:42.927 回答
1

通过对上面粘贴的 grub 命令进行以下更改,我终于能够从循环安装的数据中获取数据。

grub > insmod ntfs
grub > loopback loop (hd0,1)/test.vhd
grub > ls (loop,1)/

文件“test.vhd”是一个单独的分区 VHD 文件。

注意:只有“固定”或“静态”模型 VHD 可以工作。我无法让它与“动态”VHD 一起工作(正如@Marcus Müller 所建议的那样)

谢谢您的帮助。希望这可以帮助某人。

于 2015-02-12T06:58:53.897 回答
0

要在 grub2 上使用 VHD 磁盘,需要:

insmod part_msdos
insmod ntfs
loopback loop /point/where/disk.vhd tdisk=VHD
ls (loop,msdos1)/
于 2017-08-22T14:47:08.330 回答