无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
楼主: hilsonma

[分享] 将grub2启动模板封装成efi单文件

  [复制链接]
发表于 2020-4-26 23:48:22 | 显示全部楼层
回复

使用道具 举报

发表于 2020-4-26 23:49:38 | 显示全部楼层
请问楼主,怎么更新为最新的grub2? 是把“grub2定制单文件efi”里面的模块替换吗?
回复

使用道具 举报

发表于 2020-4-27 00:00:59 | 显示全部楼层
hilsonma 发表于 2020-4-19 15:36
我以前是用chew-wga在部署时激活,不需要每次启动时激活。

请问楼主,封装efi的文件中,GRUB2怎么更新的最新版? 是把那些模块替换一下就OK了吗?
回复

使用道具 举报

 楼主| 发表于 2020-4-27 09:03:48 | 显示全部楼层
2000lg 发表于 2020-4-26 23:48
请问楼主、怎么更新为最新的guub2?

将文件夹 x86_64-efi 和文件 grub-mkimage.exe 用新版grub2中的替换。
回复

使用道具 举报

发表于 2020-4-27 12:52:04 | 显示全部楼层
hilsonma 发表于 2020-4-27 09:03
将文件夹 x86_64-efi 和文件 grub-mkimage.exe 用新版grub2中的替换。

谢谢。
回复

使用道具 举报

发表于 2020-5-8 12:51:04 | 显示全部楼层
楼主好!请教一下,

把 SLIC.BIN 文件放在了 ESP 分区的根目录,想让它加载SLIC.BIN之后,启动 /EFI/Microsoft/boot/bootmgfw.efi

grub.cfg 内容如下:
$prefix/run/run.cfgset{acpi --slic /SLIC.bin;run /EFI/Microsoft/boot/bootmgfw.efi;}

mod.txt 添加了 acpi
chain configfile cpio echo acpi exfat fat fb gzio halt help linux loopback lzopio map memdisk newc normal ntboot ntfs part_gpt part_msdos reboot regexp search test

为什么无法加载 SLIC.bin ?

哪里写的不对?

谢谢
回复

使用道具 举报

 楼主| 发表于 2020-5-8 13:07:52 | 显示全部楼层
szmsys 发表于 2020-5-8 12:51
楼主好!请教一下,

把 SLIC.BIN 文件放在了 ESP 分区的根目录,想让它加载SLIC.BIN之后,启动 /EFI/Mic ...

source $prefix/run/run.cfg
search -n -s -f /slic.bin
acpi --slic /slic.bin
run /EFI/Microsoft/Boot/bootmgfw.efi
回复

使用道具 举报

发表于 2020-5-8 14:40:16 | 显示全部楼层
hilsonma 发表于 2020-5-8 13:07
source $prefix/run/run.cfg
search -n -s -f /slic.bin
acpi --slic /slic.bin

谢谢老大!测试失败,咋回事?
IMG_20200508_143428[1].jpg
回复

使用道具 举报

发表于 2020-5-8 14:53:03 | 显示全部楼层
hilsonma 发表于 2020-5-8 13:07
source $prefix/run/run.cfg
search -n -s -f /slic.bin
acpi --slic /slic.bin

手动输入run命令,提示不存在
IMG_20200508_144505.jpg
回复

使用道具 举报

发表于 2020-5-8 15:04:36 | 显示全部楼层
hilsonma 发表于 2020-5-8 13:07
source $prefix/run/run.cfg
search -n -s -f /slic.bin
acpi --slic /slic.bin

重新制作了一次,手动输入命令,又显示这个
IMG_20200508_145835.jpg
回复

使用道具 举报

 楼主| 发表于 2020-5-8 15:06:28 | 显示全部楼层
本帖最后由 hilsonma 于 2020-5-8 15:21 编辑
szmsys 发表于 2020-5-8 14:53
手动输入run命令,提示不存在

$prefix 目录下面需要有run文件夹和相关的3个cfg文件以及ms文件夹等,这样才能使用run命令。

要么就是不使用run命令,如果grub.cfg在esp,那么grub.cfg如下:
acpi --slic /slic.bin
chainloader /EFI/Microsoft/Boot/bootmgfw.efi

如果grub.cfg不在esp,slic.bin和bootmgfw.efi都在esp,那么grub.cfg如下:
search -n -s -f /slic.bin
acpi --slic /slic.bin
chainloader /EFI/Microsoft/Boot/bootmgfw.efi

总之只要分区不同或不确定就使用search来确定分区。
回复

使用道具 举报

发表于 2020-5-8 15:40:03 | 显示全部楼层
search -n -s -f /slic.bin
acpi --slic /slic.bin
chainloader /EFI/Microsoft/Boot/bootmgfw.efi

用这个,slic 加载成功,bootmgfw.efi不成功,依然提示我发的截屏
fiel path 。。。。。。。。。。。。。。。。。。。。。。  endentire
回复

使用道具 举报

 楼主| 发表于 2020-5-8 15:44:31 | 显示全部楼层
szmsys 发表于 2020-5-8 15:40
search -n -s -f /slic.bin
acpi --slic /slic.bin
chainloader /EFI/Microsoft/Boot/bootmgfw.efi

关secureboot,或者添加过secureboot方案。
回复

使用道具 举报

发表于 2020-5-8 15:57:05 | 显示全部楼层
szmsys 发表于 2020-5-8 15:04
重新制作了一次,手动输入命令,又显示这个

你再输入boot就启动了

点评

报告一个严重的问题,使用生成的 Efi 作为第一启动项,开机,关机都么有问题。 但是,计算机进入休眠模式后,无法成功唤醒,提示错误,这个问题有点严重啊!  详情 回复 发表于 2020-5-9 07:36
谢谢!加了一行boot,终于成功了。可是这满屏的字符太难看了,怎么去掉?  详情 回复 发表于 2020-5-8 19:00
谢谢老大,我试试  详情 回复 发表于 2020-5-8 17:40
用 chainloader /EFI/Microsoft/Boot/bootmgfw.efi 命令行 启动失败, 但是,用下面的就启动成功,咋回事 menuentry '正常启动(Windows)' --unrestricted { if [ 'pc' == $grub_platform ] ; then  详情 回复 发表于 2020-5-8 17:39
回复

使用道具 举报

发表于 2020-5-8 17:39:17 | 显示全部楼层
wintoflash 发表于 2020-5-8 15:57
你再输入boot就启动了


chainloader /EFI/Microsoft/Boot/bootmgfw.efi
命令行 启动失败,

但是,用下面的就启动成功,咋回事


menuentry '正常启动(Windows)' --unrestricted {
    if [ 'pc' == $grub_platform ] ; then
        if search --file --set /bootmgr ; then
            chainloader +1
        elif search --file --set /ntldr ; then
            chainloader +1
        fi
    elif [ 'efi' == $grub_platform ] ; then
        if search --file --set /EFI/Microsoft/Boot/bootmgfw.efi ; then
            chainloader /EFI/Microsoft/Boot/bootmgfw.efi
        fi
    fi
}
回复

使用道具 举报

发表于 2020-5-8 17:40:58 | 显示全部楼层
wintoflash 发表于 2020-5-8 15:57
你再输入boot就启动了

谢谢老大,我试试
回复

使用道具 举报

 楼主| 发表于 2020-5-8 17:50:51 | 显示全部楼层
szmsys 发表于 2020-5-8 17:39

chainloader /EFI/Microsoft/Boot/bootmgfw.efi
命令行 启动失败,

那你是在bios平台启动,不是在uefi平台启动,当然不能通过bootmgfw.efi引导了,只能通过bootmgr引导。

grub2是支持uefi/bios双平台的。你需要了解电脑是在以哪个模式启动。
回复

使用道具 举报

发表于 2020-5-8 18:03:06 | 显示全部楼层
hilsonma 发表于 2020-5-8 17:50
那你是在bios平台启动,不是在uefi平台启动,当然不能通过bootmgfw.efi引导了,只能通过bootmgr引导。

...

好的,谢谢
回复

使用道具 举报

 楼主| 发表于 2020-5-8 18:36:44 | 显示全部楼层

不过一般bios引导也不会引导到esp的呀,所以你这情况有点奇怪。
还有一个可能就是你有多个esp,bootmgfw.efi跟grub.cfg或slic.bin不在同一个分区。
你可以试一下先确定bootmgfw.efi所在分区再引导
search -n -s -f /EFI/Microsoft/Boot/bootmgfw.efi
chainloader /EFI/Microsoft/Boot/bootmgfw.efi

要知是bios还是uefi平台,可以在grub2命令行下输入set然后看grub_platform变量的值是pc还是efi.
回复

使用道具 举报

发表于 2020-5-8 18:43:46 | 显示全部楼层
hilsonma 发表于 2020-5-8 18:36
不过一般bios引导也不会引导到esp的呀,所以你这情况有点奇怪。
还有一个可能就是你有多个esp,bootmgfw ...

好的谢谢
回复

使用道具 举报

发表于 2020-5-8 19:00:02 | 显示全部楼层
wintoflash 发表于 2020-5-8 15:57
你再输入boot就启动了

谢谢!加了一行boot,终于成功了。可是这满屏的字符太难看了,怎么去掉?
IMG_20200508_185448.jpg
回复

使用道具 举报

发表于 2020-5-8 19:01:27 | 显示全部楼层
hilsonma 发表于 2020-5-8 18:36
不过一般bios引导也不会引导到esp的呀,所以你这情况有点奇怪。
还有一个可能就是你有多个esp,bootmgfw ...

search -n -s -f /EFI/Microsoft/Boot/bootmgfw.efi
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
boot

谢谢,终于折腾成功了

可是,满屏的字符太难看了,怎么去掉啊?
回复

使用道具 举报

 楼主| 发表于 2020-5-8 22:46:14 | 显示全部楼层
szmsys 发表于 2020-5-8 19:01
search -n -s -f /EFI/Microsoft/Boot/bootmgfw.efi
chainloader /EFI/Microsoft/Boot/bootmgfw.efi
bo ...

命令行需要输入boot来执行引导,菜单里是不需要的。

嫌文字信息难看可以切换成图形模式,这些文字信息是显示在console的,gfxterm没有这些信息。
即菜单中使用
terminal_output gfxterm
当然定制efi文件时要包含相应的模块。(gfxterm efi_gop efi_uga)
回复

使用道具 举报

发表于 2020-5-9 01:18:34 | 显示全部楼层
hilsonma 发表于 2020-5-8 22:46
命令行需要输入boot来执行引导,菜单里是不需要的。

嫌文字信息难看可以切换成图形模式,这些文字信息 ...

辛苦老大,我试试
回复

使用道具 举报

发表于 2020-5-9 07:36:01 | 显示全部楼层
报告一个严重的问题,使用生成的 Efi 作为第一启动项,开机,关机都么有问题。

但是,计算机进入休眠模式后,无法成功唤醒,提示错误,这个问题有点严重啊!
回复

使用道具 举报

发表于 2020-5-9 07:36:38 | 显示全部楼层
wintoflash 发表于 2020-5-8 15:57
你再输入boot就启动了

报告一个严重的问题,使用生成的 Efi 作为第一启动项,开机,关机都么有问题。

但是,计算机进入休眠模式后,无法成功唤醒,提示错误,这个问题有点严重啊!
回复

使用道具 举报

发表于 2020-5-9 08:09:01 | 显示全部楼层
本帖最后由 wintoflash 于 2020-5-9 08:11 编辑
szmsys 发表于 2020-5-9 07:36
报告一个严重的问题,使用生成的 Efi 作为第一启动项,开机,关机都么有问题。

但是,计算机进入休眠 ...

Windows 自己的问题,别赖我。你自己加载slic搞盗版Windows,微软不十分钟给你黑屏一次就已经不错了。



点评

老大,不是这样的。我用 mydigitallife 上的 WindSLIC 就没有这个休眠无法唤醒的问题。 另外,我对您只有感谢,不会赖你的感谢都来不及,咋会赖你  详情 回复 发表于 2020-5-9 08:25
回复

使用道具 举报

发表于 2020-5-9 08:25:50 | 显示全部楼层
本帖最后由 szmsys 于 2020-5-9 08:28 编辑
wintoflash 发表于 2020-5-9 08:09
Windows 自己的问题,别赖我。你自己加载slic搞盗版Windows,微软不十分钟给你黑屏一次就已经不错了。

...

老大,不是这样的。我用 mydigitallife 上的 WindSLIC 就没有这个休眠无法唤醒的问题。

另外,我对您只有感谢,不会赖你的, 感谢都来不及,咋会赖你
回复

使用道具 举报

发表于 2020-5-15 05:38:24 | 显示全部楼层
感谢分享
回复

使用道具 举报

发表于 2020-5-22 23:23:13 | 显示全部楼层
請問這個方式 可以封裝加密嗎
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-29 14:16

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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