无忧启动论坛

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

[教程] [20190106]慧荣主控”免量产“自由划分多个驱动器(最多7个)

    [复制链接]
271#
发表于 2023-1-13 20:48:32 | 只看该作者
隐藏盘解密能持久化吗?
重新插拔后,总是会启动公开区。
回复

使用道具 举报

272#
 楼主| 发表于 2023-1-14 19:45:09 | 只看该作者
求道者 发表于 2023-1-13 20:48
隐藏盘解密能持久化吗?
重新插拔后,总是会启动公开区。

我印象中加密盘在重新拔插后,就应该重新解密的,不然就没必要加密了。
会启动公开区是什么意思?
回复

使用道具 举报

273#
发表于 2023-1-14 21:43:30 | 只看该作者
本帖最后由 求道者 于 2023-1-14 22:06 编辑
rgy 发表于 2023-1-14 19:45
我印象中加密盘在重新拔插后,就应该重新解密的,不然就没必要加密了。
会启动公开区是什么意思?

在我这边插拔U盘之后没有自动解密。
插拔U盘之后就复原了。
回复

使用道具 举报

274#
 楼主| 发表于 2023-1-15 21:53:55 | 只看该作者
求道者 发表于 2023-1-14 21:43
在我这边插拔U盘之后没有自动解密。
插拔U盘之后就复原了。

这是正常的。
回复

使用道具 举报

275#
发表于 2023-1-15 22:04:14 | 只看该作者

没救了,我的设想中,我希望用这个功能切换LUN0中的内容。
比方说,弄个USB-HDD然后弄个CD-ROM,USB-HDD启动不了就切换到CD-ROM。
回复

使用道具 举报

276#
 楼主| 发表于 2023-1-16 10:59:53 | 只看该作者
求道者 发表于 2023-1-15 22:04
没救了,我的设想中,我希望用这个功能切换LUN0中的内容。
比方说,弄个USB-HDD然后弄个CD-ROM,USB-HDD ...

很难实现,只要优盘一断电就会重回加密状态,这个方法不实用的。

而且据我的经验,LUN越多兼容性越差(不仅仅是PE启动兼容性,还包括其它电子设备读取数据的兼容性),我现在都是一个优盘一个LUN,还是USB-ZIP,少了很多烦恼。

还有就是All-In-One容易All-In-Boom,多备个优盘分工合作更佳。
回复

使用道具 举报

277#
发表于 2023-1-16 20:13:00 | 只看该作者
rgy 发表于 2023-1-16 10:59
很难实现,只要优盘一断电就会重回加密状态,这个方法不实用的。

而且据我的经验,LUN越多兼容性越差 ...

所以要切换LUN0的内容。
隐藏功能不能说是没用。
有用还是有用,就是开启隐藏功能之后,U盘就只有一个LUN了。
增强了兼容性。
用debug从3d改34,再改LUN的数量,U盘就又能显示多个LUN了。
多LUN的兼容性确实微妙,比方说苹果的UEFI就只认LUN0。
回复

使用道具 举报

278#
 楼主| 发表于 2023-1-17 12:10:27 | 只看该作者
求道者 发表于 2023-1-16 20:13
所以要切换LUN0的内容。
隐藏功能不能说是没用。
有用还是有用,就是开启隐藏功能之后,U盘就只有一个L ...

只有实践了才知道好用与否,期待你的好消息。
我帖子写这么多也就是抛砖引玉。
回复

使用道具 举报

279#
发表于 2023-1-17 19:04:06 | 只看该作者
rgy 发表于 2023-1-17 12:10
只有实践了才知道好用与否,期待你的好消息。
我帖子写这么多也就是抛砖引玉。

用上了。
能用。
回复

使用道具 举报

280#
 楼主| 发表于 2023-1-17 21:51:01 | 只看该作者

那就很不错!
回复

使用道具 举报

281#
发表于 2023-1-17 22:01:10 | 只看该作者

可惜LUN0不能切换内容,不然应该兼容性能更好。
回复

使用道具 举报

282#
发表于 2023-1-19 09:37:53 | 只看该作者
求道者 发表于 2023-1-15 22:04
没救了,我的设想中,我希望用这个功能切换LUN0中的内容。
比方说,弄个USB-HDD然后弄个CD-ROM,USB-HDD ...

像udisktoolbar这样的AP login切换程序,针对的是移动盘。
也就是public移动盘片/security移动盘片互相切换。

一般不支持固定盘(HDD)、光盘(CD)互切。

点评

不能持久化就屁用没有。  详情 回复 发表于 2023-1-19 18:25
回复

使用道具 举报

283#
发表于 2023-1-19 18:25:39 | 只看该作者
本帖最后由 求道者 于 2023-1-19 18:28 编辑
wuwuzz 发表于 2023-1-19 09:37
像udisktoolbar这样的AP login切换程序,针对的是移动盘。
也就是public移动盘片/security移动盘片互相 ...

不能持久化就屁用没有。
就算从命名来看也蛮奇怪了。
加密盘的块又不用不同的密钥加密。
完全没有意义嘛。

A/K470就是完全没法从USB-HDD启动吗?

回复

使用道具 举报

284#
发表于 2023-1-19 22:54:48 | 只看该作者
求道者 发表于 2023-1-19 18:25
不能持久化就屁用没有。
就算从命名来看也蛮奇怪了。
加密盘的块又不用不同的密钥加密。

K470已经到货,初步测试表明:

Phoenix BIOS原有的支持USB设备Fixed/removeable属性功能被裁减(或是神舟修改出的
BUG),只支持removeable属性。也就是说,USB-HDD的盘号应为0x80(DOS下C:),
现在被设成0x00(DOS下A)。USB-HDD可以启动,但是被当成软盘对待了。很显然,
这会造成问题。

点评

然后读软盘的分区PBR,不读MBR了?  详情 回复 发表于 2023-1-21 14:31
回复

使用道具 举报

285#
发表于 2023-1-21 14:31:01 | 只看该作者
本帖最后由 求道者 于 2023-1-21 14:33 编辑
wuwuzz 发表于 2023-1-19 22:54
K470已经到货,初步测试表明:

Phoenix BIOS原有的支持USB设备Fixed/removeable属性功能被裁减(或是神 ...

然后读软盘的分区PBR,不读MBR了?fbinst能抢救一下吗?
回复

使用道具 举报

286#
发表于 2023-1-21 21:49:51 | 只看该作者
求道者 发表于 2023-1-21 14:31
然后读软盘的分区PBR,不读MBR了?fbinst能抢救一下吗?

一、读2次。以我的3257 8G/3267 128G DOS启动盘为例。

第1次均读1个扇区,位置LBA=0;
第2次均读1个扇区,3257位置LBA=0X800。3267位置LBA=0X3F。

以上应该还是读MBR、PBR。

二、不需要fbinst抢救,因为成功启动到DOS,只不过盘符是A:。




点评

我不用DOS做启动盘啊。 没啥用啊。  详情 回复 发表于 2023-1-21 23:21
回复

使用道具 举报

287#
发表于 2023-1-21 22:17:34 | 只看该作者
多谢楼主分享!
回复

使用道具 举报

288#
发表于 2023-1-21 23:21:47 | 只看该作者
wuwuzz 发表于 2023-1-21 21:49
一、读2次。以我的3257 8G/3267 128G DOS启动盘为例。

第1次均读1个扇区,位置LBA=0;

我不用DOS做启动盘啊。
没啥用啊。
回复

使用道具 举报

289#
发表于 2023-1-21 23:53:50 来自手机 | 只看该作者
识别为盘符A:,说明U盘启动成功。如果对后续操作有影响,比如非得是盘符C:,可以试一试加载g4d的usb驱动(可惜是2.0的),驱动会将盘符A映射到C。
回复

使用道具 举报

290#
发表于 2023-1-22 10:48:51 | 只看该作者
求道者 发表于 2023-1-21 23:21
我不用DOS做启动盘啊。
没啥用啊。

您有点急躁了。

这里HDD下做DOS盘只是为了方便测试,验证BIOS-U盘固件层面启动没大阻碍,
并非只能用于DOS,当然也可以做G4D启动盘。我试了,用最新G4D 046A 2022-12版
成功。自然,通过G4D进一步启动微PE.ISO也是没问题的。

喜欢用DOS测试,理念有点类似于不点,只关注第1顺序启动控制权移交,
只要能进就OK,至于后续PE启动出问题,那是另一个话题,不太关注。
===========================================
题外话,这次K470有个意外收获,那就是phoenix式的ZIP取得进展。

通过对比发现:
K470 phoenix BIOS是阉割HDD,保留ZIP。
联想F31A同系phoenix BIOS则相反,保留HDD,阉割ZIP。

两种机型都保留了USB-KEY(KEY可以认为是ZIP的判定条件宽松版,而ZIP
则有更多的对固件参数要求。根据phoenix BIOS源码,phoenix式的ZIP
目前我们只能了解100MB/250MB这两种,容量太小了,这没什么实际
使用价值,只是作为学习Phoenix BIOS源码算法验证)




点评

fbinst+G4D能启动吗?  详情 回复 发表于 2023-1-22 13:52
回复

使用道具 举报

291#
发表于 2023-1-22 10:53:00 | 只看该作者
2011yaya2007777 发表于 2023-1-21 23:53
识别为盘符A:,说明U盘启动成功。如果对后续操作有影响,比如非得是盘符C:,可以试一试加载g4d的usb驱动( ...

YAYA老大来了,欢迎欢迎。机会难得,我汇报3件事:

一、楼上470机您说得对,通过usb --init可以改变drive number为0X81,映射到C。
至于驱动是USB2的,也不遗憾。因为470就是USB2机子,USB3用不上,刚好合适。
当然,USB2驱动加载时,是需要反复试的,470有3个USB2口、1个ESATA/USB2
混合口,不是每个口都能成功。
==================================================

二、我想重点讲第2件事---debug手段的完善。

在fbinst、G4D、G4E开发历史上,有个痛点:无法直接看到UEFI/BIOS----U盘间
会话,调试不得不绕圈子,以间接方式观察。

现在有办法缓解这个状况,杀鸡用牛刀,用硬件USB协议分析仪(抓包器+解析软件)
实现上电---枚举--G4D运行全流程观察。当然,没有INT13、UEFI文件协议这种
封装后的东西,分析仪观察到的是底层USB包,尤其是SCSI命令包。

像前面290#,我怎么知道read10命令读取位置是LBA=0、LBA=0X800、LBA=0X3F
这样的数据,我没能力分析获知呵,是分析仪的功劳啊。

这个话题,不知您有没有兴趣,没兴趣就不耽误时间了,有兴趣我再多说点。

=======================================================
三、在哪个帖子说过fbinst CHS代码似乎可以消除的结论。这是有实际根据支持的。

1.现代U盘固件和UEFI/BIOS情况。已经测试市场常见大量U盘固件,均支持
“获取总扇区数”命令,BIOS准确获得“总扇区数”参数,问题关键就解决了,
再加上现在U盘容量很大,反算(伪造)U盘的HS时,基本可以保证H=255、S=63
唯一性。

2.“获取固件CHS”命令(绝大部分U盘固件不支持),在特殊情况下BIOS会用到,
而现在我们几乎没什么机会触发BIOS内置的特殊情况。所以即使U盘固件不支持,
问题还不算突出。



回复

使用道具 举报

292#
发表于 2023-1-22 13:52:08 | 只看该作者
本帖最后由 求道者 于 2023-1-22 13:59 编辑
wuwuzz 发表于 2023-1-22 10:48
您有点急躁了。

这里HDD下做DOS盘只是为了方便测试,验证BIOS-U盘固件层面启动没大阻碍,

fbinst+G4D能启动吗?
上次IS903测试环境就是这个,启动不了。
回复

使用道具 举报

293#
发表于 2023-1-22 14:56:14 | 只看该作者
求道者 发表于 2023-1-22 13:52
fbinst+G4D能启动吗?
上次IS903测试环境就是这个,启动不了。

该有10多年没碰过fb了,语法全忘。
需要测试的话,请做个简单的FBA
包发上来,我在U盘上恢复一下试试。

点评

链接: https://pan.baidu.com/s/1dQoFyQA4TQ0UYAE4rp78Qw?pwd=qd1m 提取码: qd1m 复制这段内容后打开百度网盘手机App,操作更方便哦 --来自百度网盘超级会员v2的分享  详情 回复 发表于 2023-1-22 15:45
回复

使用道具 举报

294#
发表于 2023-1-22 15:45:15 | 只看该作者
wuwuzz 发表于 2023-1-22 14:56
该有10多年没碰过fb了,语法全忘。
需要测试的话,请做个简单的FBA
包发上来,我在U盘上恢复一下试试。

链接: https://pan.baidu.com/s/1dQoFyQA4TQ0UYAE4rp78Qw?pwd=qd1m 提取码: qd1m 复制这段内容后打开百度网盘手机App,操作更方便哦
--来自百度网盘超级会员v2的分享
回复

使用道具 举报

295#
发表于 2023-1-22 17:08:43 | 只看该作者
本帖最后由 wuwuzz 于 2023-1-22 17:51 编辑
求道者 发表于 2023-1-22 15:45
链接: https://pan.baidu.com/s/1dQoFyQA4TQ0UYAE4rp78Qw?pwd=qd1m 提取码: qd1m 复制这段内容后打开百度 ...

未启动成功,直接跳过进入本机硬盘win。但通过分析仪抓包知道,U盘是有启动动作的,
只不过,不是预期效果。情况如下:


一、开机后,BIOS第1秒读取了U盘MBR,LBA=0,内容应该是FB的引导扇。




二、之后我按了F10键BIOS启动项菜单,第43秒选了USB-HDD项,BIOS读取了U盘2GB处,
LBA=0X400000,应该是PBR的内容吧。之后启动软件没有什么动作、分析仪无数据。




三、第1分1秒,进入本机硬盘winXP USB驱动过程。





点评

这姑且算是fbinst的兼容性问题了。 Ventoy我也测试过,也是这样。 没法启动。  详情 回复 发表于 2023-1-22 20:46
回复

使用道具 举报

296#
发表于 2023-1-22 20:46:29 | 只看该作者
wuwuzz 发表于 2023-1-22 17:08
未启动成功,直接跳过进入本机硬盘win。但通过分析仪抓包知道,U盘是有启动动作的,
只不过,不是预期效 ...

这姑且算是fbinst的兼容性问题了。
Ventoy我也测试过,也是这样。
没法启动。
@longpanda
回复

使用道具 举报

297#
发表于 2023-1-23 08:32:54 | 只看该作者
本帖最后由 wuwuzz 于 2023-1-23 12:10 编辑
求道者 发表于 2023-1-22 20:46
这姑且算是fbinst的兼容性问题了。
Ventoy我也测试过,也是这样。
没法启动。


我做了ventoy盘测试了,跟FB的情况差不多。BIOS读了MBR,PBR,但启动不起来。

ventoy使用了exfat,老旧BIOS不一定
支持这种分区吧。

我看,格式搞的越复杂,越容易存在隐患。
就简简单单地用fat/G4D,可以正常启动
K470。


回复

使用道具 举报

298#
发表于 2023-1-23 16:52:46 | 只看该作者
现在有办法缓解这个状况,杀鸡用牛刀,用硬件USB协议分析仪(抓包器+解析软件)
实现上电---枚举--G4D运行全流程观察。

G4D现在是无法直接看到UEFI/BIOS----U盘间会话,这是底层的事。你有硬件USB协议分析仪,这不错。我以前使用过软件USB协议分析仪。这是一个不得以的办法。除此之外,在MBR或者PBR插入调试显示代码,这更麻烦,还的反编译,修改,再编译。

关于U盘量产为多个LUN,我认为用处不大,不会提高兼容性。
一般BIOS只启动第一个LUN。后面的LUN,启动后要么看不见,即便看得见,此时也只能作为数据盘使用,与启动无关。
要是BOIS的启动管理器特别强大,进入管理器可以显示U盘的USB-CDROM,USB-HDD等等选项,那就有价值了。可惜我没有见过。不知有人遇见过吗?

讨论U盘启动,我认为只要BIOS把控制权交给U盘的MBR代码,就是BIOS成功启动了U盘。这时可以说BIOS识别该U盘。经常看到有人不能启动U盘,就说BIOS不识别该U盘,是不严谨的。至于说为什么启动失败,那原因多了去了。情况太复杂,在这里限定可以启动到DOS,或者启动到G4D的菜单,就是启动成功。下一步启动操作系统失败,其原因不在这里讨论。

如果不能启动到DOS,或者不能启动到G4D的菜单,就需要看UEFI/BIOS----U盘间会话。
没有读MBR,就是真正意义上的BIOS不识别该U盘。
如果读了MBR,之后读的扇区不是PBR,说明是MBR代码的问题。以前有的代码判断分区ID,低版本采用CHS方式读,高版本采用LBA方式读。NT5判断分区尺寸,小于某个值采用CHS方式读,否则采用LBA方式读。采用CHS方式读,问题太多,必须避免。
如果读了MBR,之后读的扇区是PBR,大概率的成功的。

按以上思路,看看楼主启动失败的U盘,是哪种情况。

我感兴趣的是,你有两个U盘,分别是8G和128G,启动都识别为盘符A?
说明一下,有几个分区,分区类型,分区容量,MBR表,PBR的BPB参数。U盘固件的“固定/移动”设置位是什么?
回复

使用道具 举报

299#
发表于 2023-1-23 20:27:27 | 只看该作者
本帖最后由 wuwuzz 于 2023-1-23 20:44 编辑
2011yaya2007777 发表于 2023-1-23 16:52
G4D现在是无法直接看到UEFI/BIOS----U盘间会话,这是底层的事。你有硬件USB协议分析仪,这不错。我以前使 ...

欢迎YAYA老大回复,我仔细看了您的段落,在我认知范围内,一一作答:

一、软件USB协议分析,是OS过滤驱动。1是有些包抓不到;2是工作在OS环境下。
而在UEFI/BIOS启动环境,只有硬件USB协议分析仪能胜任(不依赖被监视UEFI/BIOS和被监视U盘)。
============================================================

二、Multi-LUN多驱支持。

UEFI/BIOS基本上都支持,很常见啊。一个LUN对应一个驱动器设备,这个设备
可能是磁盘驱动器(HDD\ZIP\FDD\LS120),也可能是光驱(CD\DVD)。哪个LUN作为
启动设备,要看用户选哪个BIOS的LUN菜单项了。比如:我的128G优盘(人为)做了
5个LUN:1HDD+2CD+3ZIP+4KEY+5KEY,选中哪个就从哪个设备启动。
当然,某一时点,只能选1个LUN做为启动设备。下面就是在问题机K470下的
BIOS菜单项



============================================================

三、LZ的例子,启动时看不到fbinst的菜单。但通过分析仪,可以看到BIOS读了MBR,
(随后又读了PBR,这应该是fbinst启动软件的代码在发挥作用,通过BIOS的read PBR动作
展现出来,且这两个read动作均被分析仪捕获)。具体内容可参考我在295#发的截图。
读的MBR/PBR内容解析,我不擅长,您应该一看便知读到的内容含义。

=============================================================
四、是的。8G/128G盘都被识别为盘符A。

这2个盘都被我做成多LUN了。用于测试的都是第一LUN/HDD/固定(介质)位/FAT分区,
容量是这样:
8G的优盘,第一LUN分了7.5G FAT32
128G的U盘,第一LUN分了114G(其中FAT分区16G)。

您是不是想知道,为什么被设定为Removeable、盘号0x00(DOS下A)?而不是Fixed。

因为我学习过流出的phoenix BIOS、AMI BIOS源码,知道其算法大概,也有同系phoenix BIOS
其他版本实体机对比。所以,我能判断主要原因不是上面提到的那些因素。那些因素是“一般、正常”
情况下的情形(尤其是phoenix BIOS,基本不关心MBR/PBR的情况,AMI BIOS则参考MBR/PBR因素)。

我在划分LUN的时候,就考虑到了这些,目的就是想让其成为HDD,也知道通常情况下,会
被设定为0x80(DOS下C)之类。但具体到神舟K470不是这样,而是人为裁减Fixed功能模块
(或修改BIOS时的失误BUG)造成。
回复

使用道具 举报

300#
发表于 2023-1-23 21:25:10 | 只看该作者
本帖最后由 求道者 于 2023-1-23 21:30 编辑

现在问题还是来到了读了MBR发生了什么。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-15 07:44

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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