无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站广告联系 微信:wuyouceo QQ:184822951
查看: 40062|回复: 50

想在ESP分区放个PE,请问如何编辑BCD?——(已解决)

    [复制链接]
发表于 2013-4-19 21:45:07 | 显示全部楼层 |阅读模式
本帖最后由 ddianxing 于 2013-4-21 10:36 编辑

在ESP分区根目录上放了grldr.mbr, grldr, disk.wim 三个文件...

如图,我尝试在 BCD 里加 GRUB 和 PE 均不成功,不知错在哪里?请大侠指教!

sshot-1.png

sshot-2.png

------------------------------------

已解决!!!


其实除了GRUB启动项外在UEFI启动中不支持以外,我在BCD中添加的PE项目是没有问题的!但少了boot\boot.sdi这个文件,所以保证ESP分区的文件是这样的就行了:

根目录
├─boot目录
│  └─boot.sdi
├─efi目录
│  ├─boot目录
│  │    ├─zh-cn目录
│  │    │     └─bootx64.efi.mui
│  │    └─ bootx64.efi
│  └─microsoft目录
│        └─boot目录
│            ├─fonts目录
│            │        ├─ chs_boot.ttf
│            │        └─wgl4_boot.ttf
│            └─BCD
└─WINPE目录
    └─winpe_x64.wim


注意:如果bootmgfw.efi文件是win7里的,就无法启动win8PEx64,把bootmgfw.efi换成win8版本的后,就可以启动win7PEx64/win8PEx64了。


另外有个问题没有解决,就是我我在开机时按F11,只能选择Windows Boot Manager 的方式启动,而没有UEFI的其它选项。也就是说不能通过 bootx64.efi来启动,而只能通过bootmgfw.efi 来启动。在我的机子上bootx64.efi这个文件删掉没有任何影响!(2011hiboy 版主的对此文件作用有说明,见:http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1

我猜想可能由于我的主板比较老(两年前的微星H61M-E33 B3 BIOS版本 12.3),对UEFI的支持不是很好!
 楼主| 发表于 2013-4-19 22:38:05 | 显示全部楼层
2011hiboy 发表于 2013-4-19 22:10
首先既然你说ESP分区,那么就是UEFI启动了,那么是不支持grub4dos的。可以支持grub2

再说WIM文件的添加, ...


谢谢你,原来GRUB不能在ESP里用,我把它从BCD里删掉了。

但PE按你的说法设置了,但还是不能启动PE。。。这个 WIM 是天意的win8pe.iso里提取出来的,应该没有问题。。。

sshot-1.png

回复

使用道具 举报

发表于 2013-4-19 22:13:12 | 显示全部楼层
看看
回复

使用道具 举报

发表于 2013-4-19 22:10:07 | 显示全部楼层
首先既然你说ESP分区,那么就是UEFI启动了,那么是不支持grub4dos的。可以支持grub2

再说WIM文件的添加,给你看图吧:
**截图20130419220952.png

点评

这个工具能不能传一个?没找到哪儿下载?  发表于 2014-3-7 18:07

评分

参与人数 1无忧币 +5 收起 理由
1828872758 + 5 这工具在哪里下载啊?

查看全部评分

回复

使用道具 举报

发表于 2024-2-24 21:08:48 | 显示全部楼层
谢谢分享
回复

使用道具 举报

发表于 2024-1-21 13:55:26 | 显示全部楼层
纯UEFI可以启动win7 32位吗
回复

使用道具 举报

发表于 2020-3-6 14:19:56 | 显示全部楼层
boot.sdi文件在哪里找呢
回复

使用道具 举报

发表于 2020-3-1 22:39:06 | 显示全部楼层
标记学习。
回复

使用道具 举报

发表于 2019-11-10 22:24:34 来自手机 | 显示全部楼层
作个记号,感谢分享
回复

使用道具 举报

发表于 2014-11-4 22:51:31 | 显示全部楼层
请问楼主,你能分享一套你提到的文件包吗,百度网盘也行,小弟这几天正好把MBR转成了GPT
回复

使用道具 举报

发表于 2014-10-1 12:06:10 | 显示全部楼层
好技术。
回复

使用道具 举报

发表于 2014-9-25 14:00:04 | 显示全部楼层
CPU - UEFI - OS loader - OS
cpu目前都是支持 x64/x86的,但是UEFI在这里竖了一道坎,x64归x64,x86归x86。。
应该是这样~
回复

使用道具 举报

发表于 2014-8-7 12:27:33 | 显示全部楼层
糊涂 发表于 2013-4-20 07:32
我以为WIN8X64和X86系统都支持UEFI启动呢!

原来只支持X64

我的电脑预装的就是win8x86,也是uefi启动啊?
回复

使用道具 举报

发表于 2014-8-7 12:25:26 | 显示全部楼层
搜读寺内。这些文件可以分享一份吗?
回复

使用道具 举报

发表于 2014-8-4 16:33:01 | 显示全部楼层
UEFI启动PE关键在35楼的图中,启动文件是\windows\system32\boot\winload.efi,不是winload.exe。还有NX:可以不选。
回复

使用道具 举报

发表于 2014-1-1 21:11:46 | 显示全部楼层
我的可以正常启动进入PE,设置截图如下:
http://bbs.wuyou.net/forum.php?mod=attachment&aid=MTg2NjM2fGQ1MTFiMjc0ZDliZTA0NzhlMDQzMWVjMDhmZGQ3YzYwfDE3MTE3MDM1MTg%3D&request=yes&_f=.jpg
win8.1 x64,安装到ESP分区。谈下实验心得:
1、wim文件必须跟系统一致,我的64位,必须用64位pe;
2、两个文件命名最好BOOT,sdi文件在boot文件夹里;
3、uefi主板引导要把加载程序文件winload.exe 改为 winload.exe,其他基本可以不动;

但我也有个问题:我电脑分辨率是3200*1800,uefi引导进入PE后显示的字太小根本看不到,U盘BIOS启动方式显示分辨率就可以,默认是1024*768,哪位高手能帮忙解决下这个头痛问题,如何强制设置默认分辨率,或者在PE里面可以快速改变分辨率?

谢谢!
wim.jpg
回复

使用道具 举报

发表于 2013-12-27 12:23:41 | 显示全部楼层
shan 发表于 2013-9-26 22:10
了解了。用cpuz查看我的本本是Intel64(EM64T)。看来ia32的还不好碰到了

有啊,现在伟彦的ph101 uefi就是AI32的,请问有办法装x64的win8吗?

现在是用x64的pe都启动不了。。。

点评

好像bay trail的cpu都是支持em64T的  发表于 2014-1-8 01:43
回复

使用道具 举报

发表于 2013-9-26 22:10:09 | 显示全部楼层
本帖最后由 shan 于 2013-9-26 22:11 编辑
2011hiboy 发表于 2013-4-21 14:54
win8pe x86 支持从UEFI启动,那么该计算机构架就必须是IA32的,IA32构架就是纯X86的CPU构架,搭配32bit系 ...


了解了。用cpuz查看我的本本是Intel64(EM64T)。看来ia32的还不好碰到了

点评

有啊,现在伟彦的ph101 uefi就是AI32的,请问有办法装x64的win8吗? 现在是用x64的pe都启动不了。。。  详情 回复 发表于 2013-12-27 12:23
不是不好碰到,而是压根碰不到...呵呵  发表于 2013-10-1 21:03
回复

使用道具 举报

发表于 2013-8-22 03:29:15 | 显示全部楼层
好好学习,天天向下
回复

使用道具 举报

发表于 2013-4-24 18:27:18 | 显示全部楼层
反正现在的主板80%都是x64 UEFI的,只能装WIN7 X64和Win8 x64。
那些Win8 x86 EFI太少了。
回复

使用道具 举报

发表于 2013-4-24 16:35:13 | 显示全部楼层
2011wap774411 发表于 2013-4-21 19:24
看来uefi启动的pe块研究出来了。

不是已经出来很多了吗 ……
回复

使用道具 举报

发表于 2013-4-23 13:30:23 | 显示全部楼层
学习了学习了学习了学习了学习了学习了学习了学习了学习了
回复

使用道具 举报

发表于 2013-4-23 00:25:38 | 显示全部楼层
拿铁不加糖 发表于 2013-4-22 09:57
“win8 PE x86想要UEFI启动,CPU必需是纯X86框架的,就是没有X86-64指令集的CPU”我在VMware中开启UEFI然 ...

对于这个问题,我之前已经认同UEFI固件对PE启动的影响,
事后主要针对CPU和UEFI对启动的影响进行讨论的..

我和 fujianabc 元帅的争论完毕了,

结论:
只要CPU指令集支持+UEFI 固件匹配 那么是可以进行UEFI启动的。
==========================================

现在针对你说的,你的CPU指令集支持x86和x64,那么剩下的就是UEFI固件匹配的问题了。显而易见..
回复

使用道具 举报

发表于 2013-4-22 09:57:07 | 显示全部楼层
2011hiboy 发表于 2013-4-20 17:53
对是有限制的,CPU的限制。
win8 PE x86想要UEFI启动,CPU必需是纯X86框架的,就是没有X86-64指令集的CP ...

“win8 PE x86想要UEFI启动,CPU必需是纯X86框架的,就是没有X86-64指令集的CPU”我在VMware中开启UEFI然后首先安装32bit的win8,可以安装完成也证明使用的是UEFI,但是我在这个虚拟机中安装64bit的win8就不可以,我的CPU是i5的。何解?
回复

使用道具 举报

发表于 2013-4-21 22:47:40 | 显示全部楼层
本帖最后由 2011hiboy 于 2013-4-21 22:57 编辑

UEFI固件类型能对PE和系统的启动产生影响,也不能否认,但与CPU肯定有不可分割的关系,况且CPU和系统的联系一直是比较密切的...






其实我说的那种在纯X86的CPU上面验证的方法能够通过就能将问题说明了,可是我身边的电脑,都是X64的,没法验证这最有力的一点...
纯X86的恐怕只有我家的256MB内存的TCL才有可能,以后有机会验证下在纯X86计算机的CPU情况下试验VMware UEFI 启动...

PS:或许等我有机会验证完毕后,已经没人关注这个话题了,楼主的问题已经解决,我想也没必要争论了,真相就在那,也在我们的心中。
回复

使用道具 举报

发表于 2013-4-21 22:44:40 | 显示全部楼层
fujianabc 发表于 2013-4-21 19:55
不知道你举nvrboot.efi干什么,那个是运行于安腾平台的东西,和x64没有任何关系,那个是IA-64,IA-64和x6 ...

......我举nvrboot.efi的目的?
不管他运行于什么平台,只要它是CPU+系统 的结构就OK,我写这个并不是我混淆了IA64与X64的区别,事实上我能够区分这两者,正是由于这点我才要举nvrboot.efi的例子,当CPU构架不支持当前启动时候,UEFI再怎么变也是无力的。
不管EFI 1.x 还是后来的UEFI,他们的标准,是统一的。
回复

使用道具 举报

发表于 2013-4-21 19:55:39 | 显示全部楼层
2011hiboy 发表于 2013-4-21 18:55
****我同意UEFI固件类型对PE启动的影响,也一直没有否认这点,但是我不同意这和CPU任何没有关系*****

首 ...

不知道你举nvrboot.efi干什么,那个是运行于安腾平台的东西,和x64没有任何关系,那个是IA-64,IA-64和x64是两种完全不同的64位架构。而且ia-64那个是EFI 1.x,不是UEFI。
回复

使用道具 举报

发表于 2013-4-21 19:29:55 来自手机 | 显示全部楼层
不一定非要有uefi打头的启动项,我的主板开启UEFI后,启动项也没有UEFI打头,直接选择你要启动的设备即可。就会进入计算机默认引导…
回复

使用道具 举报

发表于 2013-4-21 19:24:24 | 显示全部楼层
看来uefi启动的pe块研究出来了。
回复

使用道具 举报

发表于 2013-4-21 18:55:32 | 显示全部楼层
本帖最后由 2011hiboy 于 2013-4-21 22:48 编辑

****我同意UEFI固件类型对PE启动的影响,也一直没有否认这点,但是我不同意这和CPU没有任何关系*****

首先我坚持认为 win8 x86的PE想要UEFI启动,必需要CPU的支持
我同意UEFI如果是32bit的能够支持win8 x86 pe的运行;但我认为这是只是看到了问题的表面
不管UEFI是32bit或者64bit这都需要CPU的指令来支持,否则,UEFI加载了一个efi文件,那么efi文件的运行呢?UEFI给它解释指令吗?还是efi自己给自己解释指令?
不,他们都没有指令集,那么肯定是CPU给efi文件解释它运行时发出的指令,那么CPU的指令集将是一切的核心,具有最终决定权。




理论及证据:
市面CPU=市面上普遍的CPU,包含有X86和X86-64指令集
------------------------------------------------------------------

首先计算机的运行最核心的就是CPU,程序最终解释并运行也是靠CPU里面的指令来完成的。UEFI固件主要是由c写的,
然而任何程序不管采用什么高级程序设计语言编写的,都需要通过高级语言编译程序或者解释程序先翻译成 x86指令才可以被CPU执行。
UEFI固件也不会例外,不信的网友,请拔掉CPU看看能否通过UEFI启动efi文件.....



>::纯X86的CPU能否运行Windows/UEFI  64bit ??【不可以
假设你在使用纯X86的CPU的计算机上使用Windows/UEFI 64bit或者运行含有x86不能识别的指令的程序,那么我想是不可能运行成功的,
正由于这点,才有了X86-64指令集的问世,这个指令集包含了一些可以识别64bit需要的指令。



>::市面CPU能否运行Windows/UEFI 32bit ??【可以
再说到目前的CPU,它包含X86和X86-64指令集,却不能在UEFI运行Win8 x86 PE的原因,原因就出在UEFI固件的问题上,是它不支持,
这也是我首先同意说UEFI版本能够影响到PE的运行。但是我想现如今的机器,如果将UEFI 64bit 换成 UEFI 32bit固件的话,那么肯定能够UEFI下运行Win8 x86 PE。
因为CPU指令集是包含该系统运行所需要的所有指令的。

例1:
VM虚拟机新建一个Windows 8,UEFI固件32bit,我们运行Win8 x86,
成立条件:市面CPU能支持+系统32bit+UEFI 32bit
结果:可以支持win8 x86pe的运行,进入系统里面可以看到虚拟机的CPU包含的指令集和我们实机的指令集一模一样。
          符合我们说的只要CPU支持,当UEFI时32bit 时候,可以支持win8 x86pe的运行。
而我们目前的机器都不集成UEFI 32bit,不支持Win8 x86PE的启动,
          恐怕是从X64未来的发展的角度考虑的,而非CPU不支持..


例2:IA64系统下的nvrboot.efi(仅适合于:纯X64CPU,UEFI 64bit)运行于:市面CPU 行+UEFI 64bit
已成立条件:UEFI 64bit支持,CPU不支持(本楼尾可以下载nvrboot.efi做一下测试)

结果:无法运行,理论:CPU指令集不支持,其他都是浮云,该efi需要的一些指令只有纯X64的CPU才具备的指令集....

有这么一种情况:
如果我找到一台纯X86的CPU的机器,内存加到1GB,运行VM9 x86绿色版(我目前用的),那么我运行虚拟机新建Windows 8 X64,UEFI是64bit,那么能否UEFI启动win8PE x64 呢?
答:我没有条件实验,但不妨碍我猜测:我想即使UEFI固件类型和系统类型一样,假如没有CPU指令集的支持,那么一切都是浮云...


我最终认为CPU不支持的你无论如何都不可能支持启动(除非换CPU),CPU支持的你肯定能通过其他手段启动。


如果耐心看完这么长的论述的话,还坚持说:
win8 x86的PE想要UEFI启动只需要UEFI固件支持,和CPU没有任何关系的话,那我无话可说了,因为我都说完了.....

nvrboot.zip (46.35 KB, 下载次数: 40)
回复

使用道具 举报

发表于 2013-4-21 18:44:18 | 显示全部楼层
本帖最后由 2011hiboy 于 2013-4-21 19:01 编辑
2011hiboy 发表于 2013-4-21 14:54
win8pe x86 支持从UEFI启动,那么该计算机构架就必须是IA32的,IA32构架就是纯X86的CPU构架,搭配32bit系 ...


#已经回复,那是我的分析。虽然有点长,我还是认真分段了...
http://bbs.wuyou.net/forum.php?m ... &fromuid=396698
回复

使用道具 举报

发表于 2013-4-21 18:43:45 | 显示全部楼层
本帖最后由 2011hiboy 于 2013-4-21 19:02 编辑
hhh333 发表于 2013-4-21 16:58
我觉得fujianabc老大的说法是正确的,64位能够来,32位应该更加不在话下,BIOS方式两者都可以就是证明。只 ...


已经回复,那是我的分析。虽然有点长,我还是认真分段了...

PS:目前市面上的CPU包含X86和X86-64指令集,肯定可以支持32bit和64bit的系统,
然而我们BIOS可以双支持那是因为BIOS没有分32bit或者64bit,X86的指令集一直支持BIOS,而市面CPU能支持64bit的原因自然也是UEFI是64bit的,CPU能够执行其用到的指令。
不支持32bit的原因,自然是从发展的角度来说,X64比X86更具有潜力,厂家压根没有集成UEFI 32bit,所以不支持,我想加入能够在市面CPU的前提下,将UEFI 64bit 改为UEFI 32bit
那么肯定能支持X86的系统。

http://bbs.wuyou.net/forum.php?mod=redirect&goto=findpost&ptid=305291&pid=2760920&fromuid=396698
回复

使用道具 举报

发表于 2013-4-21 16:58:49 | 显示全部楼层
fujianabc 发表于 2013-4-21 15:57
这个和cpu架构没什么关系,是主板固件的事情。配32位UEFI的主板只能用32位系统,配64位UEFI的主板只能用6 ...

我觉得fujianabc老大的说法是正确的,64位能够来,32位应该更加不在话下,BIOS方式两者都可以就是证明。只是这些个无良商家想钱想疯了,弄的只支持64的UEFI,想强推64位,好象主要是intel主板在那里搞这些妖蛾子,如果两者都支持的话,可能大多数人就不会64位了,硬件软件厂商没得事做。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-3-29 17:11

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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