我有一个ext4映像文件,它想用作qemu的磁盘映像。我想把GRUB安装到它上面。经过一番研究,我发现了以下命令:
创建大小为5GB:的图像
qemu-img create hd.img 5G
将其安装为环路设备:
sudo mount -o loop hd.img /mnt
安装GRUB到它:
sudo grub-install --root-directory=/mnt --no-floppy --recheck /dev/loop0
qemu系统应该是x86系统。这就是问题所在:我不在i386上,我的主机系统上也没有安装GRUB。因此,我正在搜索GRUB2的预编译版本,我可以将其复制到映像的文件系统中。有办法做到这一点吗?
当然,如果您正在使用(例如)Debian,那么您已经为grub的目标组件提供了每个体系结构/平台的包-在x86的情况下:
- grub-efi-amd64
- grub-efi-ia32
- grub pc
如果从源代码构建,只需在配置行中指定--target=<TARGET>
,其中TARGET在您的情况下为i386-pc
、i386-efi
或x86_64-efi
。
通过传递--target=<TARGET>
到grub-install
进行安装。