如何在 Qemu 上的 U-boot 上运行 Grub? (用于手臂)[关闭]

Posted

技术标签:

【中文标题】如何在 Qemu 上的 U-boot 上运行 Grub? (用于手臂)[关闭]【英文标题】:How to run Grub on U-boot on Qemu ? ( for Arm ) [closed] 【发布时间】:2018-12-26 15:07:09 【问题描述】:

我想知道如何在 Qemu (for Arm) 上的 U-boot 上运行 Grub?

【问题讨论】:

你尝试了吗?如果您不提供更多详细信息,我怀疑人们会在这里给您答案。查看以下链接:hellion.org.uk/blog/posts/grub-on-uboot-on-qemu 和 designprincipia.com/… 这个问题比较适合superuser.com。 只是出于好奇 - 如果您的目标上已经有 U-boot,为什么还要有 Grub?有什么具体原因吗? U-boot 没有的东西? @AndrejsCainikovs 我真的不知道为什么,我的项目主题是:“Grub on Qemu for Arm”,我的暑期实习主管没有给我其他细节,我没有有很多关于 grub 和 bootloader 和 u-boot 的信息或知识! 【参考方案1】:

在 U-Boot 中,您可以通过 bootefi 命令将 GRUB 作为 EFI 可执行文件启动。这就是 Suse Linux 发行版在 Odroid-C2 等 arm64 板上启动的方式。

安装 GRUB-EFI 时,您需要将 FAT 分区挂载为 /boot/efi。之后在 Debian 上安装就很简单了

sudo apt-get install grub-efi-arm64
sudo grub-install --target=arm-efi
sudo update-grub

【讨论】:

【参考方案2】:

我想知道如何在 Qemu (for Arm) 上的 U-boot 上运行 Grub?

您的问题不正确,或者您可能误解了引导加载程序架构支持。

如果您提到在 Qemu 上的 Uboot 上运行 ARM Grub,您的问题会更合适。

GRUB:广泛用于 x86 架构,GRUB 也支持 ARM。你不能在 Uboot 上运行 (x)GRUB。

操作系统需要一个引导加载程序来帮助引导它。在这种情况下,请使用 GRUB 或 U-boot。

It's possible to run ARM GRUB on Qemu follow this link 但这不是直接的方式,您需要调整上述链接中的大量参数。

如何使用GRUB on ARM

【讨论】:

这是我在这个项目中的第一周,正如你所说,我可能误解了这个主题,我真的不知道我在做什么。我项目的题目是:“Grub on Qemu for Arm”,暑期实习的导师没有给我其他细节。你能向我解释一下他在这个链接中究竟做了什么吗?我按照本网站上的教程进行操作,并且完成了教程中的前两个步骤,但我不明白最后一部分? (把它们放在一起) 不清楚你的主管是指 Grub on Qemu, host is ARM 还是 Grub on Qemu, guest is ARM 好吧,他的意思是:在你的 Linux 机器上安装 Qemu,将 Qemu 目标设置为 ARM,然后让它加载 Grub。 @LethalProgrammer 的答案是正确的。但是,我认为可以从 U-boot 启动 Grub - 只需我的两分钱。 感谢@AndrejsCainikovs 的回答,这真的很有帮助,所以让Qemu 加载Grub 的解决方案是从u-boot 启动Grub 我没这么说 :) 理想情况下,您应该能够将 Grub 作为第一个引导加载程序启动(叹气)。

以上是关于如何在 Qemu 上的 U-boot 上运行 Grub? (用于手臂)[关闭]的主要内容,如果未能解决你的问题,请参考以下文章

用QEMU模拟运行uboot从SD卡启动Linux

在 QEMU 中运行 MLO 文件

Ubuntu下基于u-boot搭建qemu的vexpress环境

qemu模拟vexpress-a9及u-boot引导 linux

如何调试运行在qemu上的riscv版uboot?

VMware Ubuntu 20.04 LTS 使用Qemu虚拟机u-boot启动或者配合busybox模拟ARM开发板