dos时代菜鸟 发表于 2015-12-4 08:59:00

弱弱的问一句,grub2_uefi模式怎么调用 grub4dos(grldr)

本帖最后由 dos时代菜鸟 于 2015-12-4 09:02 编辑

1、如题。

2、grub4dos 可以通过 map 将一个ima 虚拟成一个 (fd0) 然后通过chainloader 调用(fd0)/io.sys 来启动这个ima (ima可以不具备启动功能,只要有io.sys就可以)
   那么,grub2 中难道只能通过 linux16 memdisk+initrd16 ima 的方式通过ima的引导扇启动之么?

zengqcyxx 发表于 2015-12-4 20:16:04

dos时代菜鸟 发表于 2015-12-4 12:46
唉, grub2_uefi的chainloader 也只能引导符合efi标准的引导文件,不存在引导什么扇区文件的概念了。

...

我玩过winly,它也是基于grub2的,它的cfg文件里有一句语法if..............then,意思大概是假如是这样就这样,否则就那样,也就是说当你以bios启动的时候,它就加载ntldr模块及相应的驱动以及cfg里显示bios可以启动的项,而当UEFI启动的时候,它就不加载ntldr模块,它加载gop等mob驱动以及cfg里显示efi可以启动的项。因此当你以何方式启动它就自动帮你分类启动了,UEFI启动不会加载bios的东西,bios启动不会加载UEFI的东西。故你说的“通过 grub2_efi 启动调用 ubuntu 的 grub.cfg 进入了 linux ,同样通过 grub2_bios 也能进入linux”是不可能的,是你以为而已。进入菜单cfg里见到启动项是已帮你选好的,也没有 grub2_efi、 grub2_bios启动之说,只有efi启动或bios启动,efi启动加载grub2_efi相关驱动,bios启动加载 grub2_bios。

有阴也有阳 发表于 2015-12-4 09:21:04

本帖最后由 有阴也有阳 于 2015-12-4 09:24 编辑

       我也是才涉及grub2_uefi模式,菜鸟一个,就我这几天通过学习所掌握的资料来看,在grub2_uefi模式下无法用grub2调用grub4dos,在

grub2_BIOS模式下,grub2 才能通过 linux16 memdisk+initrd16 ima 的方式通过ima的引导扇启动ima,而且这好象还是在grub2_BIOS模

式下用grub2调用ima文件的唯一方式。

dos时代菜鸟 发表于 2015-12-4 09:27:50

有阴也有阳 发表于 2015-12-4 09:21
我也是才涉及grub2_uefi模式,菜鸟一个,就我这几天通过学习所掌握的资料来看,在grub2_uefi模式下 ...

要是这样,grub2 就只能在 uefi 模式有些优势了,还有就是可定制方面要比 grub4dos 强一些。
这样的话,如果是bios 模式,还是用 grub4dos 的好。

有阴也有阳 发表于 2015-12-4 09:34:22

本帖最后由 有阴也有阳 于 2015-12-4 09:37 编辑

dos时代菜鸟 发表于 2015-12-4 09:27
要是这样,grub2 就只能在 uefi 模式有些优势了,还有就是可定制方面要比 grub4dos 强一些。
这样的话, ...

       对!在BIOS模式下,再加上用的还是Windowns系统的前提下,grub4dos比grub2不知道要强多少倍,在启动U盘中使用

grub2主要就是为了支持UEFI启动......

dos时代菜鸟 发表于 2015-12-4 12:46:41

唉, grub2_uefi的chainloader 也只能引导符合efi标准的引导文件,不存在引导什么扇区文件的概念了。

难道grub2_efi 就不能互通一下 bios 的引导文件么?

我通过 grub2_efi 启动调用 ubuntu 的 grub.cfg 进入了 linux ,同样通过 grub2_bios 也能进入linux ,ubuntu 是怎么实现引导方面的跨界启动呢?

dos时代菜鸟 发表于 2015-12-4 20:25:58

zengqcyxx 发表于 2015-12-4 20:16
我玩过winly,它也是基于grub2的,它的cfg文件里有一句语法if..............then,意思大概是假如是这样就 ...

嗯 ,这个我也注意到了,是通过 grub2 的一个 系统变量 判断 是 efi 还是i386 什么的 。

还有 bios 启动的时候 会提供 legacy_kernellegacy_initre 以及 efi 的 一些 指令 ,不知道 efi 下 能否 也 提供 legacy 的 基本指令 ,如果可以就 好办多了 。

另外 memdisk 是 syslinux 的东西 , 还有一个配套的命令 $(memdiskfind) 可以将 memdisk 出来的 内存盘虚拟成设备以供 syslinux 访问里面的文件,不知道 grub2 为啥 没这 功能 。

zengqcyxx 发表于 2015-12-4 20:44:40

dos时代菜鸟 发表于 2015-12-4 20:25
嗯 ,这个我也注意到了,是通过 grub2 的一个 系统变量 判断 是 efi 还是i386 什么的 。

还有 bios 启 ...

新型的主板叫UEFI不叫bios,但它兼容legacybios, legacy_kernellegacy_initre是bios的东西,efi也有efishell类似于dos命令,应该是早期英特尔弄出来方便人家以EFI安装win7X64的,那些模块没人研究。 memdisk在论坛里winly启动好像有得下载。

dos时代菜鸟 发表于 2015-12-4 21:12:45

本帖最后由 dos时代菜鸟 于 2015-12-4 21:16 编辑

zengqcyxx 发表于 2015-12-4 20:44
新型的主板叫UEFI不叫bios,但它兼容legacybios, legacy_kernellegacy_initre是bios的东西,efi也有efis ...

memdisk 我已经有 syslinux 6 的最新版了,但是 memdiskfind 可能是 syslinux 的一个独立模块,不包含在 memdisk 中 ,看来 bios 下还是用 grub4dos 更好一些。

就是觉得 efi 状态下,没有 把某个文件虚拟成 存储设备 的 功能,大家都是 用ms 的那个 *.efi + bcd 的方式 引导pe 的wmi ,如此以来 efi 就变成 MS 的了。其他 引导工具 都插不上手啊。只能在 bcd 之前打圈圈 。
包括 grub2 .   比如 grub2_efi 能独立引导一个 vhd 系统启动么?而不是通过 bcd ?当然 vhd里面如果是 win 还是要 用到 vhd里面的bcd的。
页: [1]
查看完整版本: 弱弱的问一句,grub2_uefi模式怎么调用 grub4dos(grldr)