无忧启动论坛

标题: 低端和高端隐藏PE对弱UEFI启动的兼容性重大发现!请广泛测试, 弱UEFI启动惊喜! [打印本页]

作者: zds1210    时间: 2014-7-24 16:51
标题: 低端和高端隐藏PE对弱UEFI启动的兼容性重大发现!请广泛测试, 弱UEFI启动惊喜!
本帖最后由 zds1210 于 2014-10-1 22:29 编辑

对貌似不支持隐藏PE的弱UEFI启动再认识
第一节、问题来由
2014年7月中旬,我研究了隐藏PE对弱UEFI机子的不能启动的原因,有重大发现:1.对只支持U盘可见区的一台弱uefi机子(联想G480)测试,把数据区格式化为exfat,实现了U+隐藏和高端隐藏的Uefi启动;p大的分区表项,及3H大和无垠大的三区法,手术后也成功启动。
2.对另外两台(一劝杂牌,一台HP)不支持低端隐藏,支持高端隐藏和可见区的的uefi机子测试。遗憾的是,这台机子低端隐藏,数据区格式化为exfat并保持可见,结果uefi仍不成功;数据区格式化为exfat,物理顺序与分区表顺序要相一致,才成功。同时,在无忧启动论坛,有网友实测五台机子情况与此类似。
3但我想这种类型一定有更多的是改进的主板,大部分这类机子动手术后uefi一定会启动成功。果然无忧兄弟zw18621862在24楼实测一台机子,不支持U+低端隐藏,只支持可见区和U+高端隐藏UEFI启动,结果把U+低端隐藏数据区格式化为exfat也顺利实现uefi启动。。
至此,所谓有弱主板uefi不能启动隐藏的efi区的神话,慢慢可以得到彻底否定了。老旧的bios都可以识别的东西,已经算图形界面的uefi当然应该可以识别并启动。
原来,不是这些弱uefi不能启动隐藏uefi区,而是它查找efi区的顺序和方式有了点小问题,把数据区格式化为非fat格式,保持隐藏的efi区为唯一的fat区,基本上所有弱uefi机子能实现U盘隐藏的fat区的uefi启动,特别是高端隐藏。这项技术简单可行,可以广泛的应用于其它efi方案,如改进U+B+低端高端隐藏方案,如P大的分区表项,如H大和无垠大及其它老大的类似的三区法。




第二节、uefi启动测试方法
为了不把问题搞复杂,我们就用标准的U+高低端隐藏吧,只分两区;高手请自行用自己的PE测试就是了,其实论坛各位老大的PE都高度相似和统一了。

下载我全解开方案的维护版(6百M):http://pan.baidu.com/s/1mgr4JFi
或下载我的8pEx64 bios/uefi双启内核(下载8PE64eif20140805.iso,190M):
http://pan.baidu.com/share/link?shareid=1662760743&uk=201913327

然后用最新版的ultraiso分别以U+V2-Hdd低端隐藏,和高端隐藏写入两U盘中,
保持原来不动 ,直接用标准的U+盘,来测试看你的机子支持不支持uefi启动。
然后对两盘可见区做手术,看得到的可见区都格式化为exfat格式或ntfs格式,然后再玩EFI启动,看能不能UEFI启动。
最后总结几个问题:
1.标准的U+高端隐藏 、低端隐藏能不能支持UEFI启动?
2.做手术后的U+高端隐藏 、低端隐藏能不能支持UEFI启动?
是不是有重大发现?原来不支持隐藏区uefi启动的两类机子弱uefi主板,都支持了uefi启动,至少支持U+高端隐藏启动吧。。
原来 ,是uefi查找fat分区的方式和顺序,也影响兼容性。弄得有一些隐藏方式貌似不能uefi。把可见区格式为ntfs或exefat,应该可以大大提高uefi启动的兼容性。





第三节、分析强弱UEFI的启动原理
因为分配盘符的可见区是可以改变的 ,我们先统一一下U+B+隐藏的相关术语
低端隐藏:EFI或PE区放在U盘物理低端,而数据区放在物理高端,并给数据区分配盘符设置为可见(分区表项中,数据区可见在低端也叫前端,efi区不可见区在高端也叫后端,就是bootice显示的前后顺序;而物理高低端我们可以用分区工具如磁盘管理、diskgenuis和分区助手看到,下同);
高端隐藏:EFI或PE区放在U盘物理高端,而数据区放在物理低端,并给数据区分配盘符设置为可见(分区表项中,数据区可见在高端,efi区不可见区在低端,就是bootice显示的前后顺序);
没有动过手术的隐藏我们叫标准隐藏,把数据区弄过手术的隐藏我们叫改进的隐藏。
弱的uefi,他们脱胎于bios,我估计它们继承从物理低端到高端查找分区的原则;同时,应该看到,基于图形界面的程序,可见区是最容易找的,所以,他们查找的起点一定就先定位于可见区,这就是引发问题的根本原因。它们的弱,问题可以归结于它的笨,它的懒。
测试及分析我们都是用U+隐藏做标准,只分两区,简化问题
一、只支持标准fat可见区,不支持U+标准低端和高端隐藏。
我个人认为,这些主板uefi,他们查找UEFI启动区时,总是默认先找分配盘符的fat可见区(因为这个分区在分区表前端),如果可见区没有或非fat区,它才会找隐藏没有分配的fat区;并且,可以认为它很弱智而懒,只要找到一个fat区,就不会再向后找区,找到第一个fat区如果没有UEFI启动文件,就会报启动失败。所以,标准的高端隐藏和低端隐藏,它都是先找可见区这个时候也就是数据区,结果可见区找不到就启动失败。如果把可见区的fat格式变成非fat格式,他就会忽略可见区,直接找到另一个隐藏的fat区,所以改进后的低端或高端隐藏UEFI都能启动成功。这也要以解释,为什么把隐藏区设置成可见区,UEFI启动成功的原理。
二、只支持标准fat可见区和高端隐藏区,不支持标准低端隐藏。这类主板经实测貌似又分成两类
(一)不支持标准低端隐藏,也不支持改进的低端隐藏
实测效果是,当物理顺序与分区表顺序不一致,如低端隐藏,EFi物理在低端,不分配盘符设置为隐藏后分区表项在高端,启动时无uefi选项,数据区格式化为非fat16格式也不行;当物理顺序与分区表顺序一致,才会查找到uefi启动区,如高端隐藏。我们可以这样子认为,这类主板应该比(二)类聪明一些,认识到了物理顺序与分区表顺序可能不一致;但也是最懒,干脆就不作为了,凡物理顺序与分区表顺序不致,UEFI认为分区都不合法,就会忽略不一致的分区;只有一致,UEFI认为分区合法,才会按物理顺序(或分区表顺序)从低端至高端查找这些合法的分区。实测,低端隐藏把数据区格式化为exfat,仍找不到Uefi启动区。可以这样子解释,虽然格式为非fat分区,但因物理顺序与分区表顺序不一样,uefi忽略这两分区,所以,找不到低端隐藏的uefi。
考虑到这类主板貌似还是(二)改进型,理论上和实测这种机型占一定的比例,我们就定他为支持uefi机型中占10%吧。
(二)较强的不支持标准低端隐藏,但支持改进的低端隐藏
个人认为,主板这些主板uefi,他们查找UEFI启动区时,也总是默认先找分配盘符的fat可见区(因为这个分区在分区表前端),如果可见区没有或非fat区,它才会找隐藏没有分配的fat区;但致命的是,他们弱智在于,他们总以为分区表项与物理高低端顺序是一样,找到分区表项的可见区以后,他们总是按物理高低端顺序去查找其它隐藏的fat。所以,高端能找到,因为高端可见区在前,隐藏区后;而低端隐藏的隐藏区物理上隐藏区在前,可见区在后,于是它先找到可见区,然后按物理物理高低端顺序去查找其它隐藏的fat,结果可见区后面没有区 了,他们就误认为找不到uefi。如果把可见区的fat格式变成非fat格式,他就会忽略可见区,直接找到低端隐藏的fat区,而uefi启动成功(目前实测一例,这类有待于更多实机测试验证)。
以下引用p大原话:
我是这么猜测理解的,也算是一种假说:
有的主板认为分区表项应该是顺着排列的,先出现的分区表项对应的分区总是占据盘上靠前的空间。
如果后出现的分区表项对应分区空间反而靠前,就被认为非法。
它识别分区的算法里,记录当前分区起点的变量总是按递增的方式变化(简单),不保存遍历过的分区信息(简单),所以无从分辨是否与前面的分区表项有交叉。
当下一个分区起点不在上一个分区终点之后时,就担心有分区交叉,但要仔细确认是否有交叉又“累”。得记住前面分区的情况,或者回头再读取前面分区情况才能比较、判别。干脆就武断认为下一分区表项非法,更后面的分区表项可能也不用看了——这样编程简单啊。
程序员多是懒的,怎么省事怎么做。当然底层开发也受软硬件环境限制,不能花太多代码,只好从简。
假说成立的话,这种主板上,现在可以理解了:
1、U+隐藏情形,分区表中可见区表项在前,隐藏区表项在后,但对应空间却是可见区靠后,隐藏区靠前(隐藏区起点不在可见区终点之后)。这时主板只识别分区表项在前的可见区,就不继续了,认为隐藏区非法。
2、U+高端隐藏情形,分区表中可见区表项在前,隐藏区表项在后,对应空间也是可见区靠前,隐藏区靠后,这时主板按顺序识别两个区,相应有两个UEFI选项。
有一个区就有一个UEFI选项,不管其上有无EFI文件。因为按这种懒人风格,它懒得看分区上有无EFI文件
补充:fat分区在efi启动时被忽略,被忽略的分区不参与排序、不参与高低比较,uefi区成了唯一,所以,启动成功,就全部解释清楚了。

三、强UEFI,支持fat可见区、标准低端隐藏区和高端隐藏区。
个人认为,这些主板查找UEFI启动区时,也是默认先找分配盘符的fat可见区(因为这个分区在分区表前端),如果可见区没有或非fat区,它才会找隐藏没有分配的fat区;它聪明的地方在于,他认识到了物理高低端和分区表项的高低端顺序有不一致的地方,所以,他们就干脆不按照物理高低端而是按照分区表项的高低端顺序去一个一个查找fat区(貌似按照物理顺序去一个个查找也行),所以,不管你隐藏,分多少区,他都应该能找到UEFI区。
用P大话来说:支持多分区。很强,用diskgenius的分区浏览功能看,efi文件在哪些fat分区,那些fat分区就能启动。(这类机子8月10下午我就实测了一台宏基电脑)
四、支持多格式,包括ntfs格式
很先进,能支持非fat格式分区的uefi启动。例如连ntfs格式都行,估计其它方面也最强。
以上理论的是不是正确,高手们完全可以自己设计方案用B+多分区fat格式U盘的方法去慢慢验证。经过B+多分区的Uefi实验,一定能找到你的主板uefi启动弱的原因,也可以分析你的uefi主板强在哪里。

以上理论都是基于个人的理解的这样子的理论基础,uefi应该属于图形界面的东西,类似于win或linux环境,所以,识别一个隐藏的fat应该是没有问题的;出问题的关键是查找fat区方式和顺序上出了问题。你看,grub4dos是属于dos层次,都可以认识隐藏的fat区。如果这个前提成立,则不管是分两区,还是三区,四区;只要保留EFI区为fat16格式,只要保持物理分区顺序与分区表顺序一样,不管隐藏否,其它没有抹掉分区表项的区都格式为非fat区(exfat或ntfs),则UEFI启动成功基本可以达到百分之百;同一个U盘量产区,最好一个fat16的uefi区,不要搞多个uefi分区,多了查找起来问题就越多,efi启动兼容性越差。





第四节、bios/uefi双启方案兼容性分析

这也是我偶然发现这个问题后,然后对各个方案,包括U+的两区法,P大的三区法,H大的三区法进行全面测试后,都成功了;无忧论坛朋友们也帮助做了广泛测试,我才感觉这个不是个案,应该是普遍性的问题。至此,高兼容性的UEFI的隐藏PE启动方案解决了。考虑uefi对fat16格式的兼容性最好,考虑到UD对bios超强的兼容性,我个人,各位PE爱好者梦想中的,真正新老机子兼容,BIOS/UEFI双飞基本百分之百成功的方案理论上已经成功的建立了,真正一盘统一天下的时代来了——这个方案就是论坛以3H大和无垠大为代表的三区法和P大的分区表项法,再加上把可见区格式化为exefat和ntfs格式。
下面我们来分析各种bios/uefo双启方案的兼容性吧。
理论上,一区法兼容性最强,即论坛老大们提出的不折腾方案,即把U盘可见区保持fat格式,把8PEx64直接散开放在U盘可见区。但本方案致命的是,UEFI启动方面,大于4G大于4G的U盘,只能格式为fat32,UEFI兼容性比fat16要低一些。不信你看一下微软硬盘上的ESP分区都是fat16,而不是fat32。同时,uefi区是可见的,安全性太低了。Bios方面,不采用多重引导如UD主引导或U+V2主引导,有些老点的机子就启动不了。
再来分析一下两区法的。理论上讲,UD对bios的兼容性是最强的,所以,U盘分两区,前端为UD区,后端为标准的fat可见区,再在可见区里加一个支持efi的64位8PE,这样子就可以达到UEFI/bios双启,兼容性基本也是百分之百。但致命的是,这个方案,对于大于4G的U盘,只能格式为fat32,UEFI兼容性比fat16要低一些。
两区法还有一个U+V2高端隐藏,把数据区格式化为exfat格式,理论上uefi兼容性达百分之百,但考虑到U+V2不如UD强,bios兼容性就比UD法差一些。
所以,为了解决安全性问题,更重要的是解决UEFi区在大U盘里保持fat16格式来保证Uefi最佳兼容性的问题,三区法和分区表项法就必须了。
UD 三分区方法:把内核打包03PE 8PEx32和dos部署物理低端UD区,中间放数据区并格式为exfat并保持可见,8PEx64散开高端隐藏于fat16格式磁盘并激活。理论上,这种改进的高端隐藏eif,兼容性最好,考虑到ud对bios的超强兼容性,bios/uefi都可以达到百分之百的兼容性。
UD分区表项法: UD部署于物理,把UD区的8PEx64映射为低端隐藏的fat16区的uefi启动区,数据区放在物理高端并保持可见。p大的低端隐藏,默认情况兼容差一小点,但可以把efi区临时设为可见,达到以三区法相一致的UEFI兼容性。
U+深度隐藏分区表项法:与UD分区表项法类似,UD区变成U+深度隐藏区。这类因要保持bootpart挂载U+深度隐藏区,则数据区要保持fat格式可见并激活;数据区格式为非fat格式,或efi区设置为可见,bootpart挂载区就不是深度隐藏区。所以,这类UEIF兼容性与标准U+低端隐藏相一致。
唉,有时候,真理的发现,其实是偶然加必然的结果,真理往往是最简单的。UD加UEFI方案必火,U+深度隐藏加UEFI方案也很有前途,这正是我希望的。





第五节、最终总结供大家设计PE参考

一、关于bootpart挂载:它只能挂载fat格式磁盘,exefat或ntfs格式磁盘不能挂载;遇到两fat格式主分区时,挂载的盘不以低端或高端,也不以可见或不可见为标准,那个分区激活就挂载那个分区,这也是他的高明处。深度隐藏就复杂了,不分析了。
三、关于bios兼容性,p大和实测结果:低端隐藏>高端隐藏 个人也曾经总结,以easyboot做第一分区引导,低端隐藏>深度隐藏>高 端隐藏
三、最后关于uefi兼容性的初步结论:
1.兼容性:
U盘fat16单一分区(100%)>U盘fat32单一分区(99.9%)>数据区格式化为exfat的U+高端隐藏(99%)>数据区格式化为exfat的U+低端隐藏(90%)
2.UEFI文件放于fat32格式U盘,UEFI兼容性会下降。
3.UEFI要玩隐藏,最好的方案就是,把efi放在高端隐藏fat16格式区,并把可见的数据区格式为化exfat或ntfs,这种部署uefi兼容性基本为百分之百。
4.U+低端隐藏,把数据区格式化为exfat或ntfs格式,仍有一部分机子不能Uefi启动,可用bootice临时设置设置efi区可见,就可解决。
5.同一U盘量产区,多个uefi分区,理论上应该增加查找的困难,uefi兼容性会下降。
6.uefi区数据量产, U盘主控把usb-cdrom置于U盘前端比置于后端uefi启动兼容性较强;也可以把数据区格式为exfat来提高usb-cdrom区的uefi兼容性。





作者: zds1210    时间: 2014-7-24 16:51
本帖最后由 zds1210 于 2014-7-24 17:05 编辑

占一楼。测试材料用。
下载我全解开方案的维护版:
备用下载:http://pan.baidu.com/s/1mgr4JFi
然后用最新版的ultraisoU+V2-Hdd低端隐藏,和高端隐藏分别写入两U盘中,
保持原来不动 ,直接用标准的盘,来测试看你的机子支持不支持uefi启动。

然后对两盘可见区做手术,看得到的可见区都格式化为exefat格式或ntfs格式,然后再玩EFI启动。看能不能UEFI启动。
最后总结几个问题:
1.标准的U+高端隐藏 、低端隐藏能不能支持UEFI启动?
2.做手术后的U+高端隐藏 、低端隐藏能不能支持UEFI启动?

是不是有重大发现?原来不支持隐藏区uefi启动的两类机子弱uefi主板,都支持了uefi启动。
原来 ,是uefi查找fat分区的方式和顺序,也影响兼容性。弄得有一些隐藏方式貌似不能uefi。把可见区格式为ntfs或exefat,应该都可以uefi启动。
作者: 无垠    时间: 2014-7-24 16:52
期待!新技术新玩法出炉!
作者: 无垠    时间: 2014-7-24 17:46
哈哈,实验新发现:给HPY老先生的ISO合盘,换个独剑Z大加上支持深度隐藏代码的GRLDR,就可以u+zip隐藏支持zip启动的老机了。原来仅支持高端隐藏,即使做成u+隐藏在zip的老机上不能启动,注意是06年以前的老机,新机不限。
作者: pseudo    时间: 2014-7-24 17:55
嗯,这是一个办法,其本质是把可见区格为不支持uefi启动的格式,那么它在uefi看来就不算分区,等于去掉了该分区。
其后的第二分区(格式支持uefi启动的,例如fat)就成为第一分区了,不受原来第一分区的干扰了。按我的理论,这个新上任的第一分区肯定可以uefi启动。

原来虽然以高端、低端来叙述的兼容性,但我知道实质是分区的物理先后次序与分区表项信息登记先后次序的矛盾,低端隐藏是反的,高端隐藏是顺的,所以后者efi兼容性高。
现在楼主找到的方法实质上让非uefi支持格式的分区被忽略,相当于删掉某分区表项,从而解消了分区表项次序的矛盾。

这个应该具有普遍性,应该不用太多实证,我似乎从理论上已经知其所以然了。

这样处理原可见区后,ud里img映射的efi分区成为唯一可efi启动的分区,efi启动必成。
作者: 无垠    时间: 2014-7-24 17:59
pseudo 发表于 2014-7-24 17:55
嗯,这是一个办法,其本质是把可见区格为不支持uefi启动的格式,那么它在uefi看来就不算分区,等于去掉了该 ...

听P大一席话,好像知其然也知其所以然了
作者: zds1210    时间: 2014-7-24 18:20
pseudo 发表于 2014-7-24 17:55
嗯,这是一个办法,其本质是把可见区格为不支持uefi启动的格式,那么它在uefi看来就不算分区,等于去掉了该 ...

是啊,貌似高兼容性的隐藏型uefi方法找到了。看来得到p大前辈的支持, 这个理论一定是成功的。
这种方法简单可行,不破坏bootpart的挂载分区,保持efi隐藏区。且大部分老大的PE内核也支持exefat分区,和fat分区,ghost文件可以大少4G,好处多多。
还有,我实测p大的默认表项,从理论和实测上,都可以认为相当于U+低遄隐藏。但如果可见区格式为exefat,估计兼容性提高了不少,不能uefi启动的机子太少了。
现在的问题,是U+深度隐藏的问题,如果能这样子处理最佳,U+深度隐藏区保持在U盘前端,efi隐藏区和可见区放在中后端,同时保持 U+深度隐藏的引导,保持bootpart挂载深度隐藏区,把可见区格式化为exefat分区。这样子的兼容性也很好。现在的问题是,我们不能控制bootpart,貌似这样子一来就只能挂载后面两区的激活者。这个问题是比较难解决的,也只能让Ultraiso原作者去升级修正了。
目前对P大的U+深度隐藏3月30日的默认处理方式比较满意,保持U+深度隐藏的引导性,又保持了bootpart挂载U+深度隐藏区,但uefi兼容性从理论上和实测上,应该类似于U+低端隐藏。
作者: zds1210    时间: 2014-7-24 18:23
本帖最后由 zds1210 于 2014-7-24 18:25 编辑
无垠 发表于 2014-7-24 17:46
哈哈,实验新发现:给HPY老先生的ISO合盘,换个独剑Z大加上支持深度隐藏代码的GRLDR,就可以u+zip隐藏支持z ...


唉,是的,内核解开的PE,zip启动一直是一个大问题,nt5nt6引导,grub引导和外置srs加载,都是问题比较多。这些都 是前辈们的技术了,我只是运用了一下,解决了实际问题。对于grub,了解不深入,这方面应该多多向P大和不点大大学习一下。目前研究的比较多的是隐藏型PE启动的问题。目前比较感兴趣的是制作高兼容性的隐藏型 bios和uefi双飞方案。双飞很好玩,大家要多多玩下。
作者: pseudo    时间: 2014-7-24 18:42
最近zds1210兄弟发现可见区弄成exfat等格式有利于efi启动。我分析其实质是:一个分区弄成不支持uefi启动的格式(例如ntfs格式)后,uefi启动时会被忽略,仿佛无此分区。分区少了,例如只剩一个分区,就无高低之分了,于是无论低端、高端隐藏都可以uefi启动了。

总之,基本上不用纠结高端低端了。只需把8pe的efi目录所在区弄成支持uefi的fat格式,其它区弄成不支持uefi启动的格式就好了。

当然,如果支持uefi启动的格式的分区仍有多个,还是讲究高低之分的。
分区表项法并不限制8pe存放位置,可以放在低端也可放在高端。U+深度隐藏相当于藏在低端。我最近介绍了高端深度隐藏。

作者: zds1210    时间: 2014-7-24 18:46
回复无垠点评:当年U+高低端隐藏支持UEFI方案确实是糊涂提出来的,当年 U+B+隐藏技术我努力研究和推广,但成效不太,后来有了这个支持UEFI的切入点,U+B+技术才火起来了。
这几年来,深度隐藏类的UD和U+越来越冷,在各位老大特别是P大的努力下,貌似Ud和U+深度隐藏加支持Uefi的技术也慢慢成熟起来。如果现在解决隐藏型efi的兼容性方案真实有效,特别是UD加UEFI技术,我估计UD又要火起来了,就叫新UD和新U+深度隐藏吧。而深度隐藏U+,目前还需要ultraiso作者按照新技术新问题去改进,也会火起来的。我 就是喜欢深度隐藏类PE啊。
作者: zds1210    时间: 2014-7-24 20:55
我群群友实测效果图:

无标题.jpg (83.48 KB, 下载次数: 189)

无标题.jpg

作者: ljycslg    时间: 2014-7-24 22:05
和楼上一样,测试结果相同
当然用的是我的PE
http://pan.baidu.com/s/1qWjpjWS 密码:5i90
作者: yhhxlp    时间: 2014-7-24 22:12
这方法我早试过  三星的垃圾本本还是不认
作者: zds1210    时间: 2014-7-24 22:16
本帖最后由 zds1210 于 2014-7-24 22:19 编辑
yhhxlp 发表于 2014-7-24 22:12
这方法我早试过  三星的垃圾本本还是不认


换一个U盘试一下。
先U+到可见区试一下,然后U+低端,高端,并动一下手术,找出问题所在。
作者: zds1210    时间: 2014-7-24 22:33
ljycslg 发表于 2014-7-24 22:05
和楼上一样,测试结果相同
当然用的是我的PE
http://pan.baidu.com/s/1qWjpjWS 密码:5i90

用哪个的PE无所谓,关键问题是这种方案,对解决隐藏型的uefi启动兼容性有没有帮助。如果有帮助,我估计这种技术就会慢慢流行起来。
现在不缺少PE,缺少的是解决问题的新方案。
作者: zenws    时间: 2014-7-24 23:55
pseudo 发表于 2014-7-24 17:55
嗯,这是一个办法,其本质是把可见区格为不支持uefi启动的格式,那么它在uefi看来就不算分区,等于去掉了该 ...

P大正解啊,豁然开朗!
作者: 泰立信    时间: 2014-7-25 10:16
有一台笔记本电脑,型号为联想 Think Pad  E430,直接使用各大师的PE(均注明支持UEFI启动)在选择U盘启动时没有反应。该机器UEFI  BIOS  Version:H0ET92WW(2.52);日期为:2013-04-23;CPU是Intel core i5-2520M;配2GB内存;500GB机械硬盘。
该机器应该就是P大说描述的弱UEFI主板。在之前测试无垠的1402.2.iso+2M大FBA包,见:“奇思妙想,独辟蹊径,2M大FBA包,03pe网络版+8pex64网络版+DOS的合盘,BIOS/UEFI双启! - PE 讨论区 - 无忧启动论坛 - Powered by Discuz! http://bbs.wuyou.net/forum.php?m ... page%3D1&page=1”采用方法为先u+hdd+v2 高端隐藏(1402.2.iso),然后再写入fba,再用gd取消u盘可见区的活动状态。但是并未实现UEFI启动,拜读了独剑的帖子,将UD可见区格为NTFS分区COPY了EFI目录就能在那台电脑上启动UEFI了!
昨天下午见独剑在征集弱UEFI启动的机器,就使用了他提供的全解开方案的维护版:备用下载:http://pan.baidu.com/s/1mgr4JFi 使用了20140718无网络维护版.ISO。然后用最新版的ultraisoU+V2-Hdd低端隐藏,和高端隐藏分别写入两U盘中,保持原来不动 ,看机器支持不支持高端隐藏或低端隐藏的uefi启动。结果发现均不能启动!制作图如下:

然后对两盘可见区做手术,看得到的可见区都格式化为exfat格式或ntfs格式,然后再测试UEFI启动,制作过程:

结果均能进入UEFI启动菜单,其中win8 PE64位正常,而win8 PE 32位出现错误,如图:

这是UEFI版本不支持win8 32位造成。
就算是U+也能在弱UEFI机器上启动,关键是可见区采用exfat格式或ntfs格式!
原来,不是这些弱uefi不能启动隐藏uefi区,而是它查找efi区的顺序和方式有了点小问题。uefi查找fat分区的方式和顺序,也影响兼容性。弄得有一些隐藏方式貌似不能uefi。把可见区格式为ntfs或exefat,应该都可以uefi启动。
最后在5楼的P大出来做了说明,一切都豁然开朗了!
作者: zds1210    时间: 2014-7-25 10:19
本帖最后由 zds1210 于 2014-7-25 10:38 编辑
泰立信 发表于 2014-7-25 10:16
有一台笔记本电脑,型号为联想 Think Pad  E430,直接使用各大师的PE(均注明支持UEFI启动)在选择U盘启动 ...


明白就好了,我也是在偶然测试中,偶然发现,然后再慢慢分析原理,有所顿悟,感觉这个问题有普通性,不是个案。兴奋得一夜没有睡觉,第二天起来发帖子总结,还怕人家骂。其实问题的关键不在于U+B+,其实标准的fat分区,不管是隐藏还是不隐藏,理论上都应该可以让所有Uefi主板识别,关键是唯一,不要太多了,大多了,查找上就会出差,改天写个帖子总结一下我的看法。
唉,现在无忧骂人风气过度
作者: 无垠    时间: 2014-7-25 10:20
泰立信 发表于 2014-7-25 10:16
有一台笔记本电脑,型号为联想 Think Pad  E430,直接使用各大师的PE(均注明支持UEFI启动)在选择U盘启动 ...

看来我弄的单独efi目录还有点用。
作者: 泰立信    时间: 2014-7-25 10:26
无垠 发表于 2014-7-25 10:20
看来我弄的单独efi目录还有点用。

继续测试无垠PE:UD可见区格为exFAT或者ntfs可以不用复制efi目录也可以启动
作者: zds1210    时间: 2014-7-25 10:40
本帖最后由 zds1210 于 2014-7-25 10:43 编辑
泰立信 发表于 2014-7-25 10:26
继续测试无垠PE:UD可见区格为exFAT或者ntfs可以不用复制efi目录也可以启动


复制这efi目录到非fat分区,这步是根本没有必要的。因为标准的uefi只会查找U盘标准的fat分区上的UEFI引导文件,非fat分区,如exefat和ntfs一般都不能UEFI启动。上论坛UEFI版区看一下相关帖子,版主总结得不错。这个版主还是我当年当超级版主时候推荐给老大的。哈哈。
事实上,我也测试过分区表项法,以及H大提出的三区表项法,关键问题是一样的,动小手术就搞定弱UEFI启动。
作者: linli    时间: 2014-7-25 20:01
若硬盘多分割个可见的FAT32分区,对于弱启动的主板会不会也启动不了?
作者: zds1210    时间: 2014-7-25 20:47
linli 发表于 2014-7-25 20:01
若硬盘多分割个可见的FAT32分区,对于弱启动的主板会不会也启动不了?

貌似U盘分区与硬盘分区不同,
作者: zw18621862    时间: 2014-7-27 00:15
按楼主所说的办法成功启动UEF,我的主板是楼主所说的第二种

二、只支持标准fat可见区和高端隐藏区,不支持标准低端隐藏。个人认为,主板这些主板uefi,他们查找UEFI启动区时,也总是默认先找分配盘符的fat可见区(因为这个分区在分区表前端),如果可见区没有或非fat区,它才会找隐藏没有分配的fat区;但致命的是,他们弱智在于,他们总以为分区表项与物理高低端顺序是一样,找到分区表项的可见区以后,他们总是按物理高低端顺序去查找其它隐藏的fat。所以,高端能找到,因为高端可见区在前,隐藏区后;而低端隐藏的隐藏区物理上隐藏区在前,可见区在后,于是它先找到可见区,然后按物理物理高低端顺序去查找其它隐藏的fat,结果可见区后面没有区 了,他们就误认为找不到uefi。如果把可见区的fat格式变成非fat格式,他就会忽略可见区,直接找到低端隐藏的fat区,而启动成功(这类有待于实机测试验证)
作者: zds1210    时间: 2014-7-27 02:04
本帖最后由 zds1210 于 2014-7-27 10:27 编辑
zw18621862 发表于 2014-7-27 00:15
按楼主所说的办法成功启动UEF,我的主板是楼主所说的第二种

二、只支持标准fat可见区和高端隐藏区,不支 ...


可见区格式化为exefat后,低 端隐藏和高端隐藏efi都启动成功了嘛?要说清楚,特别是后面的问题,这个关乎到UeFI PE的设计。
不过楼主的意思,我也清楚了,标准的低端隐藏efi不成功,动手术后低端隐藏也EFI成功。
作者: zds1210    时间: 2014-7-27 13:09
糊涂兄弟在不在啊?
现在有一个重要的课题,就是研究隐藏型Uefi的兼容性。请加群214132206,请进入帖子:
http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1
作者: 无垠    时间: 2014-7-27 13:41
Z大总结的理论更条理更系统了。

我还是坚持我的方案,也符合这个理论,但更省空间:小FBA包+高端隐藏,BIOS/UEFI共享高端隐藏区pe核心文件及工具,制作方便、更新方便、换系统更方便!
作者: 七进七出    时间: 2014-7-27 13:55
zds1210 发表于 2014-7-27 13:09
糊涂兄弟在不在啊?
现在有一个重要的课题,就是研究隐藏型Uefi的兼容性。请加群214132206,请进入帖子:
...

见:http://bbs.wuyou.net/forum.php?m ... ge%3D1&page=101

“前不久做了一个体检,结果相当不乐观……

假如很长一段时间没看到我的身影,抱歉!不是糊涂狠心离开朋友们,而是有太多无奈……

致谢——无忧启动论坛,让我结识很多良师益友!

假如这一切只是一个梦,我也要在醒来之前在此重重划上一笔,证明我曾经来过……”

让我们祝糊涂将军早日康复、一切平安吧!
作者: zds1210    时间: 2014-7-27 15:27
无垠 发表于 2014-7-27 13:41
Z大总结的理论更条理更系统了。

我还是坚持我的方案,也符合这个理论,但更省空间:小FBA包+高端隐藏,B ...

其实三区法有很多玩法,外置部署也很灵活,外置直接放UD区,安全性强,但加载外置麻烦;放efi高端隐藏区也行,激活用bootpart挂载后加载外置,但数据安全性差一亲。
实践证明,无垠老大的三区法玩起来结构虽然相似,但玩法比3H老大简单,值得肯定;还有你grub的识别为zip加载散开的高端隐藏区的64位8PE测试在新机子中真正有效,但一部分只zip的机子还是有问题,我已经弄了个通用方案,到时发布新版时,请大家多多测试改进。
作者: zw18621862    时间: 2014-7-27 21:41
zds1210 发表于 2014-7-27 02:04
可见区格式化为exefat后,低 端隐藏和高端隐藏efi都启动成功了嘛?要说清楚,特别是后面的问题,这个关 ...

如老大所说,我以前只有U+高端隐藏可以启动,其他的都不行,按老大所说的,低端隐藏也成功了!
作者: zds1210    时间: 2014-7-27 21:46
zw18621862 发表于 2014-7-27 21:41
如老大所说,我以前只有U+高端隐藏可以启动,其他的都不行,按老大所说的,低端隐藏也成功了!

谢谢测试,这说明了我的方法,适用性是很强的。
作者: zw18621862    时间: 2014-7-27 21:54
zds1210 发表于 2014-7-27 21:46
谢谢测试,这说明了我的方法,适用性是很强的。

老大能不能看看我这个问题

http://bbs.wuyou.net/forum.php?m ... p;page=1#pid2952259
作者: zds1210    时间: 2014-7-27 23:29
本帖最后由 zds1210 于 2014-7-28 00:46 编辑
zw18621862 发表于 2014-7-27 21:54
老大能不能看看我这个问题

http://bbs.wuyou.net/forum.php?m ... 5&page=1#pid295 ...


我正想总结量产为cd-rom的兼容性问题。个人认为,你的机子量产区应该能uefi启动成功,因为他类似于cd的uefi的情况。关键还是uefi查找量产区的问题。
量产貌似有两种情况,一种是usb-cdrom区在磁盘物理前端,这种情况bios和uefi兼容性强一些;另一种usb-cdrom区在磁盘物理后端,这种情况bios/uefi兼容性弱一些。
貌似弱uefi还是继承了bios从前端到后端查找分区的习惯,且他们有点懒,第一个分区合法的Uefi分区找不到,他们会认为无efi区启动了。
我提出一个理论,把前面的fat区都格式化为exfat格式,后端的cd-rom区uefi有可能成功;也有可能不成功。同时,量产时候不要分区太多,最好两区就可以了,越多越复杂,弱uefi就找不到。

作者: 2011wall    时间: 2014-7-27 23:47
无技术流路过表示支持,一直在用独剑UDPE,很好用的说,赞一个
作者: zw18621862    时间: 2014-7-28 00:17
本帖最后由 zw18621862 于 2014-7-28 00:24 编辑
zds1210 发表于 2014-7-27 23:29
我正想总结量产为cd-rom的兼容性问题。个人认为,你的机子量产区应该能uefi启动成功,因为他类似于cd的 ...


老大,我必须要先量产,才能格式化,先格式化再量产,还不是一样吗?再说这个量产区怎么能看出来在磁盘的前面或后面呢?
作者: zds1210    时间: 2014-7-28 00:25
本帖最后由 zds1210 于 2014-7-28 00:34 编辑

用dg打开看,貌似可以看到。量产的情况还真没有研究过多。
作者: zds1210    时间: 2014-7-28 00:41
阿弥陀佛 很好的研究。不知百分比是如何得出来的?  
回复佛大:只是大概估计,应该不准。我个人的想法,有理论总比没有好;有数据总比没有数据好。以上数据,只基于这样子的理论基础,大部分uefi主板应该能够识别fat格式的U盘efi区 ,不管是可见还是不可见,高低端位置,只是查找方式和查找顺序方面,出了问题。所以,数据区格式化exfat分区后,EFI为唯一区,隐藏efi就有很高的兼容性;加上p大的理论和我的实测,个人认为,高端隐藏改进后uefi兼容性应该是相当高,基本上可以达到百分之百。
作者: zds1210    时间: 2014-7-28 10:27
本帖最后由 zds1210 于 2014-7-28 10:34 编辑

无垠点评:他这个机子是不必要的,但是有的机子,只要是隐藏的UEFI就不能启动。只能用FAT16上可见区的efi文件启动,这时就有必要了 。
既然已经把数据区格式化为非exfat分区,再放efi启动文件,系统不认这个非uefi区。当然没有必要复制。
有的机子,如果隐藏了真的启动f不了uefi,完全可以bios启动用bootice把efi区临时设置为可见,让他临时启动uefi一下。
作者: peterpanheaven    时间: 2014-7-29 01:30
初測.真有這麼回事呢^^
太好了.感謝z大.很棒的發現^^

作者: peterpanheaven    时间: 2014-7-29 01:34
七进七出 发表于 2014-7-27 13:55
见:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=309709&extra=page%3D1&page=101

“前不久做 ...

感情您正是糊塗兄啊...

還記得您說過.一切都是緣...
其實善緣惡緣.俱無分別.別太自傷了...

作者: q8155128    时间: 2014-7-29 02:24
就支持下吧,以后慢慢看看.........
作者: iboot    时间: 2014-7-30 10:47
强大。。。。。
作者: zds1210    时间: 2014-7-31 11:57
希望大家多多测试,对于弱uefi很有帮助。
作者: yhhxlp    时间: 2014-8-2 17:03
按老大的说明做的  没加其他东西
高端隐藏 电脑有efi启动菜单行  但不能启动  低端隐藏 无efi启动菜单  测试三星xe500t1c 失败
作者: zds1210    时间: 2014-8-2 20:20
yhhxlp 发表于 2014-8-2 17:03
按老大的说明做的  没加其他东西
高端隐藏 电脑有efi启动菜单行  但不能启动  低端隐藏 无efi启动菜单   ...

嗯。这说明你的电脑高端隐藏Uefi应该没有问题。再总结一下,高端隐藏Uefi应该没有问题。
作者: zds1210    时间: 2014-8-5 11:02
下载我的8pEx64 bios/uefi双启内核(190M):http://pan.baidu.com/share/link? ... 41&uk=201913327

作者: zhaj1164    时间: 2014-8-5 13:36
zds1210 发表于 2014-8-5 11:02
下载我的8pEx64 bios/uefi双启内核(190M):http://pan.baidu.com/share/link?shareid=412783341&uk=20191 ...

我的情况在z大的那个帖子说的不太明白,下面我再细说说:
我试了三台电脑,都是联想的,有台式、一体机、笔记本各一台,全部设为仅uefi启动,U盘数据区全都设为NTFS。结果如下:
1、带UEFI启动的UD全都不能启动,但把efi'设为可见,全都能启动。2、U+高端隐藏全都能启动。3、无垠老大的三区法能启动,z大您的三区法不能启动。
总结:
1、这三台电脑都属于认高端不认低端的估计
2、虽然U+都能启动,但是考虑到UD兼容性强,只要用finstools设为可见就能启动,用完就改回来也不麻烦,所以觉得UD的方式更兼容一些
3、z大您的三区法是不是有些问题?最新版本测试了还是启动不了。

作者: zds1210    时间: 2014-8-5 14:53
本帖最后由 zds1210 于 2014-8-5 15:15 编辑
zhaj1164 发表于 2014-8-5 13:36
我的情况在z大的那个帖子说的不太明白,下面我再细说说:
我试了三台电脑,都是联想的,有台式、一体机 ...


测试一下
我的8pEx64 bios/uefi双启内核(190M):http://pan.baidu.com/share/link? ... 41&uk=201913327

能不能说一下错误提示?我估计要不是iso格式有问题,原来U+时候提示bcd出错,这个U+时候不提示错误;要不就是uefi版的bcd有问题,感觉bootice编辑不靠谱。我改天有其它老大的包试一下。
作者: zds1210    时间: 2014-8-5 14:59
只说明我的uefi文件可能有问题,我换杏大的文件,套进去试一下。
不管怎么说,所谓不支持隐藏的Uefi这个说法得到否定了。
作者: zhaj1164    时间: 2014-8-5 15:57
本帖最后由 zhaj1164 于 2014-8-5 16:01 编辑
zds1210 发表于 2014-8-5 14:59
只说明我的uefi文件可能有问题,我换杏大的文件,套进去试一下。
不管怎么说,所谓不支持隐藏的Uefi这个说 ...


写入没问题,这个iso,我再和fba结合一下看能不能uefi启动,我说的UD和u+都是指的从论坛下的其他老大们的作品,z大的我只是测试了6位iso和fba结合三区法。
作者: 泰立信    时间: 2014-8-5 16:02
0804版启动方面不是问题,采用FBA文件。但我自己制作的移动硬盘竟然在E430上进03PE出现B4蓝屏,其他机器正常。
可能是转换器加普通硬盘连接不好的问题
作者: zhaj1164    时间: 2014-8-5 16:17
下载我的8pEx64 bios/uefi双启内核(190M):http://pan.baidu.com/share/link?shareid=412783341&uk=20191 ...,单独测试这个,uefi能启动,bios无法启动;而加上fba三区法还是无法uefi启动
作者: zds1210    时间: 2014-8-5 22:51
本帖最后由 zds1210 于 2014-8-5 22:53 编辑
zhaj1164 发表于 2014-8-5 16:17
下载我的8pEx64 bios/uefi双启内核(190M):http://pan.baidu.com/share/link?shareid=412783341&uk=20191 ...


我实测我的PE,三分区法兼容性最好,全隐藏UEFI/bios启动都很好,虚拟机和实测机子完美启动。
对了,玩三分区法时候,fba文件也是用配套的吧,如果这样子,问题似乎已经找到,我的fba里面含有分表区项的img,如果用fbinstool手工部署,会自动映射一个低 端的uefi,可能会影响高端的Uefi.建议删除img,或取消映射。
以后发布正式版时候,fba包和img分开,要玩的时候再组合,减少新手出错机会。
作者: zhaj1164    时间: 2014-8-6 10:06
zds1210 发表于 2014-8-5 22:51
我实测我的PE,三分区法兼容性最好,全隐藏UEFI/bios启动都很好,虚拟机和实测机子完美启动。
对了, ...

就是那个efi惹的祸,哈哈,现在好了,不过经历过这次,对三区法有了新的了解
作者: zds1210    时间: 2014-8-6 13:00
zhaj1164 发表于 2014-8-6 10:06
就是那个efi惹的祸,哈哈,现在好了,不过经历过这次,对三区法有了新的了解

就是了。在新版 中,我已经把img和fba包分离,到时候自行选择使用。否则,自动映射了,多分区了会影响uefi启动。
作者: zds1210    时间: 2014-8-10 03:26
把这几天的实测成果和研究心得汇总了一下,更新了帖子。希望大家多多测试。
作者: 2012wyqzm    时间: 2015-1-23 14:45
经过几台机器(新老机器都有)+各种型号的U盘的实际测试发现

1. FAT16根本无法启动efi,格成exfat也启动不了
2. FAT32+可见区格成NTFS,无论是低端还是高端,启动效果是一样的。

看来这个理论适用性还不是太强啊。
作者: zds1210    时间: 2015-1-23 16:13
注意2.O接口和U盘,3.0问题比较多。不能启动先检查原因。f

作者: zds1210    时间: 2015-1-23 16:14
先还是用标准的U十测试比较好。
作者: zds1210    时间: 2015-1-23 16:15
U十再改进。
作者: zds1210    时间: 2015-1-23 17:27
2012wyqzm 发表于 2015-1-23 14:45
经过几台机器(新老机器都有)+各种型号的U盘的实际测试发现

1. FAT16根本无法启动efi,格成exfat也启动 ...

你的帖子没有说清楚部署方式,所用的u盘是2.0还是3.0接口的。所以反映的问题无助于解决问题。
目前就实测结果来看U+高端隐藏把数据区格式为ntfs,efi启动兼容性很强,基本达到百分之百。
三分区法改进了bios兼容性 ,uefi兼容性也高端类似。
作者: 2012zhd    时间: 2015-1-23 17:47
论坛剑大您还是活跃的,其他大神怎么都不见了!
作者: 2012wyqzm    时间: 2015-1-23 23:33
zds1210 发表于 2015-1-23 17:27
你的帖子没有说清楚部署方式,所用的u盘是2.0还是3.0接口的。所以反映的问题无助于解决问题。
目前就实 ...

感谢回复!

2.0和3.0接口的U盘以及接口都有,尝试过标准U+及DG无损分区的非标准U+,就目前测试情况来看,FAT32(无论高端和低端)+可见分区NTFS在我这台所谓的弱UEFI的ThinkPad x230上,SONY笔记本电脑,ASUS笔记本电脑和一台兼容机上都可正常使用EFI启动,同时也都能正常BIOS启动, 反倒是FAT16基本上无法启动。可见分区格成exfat则是完全无法识别。
作者: zds1210    时间: 2015-1-23 23:40
本帖最后由 zds1210 于 2015-1-23 23:49 编辑
2012wyqzm 发表于 2015-1-23 23:33
感谢回复!

2.0和3.0接口的U盘以及接口都有,尝试过标准U+及DG无损分区的非标准U+,就目前测试情况来 ...


用2.0接口和U盘,标准U+低端隐藏或高端隐藏(fat16格式),然后把可见的数据区(不是PE区)格式成ntfs或exfat,再来测试。
网友已经有反映,usb3.0U盘量产,不能成功efi启动的情况;而usb2.0却正常。我估计usb3.0的efi启动问题比较多,不能怪到部署方法不对。

efi不能识别启动exfat或ntfs区。
严重怀疑你的部署。按照efi标准,fat16格式应该比fat32的eif兼容性强。
按照 我的理论,U+V2-hdd高端隐藏,可见区格式为exfat或ntfs,efi启动成功机率高。
最好在这个帖子中下程序包,一键U+V2 hdd高端隐藏或UD三分区,再来测试efi启动。U盘请使用usb2.0,接口注意也要用2.0。
http://bbs.wuyou.net/forum.php?m ... p;extra=&page=5
作者: 2011npwjm    时间: 2015-1-24 09:36
收藏一下,有时间再弄
作者: 2012wyqzm    时间: 2015-1-24 14:08
zds1210 发表于 2015-1-23 23:40
用2.0接口和U盘,标准U+低端隐藏或高端隐藏(fat16格式),然后把可见的数据区(不是PE区)格式成ntfs ...

谢啦!

适合的才是最好的。我主要用于无损操作,一定程度上,uiso的标准格式化目前是暂不能用的。
作者: zds1210    时间: 2015-1-24 21:06
本帖最后由 zds1210 于 2015-1-24 21:36 编辑
2012wyqzm 发表于 2015-1-24 14:08
谢啦!

适合的才是最好的。我主要用于无损操作,一定程度上,uiso的标准格式化目前是暂不能用的。


U+标准格式中,不是PE区的fat16问题,是数据区没有格式成exfat或ntfs才导致有一些电脑efi启动失败,我的联想就是如此。理论上和实测结果,fat16区efi启动兼容性强于fat32,不信看一下微软原版的esp分区是什么,就明白了。
当然,fat32PE区,加ntfs数据区,这样子对于无损调整分区大小操作,是方便一些的。这又另当另论。
为了实事求事的证明问题,我建议你还是严格按我进的改进型U+方法,做一次测试,再来下结论不迟。个人认为,fat32区可以启动efi,则fat16更应该无问题,都是向下兼容性。
作者: 2012wyqzm    时间: 2015-1-24 22:41
zds1210 发表于 2015-1-24 21:06
U+标准格式中,不是PE区的fat16问题,是数据区没有格式成exfat或ntfs才导致有一些电脑efi启动失败,我 ...

我确实尝试过启动分区格成fat16,可见分区改成NTFS,也不知道是不是我的机器的原因,就是无法启动,我的机器是ThinkPad x230
作者: 洛根丁    时间: 2015-2-7 02:24
学习了
作者: hlmwyqd    时间: 2015-10-5 11:09
低端隐藏也成功了!




欢迎光临 无忧启动论坛 (http://bbs.wuyou.net/) Powered by Discuz! X3.3