无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 9729|回复: 34
打印 上一主题 下一主题

[求助] 如何在硬盘上安装 GRUB4DOS for UEFI

  [复制链接]
跳转到指定楼层
1#
发表于 2022-1-31 07:36:52 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
我的电脑是uefi+gpt。想在硬盘上安装 GRUB4DOS for UEFI 启动菜单,方便启动各种pe镜像。请问如何简单操作呢
2#
发表于 2022-1-31 07:57:17 | 只看该作者
用XORBOOT更方便,还好设置

点评

零基础。这个操作方便吗 有教程吗  详情 回复 发表于 2022-1-31 08:10
回复

使用道具 举报

3#
 楼主| 发表于 2022-1-31 08:10:44 | 只看该作者
本帖最后由 少马石 于 2022-1-31 08:14 编辑
djpxj 发表于 2022-1-31 07:57
用XORBOOT更方便,还好设置

零基础。这个操作方便吗 有教程吗。。grub4dos文件是不是需要建立一个分区呢
回复

使用道具 举报

4#
发表于 2022-1-31 08:53:44 | 只看该作者
看看大家都有什么好办法!
回复

使用道具 举报

5#
发表于 2022-1-31 09:19:07 | 只看该作者
1、下载g4e的启动文件放到ESP分区\EFI\BOOT\下面,可以替换掉原来的bootx64.efi,前提是你清楚你的windows启动文件\EFI\Microsoft\boot\bootmfgw.efi是干啥的。
2、在\EFI\grub\menu.lst里面建立启动菜单。启动菜单可以从论坛借鉴。

点评

我在ESP分区\EFI\BOOT\下面替换过原来的bootx64.efi,也在\EFI\Microsoft\boot\下面替换过原来的bootmfgw.efi都不行,说找不到启动文件,没有进入grub,请问还要做其他什么吗?  详情 回复 发表于 2022-11-21 15:31
感谢指导  详情 回复 发表于 2022-1-31 11:09
谢谢。。学习一下。感觉像xp的boot启动文件似的  发表于 2022-1-31 11:09
谢谢指导,学习下  详情 回复 发表于 2022-1-31 11:06
回复

使用道具 举报

6#
发表于 2022-1-31 10:08:11 | 只看该作者
感谢分享
回复

使用道具 举报

7#
发表于 2022-1-31 11:06:33 | 只看该作者
liuzhaoyzz 发表于 2022-1-31 09:19
1、下载g4e的启动文件放到ESP分区\EFI\BOOT\下面,可以替换掉原来的bootx64.efi,前提是你清楚你的windows ...

谢谢指导,学习下
回复

使用道具 举报

8#
 楼主| 发表于 2022-1-31 11:09:56 | 只看该作者
本帖最后由 少马石 于 2022-1-31 11:13 编辑
liuzhaoyzz 发表于 2022-1-31 09:19
1、下载g4e的启动文件放到ESP分区\EFI\BOOT\下面,可以替换掉原来的bootx64.efi,前提是你清楚你的windows ...

感谢指导,bing了一下


前言:
1、本教程针对于UEFI启动来叙述的,根据普遍的支持UEFI的机器来叙述
2、本教程以Windows 8 X64 来作为参考

标题简要说明:
Windows Boot Manager  --------安装完Windows系统后而出现的启动选项(相关的信息存储在NVRAM),可以删除和建立和bcdboot.exe有关
Bootmgfw.efi  --------引导Windows的引导文件  
Bootx64.efi ---------UEFI的必需引导文件
bcdboot.exe--------修复UEFI启动的命令行工具,微软出品


开始前先引进两个概念:

计算机默认引导  -----------就是不管你的计算机有没有操作系统,定义了UEFI启动后将通过Bootx64.efi 引导你的计算机,并进入各种模式,维护、安装、计算机或者系统
                                           这里是 Bootx64.efi ,它只是一个通用名,权限丰富且大于Windows 默认,就是说如果你的Windows 默认的启动文件不在了,
                                           启动计算机默认的引导文件Bootx64.efi 也是可以启动计算机的。使用计算机默认文件随时可以在各种环境下启动计算机,EFI SHELL、ISO、
                                           Windows、Linux...都可以,通吃型.

Windows默认引导 -------就是你为计算机安装了操作系统,或者修复了UEFI引导后,启动菜单会有 Windows Boot Manager 选项,该选项默认从bootmgfw.efi 启动系统
                                          bootmgfw.efi  该位置的该文件只能用于启动Windows,不是通用名,权限单一




========================================================
0、
对于UEFI启动环境来说,Bootx64.efi 用处更大,这里Bootx64.efi 是个通用名,就是所任意有效的efi改成Bootx64.efi 都被计算机启动加载,并启动。
bootmgfw.efi 不是通用名,只适合启动Windows。

当然对于UEFI启动Windows来说Bootx64.efi 和bootmgfw.efi 其实是同一个文件,二者的循环冗余校验CRC值是一样的。
他们都有启动windows的能力,但是身处的位置不一样,

efi\boot\bootx64.efi
efi\microsoft\boot\bootmgfw.efi

对系统的引导产生的影响肯定也不一样,下面我们来验证....
======================================================


从三个方向来讲:(以下结论都经过事实验证,经得住任何怀疑和猜测!!)
========================================================
1、光盘介质UEFI启动【已验证】:

通过分析微软原装镜像的UEFI引导记录(efisys.bin)我发现,最初出光盘的引导文件是efi\boot\bootx64.efi,因为此项验证较简单,我总共验证了:
win7 x64 ;win8 x86 ;win8 x64 三者的光盘引导文件分别是 bootx64.efi  bootia32.efi  bootx64.efi

结论:UEFI在光盘上的启动不依赖于操作系统,可认为是无操作系统环境,故 bootx64.efi 计算机默认引导文件========================================================

2、移动磁盘介质UEFI启动【已验证】:

普遍的,可以从论坛上看到通过bootx64.efi 启动U盘

结论:UEFI在移动磁盘介质上的启动不依赖于操作系统,可认为是无操作系统环境,故 bootx64.efi 计算机默认引导文件
========================================================

3、本地磁盘介质UEFI启动【已验证】:

::原生ESP分区引导文件分析

我为此安装了微软win8 x64的操作系统,分析ESP分区的全部文件,分别存在
efi\boot\bootx64.efi
efi\microsoft\boot\bootmgfw.efi

我们不禁思考:哪个文件测试真正用到的呢?计算机默认启动哪个呢?系统默认启动哪个呢?

那好很简单,我们依次删除他们看看系统能否启动就知道了....

1、删除 bootmgfw.efi ,保留 bootx64.efi  

>结果:
选择从本地硬盘启动 系统仍然可以引导进入
选择 Windows Boot Manager
进入失败


2、删除 bootx64.efi ,保留 bootmgfw.efi  

> 结果:
选择从本地硬盘启动 进入失败
选择 Windows Boot Manager 系统仍然可以引导进入

结论:
bootx64.efi 计算机默认引导文件
bootmgfw.efi 是 Windows默认引导文件



4、bcdboot 和 “Windows Boot Manager ” “ Bootmgfw.efi” “  Bootx64.efi ” 之间的联系

bcdboot 修复系统引导的命令格式: bcdboot 系统位置 /l 语言

例:

  • bcdboot c:\windows /l zh-cn

复制代码

当我们执行了上述代码后:

bcdboot.exe 会修复系统引导,而且会同时修复计算机默认引导Windows 默认引导,在ESP分区同时出现bootx64.efi和bootmgfw.efi,

并且bootx64.efi是由bootmgfw.efi 改名而来的。与此同时在Boot Menu启动选择菜单那里生成“Windows Boot Manager”,

Windows Boot Manager 及其包含的信息是保存在主板上的NVRAM里面的,而不是保存在硬盘上,故删除Windows Boot Manager需要到BIOS设置区删除。

::这里我们如果通过bcdedit查看bcd文件的话,我们可以发现,bootmgfw.efi 是 Windows默认引导文件。所以我们的结论同原生ESP分区测试的结论一样。


UEFI规范中,关于NVRAM的正解:
NVRAM是BIOS ROM中的一段区域,一般定义为64k byte, 现在EFI把所有的变量都存在这里。



结论:
bootx64.efi 计算机默认引导文件
bootmgfw.efi 是 Windows默认引导文件


最后:
写这篇帖子最主要的原因,是能够让那些不是很明白Bootx64.efiBootmgfw.efi区别的、或者模糊知道的朋友,清楚了解二者之间的关联以及区别不要再有 Bootx64.efi就是Bootmgfw.efi改名而来的、Bootx64.efi就是Bootmgfw.efi
像这些不正确的说法,以免误导后来的朋友.....
准确的说:“
Bootx64.efi 可以是 Bootmgfw.efi,也可以是其他任意有效的efi程序

点评

學習了!感謝您分享的知識!幫助很多!  详情 回复 发表于 2022-11-27 12:38
學習了,感謝貼心分享,  详情 回复 发表于 2022-7-20 17:28
现在总算搞明白了  详情 回复 发表于 2022-2-19 14:00

评分

参与人数 1无忧币 +5 收起 理由
bg888 + 5 很给力!

查看全部评分

回复

使用道具 举报

9#
发表于 2022-1-31 11:23:31 | 只看该作者
看看而已
回复

使用道具 举报

10#
发表于 2022-1-31 11:49:20 | 只看该作者
学习一下
回复

使用道具 举报

11#
发表于 2022-2-11 21:16:28 | 只看该作者
谢谢楼主
回复

使用道具 举报

12#
发表于 2022-2-19 14:00:02 | 只看该作者
少马石 发表于 2022-1-31 11:09
感谢指导,bing了一下

现在总算搞明白了
回复

使用道具 举报

13#
发表于 2022-3-19 21:37:43 来自手机 | 只看该作者
在ESP分区的EFI下新建grub文件夹,再把下载解压出来的BOOTX64.EFI和MENU.LST复制进去,编辑MENU.LST就行了。

点评

谢谢  发表于 2022-3-20 20:40
回复

使用道具 举报

14#
发表于 2022-7-20 17:28:32 | 只看该作者
少马石 发表于 2022-1-31 11:09
感谢指导,bing了一下

學習了,感謝貼心分享,
回复

使用道具 举报

15#
发表于 2022-7-21 17:08:01 | 只看该作者
学习了,加深理解。争取做到知其然,知其其所以然
回复

使用道具 举报

16#
发表于 2022-7-28 12:53:38 | 只看该作者
用XORBOOT更方便,还好设置
回复

使用道具 举报

17#
发表于 2022-11-20 18:44:29 | 只看该作者
      请教一下各位老师,在uefi+gpt下,能否在Windows的BCD菜单中加入启动项来启动GRUB4DOS for UEFI,如果可以,如何实现?主要是想在不改变Windows原有的引导方式下,在本地硬盘启动GRUB4DOS for UEFI,谢谢!

点评

不可以,微软限制。  详情 回复 发表于 2022-11-20 18:59
回复

使用道具 举报

18#
发表于 2022-11-20 18:59:24 | 只看该作者
dudubird 发表于 2022-11-20 18:44
请教一下各位老师,在uefi+gpt下,能否在Windows的BCD菜单中加入启动项来启动GRUB4DOS for UEFI,如 ...

不可以,微软限制。

点评

谢谢!那能否通过BCD启动到DOS,再从DOS启动GRU4DOS呢?  详情 回复 发表于 2022-11-20 19:13
回复

使用道具 举报

19#
发表于 2022-11-20 19:13:14 | 只看该作者
sunsea 发表于 2022-11-20 18:59
不可以,微软限制。

谢谢!那能否通过BCD启动到DOS,再从DOS启动GRUB4DOS呢?

点评

都uefi了,还dos呢?你想多了  详情 回复 发表于 2022-11-20 19:35
回复

使用道具 举报

20#
发表于 2022-11-20 19:30:02 | 只看该作者
感谢分享!
回复

使用道具 举报

21#
发表于 2022-11-20 19:35:54 | 只看该作者
dudubird 发表于 2022-11-20 19:13
谢谢!那能否通过BCD启动到DOS,再从DOS启动GRUB4DOS呢?

都uefi了,还dos呢?你想多了
回复

使用道具 举报

22#
发表于 2022-11-21 15:31:32 | 只看该作者
liuzhaoyzz 发表于 2022-1-31 09:19
1、下载g4e的启动文件放到ESP分区\EFI\BOOT\下面,可以替换掉原来的bootx64.efi,前提是你清楚你的windows ...

我在ESP分区\EFI\BOOT\下面替换过原来的bootx64.efi,也在\EFI\Microsoft\boot\下面替换过原来的bootmfgw.efi都不行,说找不到启动文件,没有进入grub,请问还要做其他什么吗?

点评

2、在\EFI\grub\menu.lst里面建立启动菜单。启动菜单可以从论坛借鉴。 你做了吗?你的菜单是什么样子的?字体有吗?unifont.hex.gz  详情 回复 发表于 2022-11-25 13:33
回复

使用道具 举报

23#
发表于 2022-11-24 12:02:52 | 只看该作者
看来只能用 XorBootUx64 设置 UEFI 启动菜单
回复

使用道具 举报

24#
发表于 2022-11-25 13:33:09 | 只看该作者
sunsmile23 发表于 2022-11-21 15:31
我在ESP分区\EFI\BOOT\下面替换过原来的bootx64.efi,也在\EFI\Microsoft\boot\下面替换过原来的bootmfg ...

2、在\EFI\grub\menu.lst里面建立启动菜单。启动菜单可以从论坛借鉴。

你做了吗?你的菜单是什么样子的?字体有吗?unifont.hex.gz

点评

弄明白了,原来是要把安全启动关闭才行。关闭后可以进入了。不过启动时要显示一个锁打开的样子,看着不太顺眼。  详情 回复 发表于 2022-11-27 12:09
回复

使用道具 举报

25#
发表于 2022-11-25 16:08:52 来自手机 | 只看该作者
不是菜单的问题。这样拷贝的话,根本就不会进入grub界面。
回复

使用道具 举报

26#
发表于 2022-11-27 12:09:10 来自手机 | 只看该作者
liuzhaoyzz 发表于 2022-11-25 13:33
2、在\EFI\grub\menu.lst里面建立启动菜单。启动菜单可以从论坛借鉴。

你做了吗?你的菜单是什么样子 ...

弄明白了,原来是要把安全启动关闭才行。关闭后可以进入了。不过启动时要显示一个锁打开的样子,看着不太顺眼。
回复

使用道具 举报

27#
发表于 2022-11-27 12:33:24 | 只看该作者
學習了!感謝各位朋友們分享的經驗和知識!
回复

使用道具 举报

28#
发表于 2022-11-27 12:38:08 | 只看该作者
少马石 发表于 2022-1-31 11:09
感谢指导,bing了一下

學習了!感謝您分享的知識!幫助很多!
回复

使用道具 举报

29#
发表于 2023-9-29 19:07:44 | 只看该作者
不能启动,有详细教程吗?
回复

使用道具 举报

30#
发表于 2023-9-29 19:30:39 | 只看该作者
谢谢分享                    
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-4-26 13:04

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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