使用GRUB2 loopback命令挂载VHD

时间:2015-02-11 16:45:11

标签: bootloader vhd grub

我需要在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文件有一些标题数据,这使得文件系统在" loopback"之后无法识别。安装。我能够安装和访问" iso"使用同一组命令的文件。

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

3 个答案:

答案 0 :(得分:1)

嗯,你的猜测是正确的一半:

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

答案 1 :(得分:0)

我终于能够从循环挂载数据中获取数据,并在上面粘贴的grub命令中进行了以下更改。

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

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

注意:只有“固定”或“静态”模型VHD才有效。我无法使用“动态”VHD(正如@MarcusMüller建议的那样)

感谢您的帮助。希望这有助于某人。

答案 2 :(得分:0)

在grub2上使用VHD磁盘需要:

insmod part_msdos
insmod ntfs
loopback loop /point/where/disk.vhd tdisk=VHD
ls (loop,msdos1)/