grub2,grub-mkrescue,bios,vbe framebuffer,自定义内核

时间:2013-12-12 22:43:54

标签: framebuffer bios grub vbe

在这里问我第一个问题的时间。

在过去的某个时刻,我曾经使用GRUB2获得我的内核Just Work(TM);它仍然适用于GRUB Legacy,但我想要[VBE]帧缓冲图形。

我注意到的第一个问题是

grub-mkrescue -o cd.iso cdimg /

构建 bogus ,无法启动的图片。如果我将我的内核复制到图像源目录的根目录并将其称为efi.img(否则xorriso由于缺少efi.img而失败),我尝试的最新版本构建了一个好的文本模式图像。

我想这里真正的问题是GRUB2是否应该与非EFI系统一起使用? :(据我所知,我的framebuffer初始化和用白色填充屏幕的代码完全相同,以前用过GRUB2的早期版本。

提前致谢,

Vendu

P.S。 FWIW,OS项目位于https://github.com/vendu/OS-Zero/

P.P.S。我希望这不是太模糊......:)

2 个答案:

答案 0 :(得分:1)

我是xorriso的开发人员(但参与GRUB2并不多)。

  

这里真正的问题是GRUB2是否应该起作用   与非EFI系统? :(

我自己的测试系统有AMD 64位BIOS,而不是EFI。 它从CD / DVD和USB记忆棒引导grub-mkrescue图像。

您是否使用没有负载的grub-mkrescue映像启动?

grub-mkrescue -o cd.iso

(你应该得到一个GRUB2启动提示)

基于GRUB2的GNU / Linux映像,它是从CD / DVD引导给我的 epidemic-4.1-b1-1-amd64.iso。 (无法从USB记忆棒启动 因为它的initrd有一个缺点。这不是 GRUB2的错误。) 但它的GRUB2并不是最新的。

  

构建虚假,无法启动的图像。

你能发布

的结果吗?

xorriso -indev cd.iso -toc

应该报告使用的El Torito启动信息 从CD和DVD启动时由BIOS和UEFI。 (有趣的是只有不能正常启动的图像  当然。)

如果这看起来很好,那么你应该报告问题 你的发行版的维护者(如果你自己不是那个角色) 或者到grub-devel邮件列表。

  

P.P.S。我希望这不是太模糊......:)

你必须至少给出一个确切的描述 拒绝开机: 你有什么BIOS? 您使用的是什么版本的GRUB2? 你看到什么消息? 它是否发生在多台机器上? ......任何不寻常的情况......?

度过愉快的一天:)

托马斯

答案 1 :(得分:1)

今天在Debian Jessie上点击这个。 要修复grub-mkrescue -o boot.iso失败但缺少/efi.img只需安装mtools包。 Grub依赖于mtools(可选),如果它不存在则无声地失败。

On Debian apt-get install mtools为我解决了这个问题。 希望它有所帮助。