无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: 2011yaya2007777
打印 上一主题 下一主题

[原创] GRUB4DOS for UEFI

    [复制链接]
1831#
发表于 2021-9-6 19:54:55 | 只看该作者
本帖最后由 2011whp 于 2021-9-14 12:04 编辑











回复

使用道具 举报

1832#
 楼主| 发表于 2021-9-6 20:25:22 来自手机 | 只看该作者
本帖最后由 2011yaya2007777 于 2021-9-6 20:26 编辑

hd0两个分区,是从(hd0,1)启动的吗?或者说是活动分区吗?
回复

使用道具 举报

1833#
发表于 2021-9-6 20:46:16 | 只看该作者
本帖最后由 2011whp 于 2021-9-6 20:54 编辑

是从 (hd0,1)启动的, 上上楼补图了
(hd0,1)活动分区,一样的

现在 那个多出来的 (hd1,0),  没有bcd
回复

使用道具 举报

1834#
发表于 2021-9-6 20:47:54 | 只看该作者
I get same error 15 too.
NTBOOT is mounted as (0x82)
回复

使用道具 举报

1835#
 楼主| 发表于 2021-9-7 09:56:09 | 只看该作者
本帖最后由 2011yaya2007777 于 2021-9-7 15:30 编辑

@2011whp
辛苦你再测试一次。在命令行输入:
debug 3
chainloader  /boot/imgs/boot.wim

回复

使用道具 举报

1836#
发表于 2021-9-7 11:37:05 | 只看该作者


实体机,死机


回复

使用道具 举报

1837#
发表于 2021-9-7 11:57:17 | 只看该作者
好像不错,谢谢分享,支持一下。
回复

使用道具 举报

1838#
发表于 2021-9-7 11:57:33 | 只看该作者
感谢楼主分享
回复

使用道具 举报

1839#
 楼主| 发表于 2021-9-7 15:28:49 | 只看该作者
本帖最后由 2011yaya2007777 于 2021-9-8 10:14 编辑

@2011whp
好像是溢出了。原环境再测试一次,补充收集几个参数。
好像定位问题了。


回复

使用道具 举报

1840#
发表于 2021-9-7 15:51:54 来自手机 | 只看该作者
最好能明文调用,保持外置调用风格一玫
回复

使用道具 举报

1841#
发表于 2021-9-7 19:17:49 | 只看该作者
这个启动了,

回复

使用道具 举报

1842#
发表于 2021-9-7 19:50:49 | 只看该作者
本帖最后由 2011whp 于 2021-9-14 12:06 编辑

实体机,启动不了 (b75主板)

回复

使用道具 举报

1843#
发表于 2021-9-7 20:20:29 | 只看该作者
本帖最后由 2011whp 于 2021-9-14 12:06 编辑

另一实体机,启动了  (360主板,)
chainloader /boot/imgs/boot.wim

回复

使用道具 举报

1844#
发表于 2021-9-7 20:32:51 | 只看该作者
本帖最后由 2011whp 于 2021-9-14 12:05 编辑

360主板,  直接启动 windows分区,
报了个错(好像也不是错,是不是判断分支提示),不过 boot命令后启动了,应该是 ntboot起作用了吧




回复

使用道具 举报

1845#
 楼主| 发表于 2021-9-7 21:02:03 来自手机 | 只看该作者
1853#实体机启动不了的问题,已经定位,明天修正后再测试。谢谢!
回复

使用道具 举报

1846#
 楼主| 发表于 2021-9-8 10:12:39 | 只看该作者
实体机,启动不了 (b75主板,i3 3代)

使用这个再试一试

测试.rar

926.28 KB, 下载次数: 37, 下载积分: 无忧币 -2

回复

使用道具 举报

1847#
发表于 2021-9-8 11:54:27 | 只看该作者
本帖最后由 2011whp 于 2021-9-14 12:06 编辑

(b75主板)2021-9-8的,
电脑是 祼机,没有磁盘,bios的Fx菜单,没有微软启动(nv存储区是空的),
但,用实体的 bcd 是能引导wim的





回复

使用道具 举报

1848#
 楼主| 发表于 2021-9-8 12:19:59 来自手机 | 只看该作者
本帖最后由 2011yaya2007777 于 2021-9-8 12:43 编辑

发错了?这个还是昨天的版本。

我从官网下载后测试,上传版本是对的。看看你是不是使用了昨天的版本?
回复

使用道具 举报

1849#
发表于 2021-9-8 12:23:23 | 只看该作者
本帖最后由 2011whp 于 2021-9-8 12:33 编辑

没有发错,是 错的界面一样
boot.wim 改了位置,Qemu是能启动的,



回复

使用道具 举报

1850#
发表于 2021-9-14 19:33:21 | 只看该作者
经过QEMU下的测试,在嵌入内置菜单时,Bootx64.efi 的操作没有问题。

对 bootia32.efi 操作时,菜单可嵌入,但直接进入命令行。奇怪的是,手动输入 configfile /efi/grub/uefi/x86/menu.txt ,可以进入后续菜单。

嵌入操作如下:


mkimage.exe  -p /efi/grub -o BOOTX64.EFI -O x86_64-efi -c Menu.lst
mkimage.exe -p /efi/grub -o BOOTIA32.EFI -O i386-efi -c Menu.lst


Menu.lst 菜单如下:

clear

debug  off

root ()

clear

if  %@UEFI%==64 configfile /EFI/Grub/UEFI/x64/Menu.txt
if  %@UEFI%==32 configfile /EFI/Grub/UEFI/x86/Menu.txt
补充:对 2021.09.08 版操作,其它版本未测试


点评

在 bootia32.efi 内置菜单里判断 位数,有点矛盾 内置菜单 范式,试下 pxe detect default 0 timeout 1 configfile title find /efi/grub/menu.lst errorcheck off find --set-root /efi/grub/men  详情 回复 发表于 2021-9-15 17:29
回复

使用道具 举报

1851#
发表于 2021-9-15 17:29:55 | 只看该作者
blank007 发表于 2021-9-14 19:33
经过QEMU下的测试,在嵌入内置菜单时,Bootx64.efi 的操作没有问题。

对 bootia32.efi 操作时,菜单可嵌 ...

在   bootia32.efi 内置菜单里判断 位数,有点矛盾


内置菜单 范式,试下

pxe detect
default 0
timeout 1
configfile
title find /efi/grub/menu.lst
        errorcheck off
        find --set-root /efi/grub/menu.lst
        configfile /efi/grub/menu.lst
        errorcheck on
        commandline

title commandline
        commandline

title reboot
        reboot

title halt
        halt
回复

使用道具 举报

1852#
发表于 2021-9-16 06:12:41 | 只看该作者
blank007 发表于 2021-9-14 19:33
经过QEMU下的测试,在嵌入内置菜单时,Bootx64.efi 的操作没有问题。

对 bootia32.efi 操作时,菜单可嵌 ...

@uefi   not @UEFI
回复

使用道具 举报

1853#
发表于 2021-9-16 08:50:47 | 只看该作者
請問 G4D for UEFI,會加入支持 secure boot 的功能嗎?
回复

使用道具 举报

1854#
发表于 2021-9-16 11:48:07 | 只看该作者
magicphoenix 发表于 2021-9-16 08:50
請問 G4D for UEFI,會加入支持 secure boot 的功能嗎?

这事是微软给不给我们发证书的事情,不是我们想不想支持的事情。应该是不可能的。
回复

使用道具 举报

1855#
发表于 2021-9-16 18:52:24 | 只看该作者
sunsea 发表于 2021-9-16 11:48
这事是微软给不给我们发证书的事情,不是我们想不想支持的事情。应该是不可能的。

当然是可能的。只要愿意接受阉割,就可以申请签名。
阉割指的是 不能启动未认证操作系统、不能执行未认证代码(外部命令/模块)、不能让用户改写内存、不能让用户向磁盘写入数据等。
回复

使用道具 举报

1856#
发表于 2021-9-17 10:19:29 | 只看该作者
wintoflash 发表于 2021-9-16 18:52
当然是可能的。只要愿意接受阉割,就可以申请签名。
阉割指的是 不能启动未认证操作系统、不能执行未认 ...

能不能像 驱动一样弄个假签名
回复

使用道具 举报

1857#
发表于 2021-9-17 11:03:28 | 只看该作者
本帖最后由 2011whp 于 2021-9-17 11:23 编辑

现在 签名问题   拦 住了什么设备使用了,好像没有几个
现在来看,bios的 安全启动 都 是可以关掉的 或者 是 在bios 内加上证书,
( 现在 就有个   签名.efi   ,具体是搜  过安全启动,叫shim方法)


将来 什么tpm 估计 也可以进bios 添加一个证书,让第三方签名程序 给 g4e 签名上
安全是给,特殊的电脑用的,现在不必要担心


链式启动 win,不会检查上级引导吧, 最多检查一下,上一级引导 是不是有tpm签名
上级引导不是 微软的签名,也得能过吧,否则 微软 垄断 硬件
回复

使用道具 举报

1858#
发表于 2021-9-17 13:38:20 | 只看该作者
本帖最后由 blank007 于 2021-9-17 13:41 编辑

经过多次测试,发现用 mkimage 嵌入菜单时,出现问题的原因不是 %@uefi% 大小写、内置菜单字数不够或不规范等的问题,而是 mkimage 对 kernel.img 文件操作时的问题,或者是 kernel.img 文件本身的问题。

如果内置菜单的内容为:

clear
root ()
clear

if  %@uefi%==64 configfile /efi/grub/uefi/menux64.txt
if  %@uefi%==32 configfile /efi/grub/uefi/menux86.txt

则菜单嵌入后,bootx64 工作正常,bootia32 直接进入命令行。但手动输入 configfile /efi/grub/uefi/menux86.txt 后,可以进入菜单,工作正常了。



当内置菜单的内容仅为:configfile /efi/grub/uefi/menux64.txt 或者 configfile /efi/grub/uefi/menux86.txt 时,两者均直接进入命令行。


同时发现一个问题:

我明明是通过优盘启动的(使用嵌入内置菜单的 .efi),但执行 root 命令,显示当前 root  是 hd(1,0) ,即本地硬盘分区。

当使用发行包中的原始 .efi 文件时,root  是 (hd0,3) ,即优盘的分区。工作都正常。

点评

?开头的变量,有大小写 试过前几楼的 范式 菜单了吗 ? 记得 yaya 说,让你去掉 与root 相关的 命令  详情 回复 发表于 2021-9-17 13:51
回复

使用道具 举报

1859#
发表于 2021-9-17 13:51:11 | 只看该作者
blank007 发表于 2021-9-17 13:38
经过多次测试,发现用 mkimage 嵌入菜单时,出现问题的原因不是 %@uefi% 大小写、内置菜单字数不够或不规范 ...

?开头的变量,有大小写

试过前几楼的 范式  菜单了吗 ?
记得 yaya 说,让你去掉 与root 相关的 命令
回复

使用道具 举报

1860#
发表于 2021-9-19 12:10:50 | 只看该作者
感谢分享,棒棒哒!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-5-26 05:43

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表