无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 17549|回复: 13
打印 上一主题 下一主题

[求助] 请教UEFI+GPT启动中bcd调用另一efi文件、隐藏其他系统分区的两个问题

[复制链接]
跳转到指定楼层
1#
发表于 2016-1-4 10:19:17 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
本帖最后由 qj_tzy 于 2016-1-6 12:51 编辑

请教UEFI+GPT启动中bcd调用另一efi文件、隐藏其他系统分区的两个问题

我用uefi+gpt分区方式,安装了win7_x64、win8_x64系统,想有两个问题请教:

1.在\efi\boot\下有一其他引导器启动菜单的引导文件名为xxx.efi,想在bootx64.efi引导所用的\efi\Microsoft\Boot\bcd中,如何编辑该bcd,以调用\efi\boot\xxx.efi而启动该引导器菜单。比如grub2x64.efi、xorboot.efi分别是启动grub2、xorbbot引导器菜单的文件,均在\efi\boot\文件夹下,与bootx64.efi的作用类似,我是想用bcd分别调用此两个文件,以分别启动进入该两个引导器菜单,我没能实现。若能贴出BCD编辑图则最好。

2.若不用xorboot引导器的话,在启动win7_x64时,先把本分区设为非隐藏、把win8_x64所在分区设为隐藏;启动win8_x64时亦然。若是安装有3个uefi方式启动的系统,在启动一个系统时,如何隐藏其他2个系统分区。

诚请各位大大们指点,谢谢!
推荐
发表于 2016-1-6 21:19:13 来自手机 | 只看该作者
本帖最后由 Pauly 于 2016-1-7 00:39 编辑

在外面没有测试,但我觉得可以参考BCD中的内存测试的启动项,它启动的是memtest.efi,理论上可以再启动xorboot.efi或grub2.efi,有条件的可以测试一下
顺便说一下,xorboot是业界首先实现UEFI启动分区自动显示隐藏的管理器(包括mbr,gpt),虽然这部分的技术含量并不算高

点评

我在bcd中,直接将内存测试那个efi文件,换名为xorboot.efi文件,保存后重启,选择内存测试项进入,但出现错误提示而停止。  详情 回复 发表于 2016-1-8 10:18
谢谢指点! 1.我参照内存测试的方式测试一下,若到时遇到问题再向您请教。 2.我在winpe下用bootice把几个系统的GPT分区均作隐藏,而在xorboot中作了启动某一系统时显现此分区、而隐藏其他系统分区的设置,但启动  详情 回复 发表于 2016-1-7 12:22
回复

使用道具 举报

14#
发表于 2019-2-9 02:28:37 | 只看该作者
qj_tzy 发表于 2016-1-8 10:18
我在bcd中,直接将内存测试那个efi文件,换名为xorboot.efi文件,保存后重启,选择内存测试项进入,但 ...

请问楼主bcd启动xorboor.efi或者启动bootx64.efi成功了吗?
回复

使用道具 举报

13#
 楼主| 发表于 2016-1-8 10:20:49 | 只看该作者
Pauly 发表于 2016-1-7 16:29
xorboot uefi对gpt分区的显示和隐藏更加合理,与bootice不太一致,不要同时使用,下次更新bootice时会改 ...

非常期待大师的新 bootice 版本问世!
回复

使用道具 举报

12#
 楼主| 发表于 2016-1-8 10:18:09 | 只看该作者
Pauly 发表于 2016-1-6 21:19
在外面没有测试,但我觉得可以参考BCD中的内存测试的启动项,它启动的是memtest.efi,理论上可以再启动xorb ...


我在bcd中,直接将内存测试那个efi文件,换名为xorboot.efi文件,保存后重启,选择内存测试项进入,但出现错误提示而停止。不知是何原因,还望指点,谢谢!

点评

请问楼主bcd启动xorboor.efi或者启动bootx64.efi成功了吗?  详情 回复 发表于 2019-2-9 02:28
回复

使用道具 举报

11#
发表于 2016-1-7 16:29:29 来自手机 | 只看该作者
qj_tzy 发表于 2016-1-7 12:22
谢谢指点!

1.我参照内存测试的方式测试一下,若到时遇到问题再向您请教。

xorboot uefi对gpt分区的显示和隐藏更加合理,与bootice不太一致,不要同时使用,下次更新bootice时会改为xorboot中的隐藏方式

点评

非常期待大师的新 bootice 版本问世!  详情 回复 发表于 2016-1-8 10:20
回复

使用道具 举报

10#
 楼主| 发表于 2016-1-7 12:22:02 | 只看该作者
Pauly 发表于 2016-1-6 21:19
在外面没有测试,但我觉得可以参考BCD中的内存测试的启动项,它启动的是memtest.efi,理论上可以再启动xorb ...

谢谢指点!

1.我参照内存测试的方式测试一下,若到时遇到问题再向您请教。
2.我在winpe下用bootice把几个系统的GPT分区均作隐藏,而在xorboot中作了启动某一系统时显现此分区、而隐藏其他系统分区的设置,但启动系统时却不能启动。只能重进PE,用bootice显现几个系统分区后,系统启动正常。经测试,以u盘启动,用grub4dos显现几个系统分区后也启动正常。不知是何缘故,导致我用xorboot未能如此启动成功,还诚望指点。

点评

xorboot uefi对gpt分区的显示和隐藏更加合理,与bootice不太一致,不要同时使用,下次更新bootice时会改为xorboot中的隐藏方式  详情 回复 发表于 2016-1-7 16:29
回复

使用道具 举报

8#
发表于 2016-1-6 18:47:08 | 只看该作者
qj_tzy 发表于 2016-1-6 16:46
谢谢!

关于问题1:

1.UEFI下BCD返回grub2吗?这个我就不会了,暂时没发现谁研究过。

2.弄错了,不是bootice隐藏,是直接在系统下删除盘符就可以了
回复

使用道具 举报

7#
 楼主| 发表于 2016-1-6 16:46:47 | 只看该作者
lbw2007 发表于 2016-1-6 16:32
关于问题2,在我使用windows的过程中,发现当前系统所在分区是无法隐藏的。假设我的整个磁盘有4个分区 ...

谢谢!

关于问题1:
我是用xorboot直接引导grub2x64.efi和bootx64.efi,启动了grub2菜单和bootmgr(不知是否该这样称)菜单;也用grub2引导到了xorboot菜单和bootmgr菜单;现在的问题是,如何从bootmgr菜单中返回xorboot菜单和grub2菜单。

关于问题2:
若在pe中esp分区是没有问题的,但若用bootice等软件隐藏了win7、win8所在的分区,在以uefi方式启动win7、win8系统时,就无法启动了,不知你是如何做的。当然若以bios+gpt+grub4dos方式启动时,可在启动前先显现某系统分区后再启动也是可以正常启动的。

点评

1.UEFI下BCD返回grub2吗?这个我就不会了,暂时没发现谁研究过。 2.弄错了,不是bootice隐藏,是直接在系统下删除盘符就可以了  详情 回复 发表于 2016-1-6 18:47
回复

使用道具 举报

6#
发表于 2016-1-6 16:32:22 | 只看该作者
qj_tzy 发表于 2016-1-6 09:26
对于第1个问题,我不是想用BCD启动win7/win8的分区系统,也不是两者的VHD/VHDX系统,这两者我都会了。
...


关于问题2,在我使用windows的过程中,发现当前系统所在分区是无法隐藏的。假设我的整个磁盘有4个分区:ESP区、win7、win8、数据区,那么只需要在PE下将前三个分区用bootice隐藏,那么在任何分区下都只能看到2个分区,即系统分区(C盘)和数据区。

关于问题1,hgh1974网友可能是将winload.efi视为和bootx64.efi同级别的引导文件了。我认为*.efi都是efi shell脚本,而BCD只能启动winload.efi,所以你直接调用是没有效果的,可能需要破解。

为什么不用xorboot直接引导bootx64.efi和grub2x64.efi?个人认为BCD很受限。

点评

谢谢! 关于问题1: 我是用xorboot直接引导grub2x64.efi和bootx64.efi,启动了grub2菜单和bootmgr(不知是否该这样称)菜单;也用grub2引导到了xorboot菜单和bootmgr菜单;现在的问题是,如何从bootmgr菜单中返  详情 回复 发表于 2016-1-6 16:46
回复

使用道具 举报

5#
 楼主| 发表于 2016-1-6 09:26:10 | 只看该作者
本帖最后由 qj_tzy 于 2016-1-6 12:51 编辑
hgh1974 发表于 2016-1-5 20:53
1.这个没什么难度啊, 比如当前WIN10,用BOOTICE编辑当前BCD,新增win7/8/8.1启动项,只要选另一个系统( ...


对于第1个问题,我不是想用BCD启动win7/win8的分区系统,也不是两者的VHD/VHDX系统,这两者我都会了。
若grub2x64.efi、xorboot.efi分别是启动grub2、xorbbot引导器菜单的文件,均在\efi\boot\文件夹下,与bootx64.efi的作用类似,我是想用bcd分别调用此两个文件,以分别启动进入该两个引导器菜单,我没能实现。

点评

关于问题2,在我使用windows的过程中,发现当前系统所在分区是无法隐藏的。假设我的整个磁盘有4个分区:ESP区、win7、win8、数据区,那么只需要在PE下将前三个分区用bootice隐藏,那么在任何分区下都只能看到2个分区  详情 回复 发表于 2016-1-6 16:32
回复

使用道具 举报

4#
发表于 2016-1-5 20:53:07 | 只看该作者
qj_tzy 发表于 2016-1-4 21:45
谢谢!

1.BOOTICE编辑BCD我会,但试过调用另一efi未成功,还请祥细说明

1.这个没什么难度啊, 比如当前WIN10,用BOOTICE编辑当前BCD,新增win7/8/8.1启动项,只要选另一个系统(win7/8)所在分区,保存就完了,真没什么特别的地方。
2.删除盘符后,另外系统区肯定不可见了,不知楼主要想达到什么目的。自动化?EFI真没见自动隐藏功能的。

点评

对于第1个问题,我不是想用BCD启动win7/win8的分区系统,也不是两者的VHD/VHDX系统,这两者我都会了。 若grub2x64.efi、xorboot.efi分别是启动grub2、xorbbot引导器菜单的文件,我是想用bcd分别调用此两个文件,以  详情 回复 发表于 2016-1-6 09:26
回复

使用道具 举报

3#
 楼主| 发表于 2016-1-4 21:45:39 | 只看该作者
hgh1974 发表于 2016-1-4 17:34
1.BOOTICE编辑BCD
2.最简单的办法是删除另外系统的盘符,就不可见了。用系统的DISKGEN都可以删除盘符

谢谢!

1.BOOTICE编辑BCD我会,但试过调用另一efi未成功,还请祥细说明
2.用系统的磁盘管理删除盘符,这个不是我要达到的目的。

点评

1.这个没什么难度啊, 比如当前WIN10,用BOOTICE编辑当前BCD,新增win7/8/8.1启动项,只要选另一个系统(win7/8)所在分区,保存就完了,真没什么特别的地方。 2.删除盘符后,另外系统区肯定不可见了,不知楼主要想  详情 回复 发表于 2016-1-5 20:53
回复

使用道具 举报

2#
发表于 2016-1-4 17:34:29 | 只看该作者
1.BOOTICE编辑BCD
2.最简单的办法是删除另外系统的盘符,就不可见了。用系统的DISKGEN都可以删除盘符

点评

谢谢! 1.BOOTICE编辑BCD我会,但试过调用另一efi未成功,还请祥细说明 2.用系统的磁盘管理删除盘符,这个不是我要达到的目的。  详情 回复 发表于 2016-1-4 21:45
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-30 17:02

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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