无忧启动论坛

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

U 盘启动不支持多分区,请解决

[复制链接]
跳转到指定楼层
#
发表于 2018-1-9 18:03:14 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
grub4dos 区有人证实 winvblock 支持 “纯扇区序列” 虚拟盘(不带 --mem)。链接如下:

winvblock驱动基于扇区序列驱动(无需原硬盘有分区表和文件系统)
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=387254

他是在硬盘上操作。不知这个方法用在 U 盘上是否成功?希望 pseudo 能研究一下。

如果这一方法在 U 盘上能成功的话,那就有希望让 U 盘只有一个可见的 FAT32 分区用来启动,而另外一个深度隐藏的 NTFS 分区用来放置一些大文件,以及处理某些必须使用 NTFS 分区的情况——比如 VHD 文件必须位于 NTFS 分区。

请注意:某些电脑不支持多分区的 U 盘启动,它会卡死!必须让分区表只有一个 FAT 的表项,才能启动。用 winvblock 的技术,目的就在于此,即,为了解决这些电脑 “无法使用带有 NTFS 分区的 U 盘进行启动” 的问题。就是说,通过深度隐藏 NTFS 分区,让 U 盘能够成功启动。启动后,再用 winvblock 挂上深度隐藏了的 NTFS 分区,这样,进入 Windows 后,就可以正常使用 U 盘上的 NTFS 分区了。

我希望 pseudo 能有机会研究一下这个问题。

11#
发表于 2018-2-17 17:34:18 | 只看该作者
回复

使用道具 举报

10#
 楼主| 发表于 2018-1-27 19:38:15 | 只看该作者
报告一下,多分区 U 盘启动问题,彻底解决了。为了方便自己以后查阅,也方便别人搜索,现在就 “交叉引用” 一下吧,参见:

imdisk 支持 sector map 扇区映射
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=404433

顺便说,我已经测试,无论 “常规” 的 XP、Win7,还是 “PE” 版的 XP、Win10,用 imdisk 的方法,都完美支持 FAT 单分区 + NTFS “彻底隐藏” 分区的 U 盘。此处 “彻底隐藏” 是指将 NTFS 完全从分区表上抹掉,即,相应于这个 NTFS 分区的 16 字节分区表项全部清零。

至此,U 盘 “万能启动” 的方案总算实现了。而且具有这种分区结构的 U 盘,只需制作一次,永久受用,中途不需要任何 “添加、删除分区” 之类的复杂动作。那个 “彻底隐藏” 了的 NTFS 分区永远保持 “彻底隐藏” 的状态,永远不需要让它可见,永远不需要折腾。这得益于 imdisk 强大的功能,只需双击可见的 FAT32 分区上的批处理,即可 “随时需要,随时挂载” 隐藏的 NTFS 分区。顺便说,imdisk 是从其官网下载的最新版。PE 目前所带的 imdisk 版本也都可以用,不需要安装最新版。

尤其是 Win10 PE 无论在 BIOS 还是 EFI 模式都能启动成功,而且也支持上述 “单+隐” U 盘,这实实在在保证了 “一个 U 盘走天下,装机修机都靠它”——粗略预估,成功率应该在 99% 了吧,如果不是 100% 的话。


回复

使用道具 举报

9#
 楼主| 发表于 2018-1-16 18:26:53 | 只看该作者
pseudo 发表于 2018-1-16 17:42
印象中去年以来0PE没什么实质变动,失败率没理由起变化。
倒是怀疑近期g4d引入bug了,见3143楼:http://bb ...

跟 grub4dos 版本无关。我不曾更新 U 盘上的 grldr。

屡次发现 BIOS 偷偷更新,造成问题。而采用 DOS 是最不明智的做法了,属于 “明知山有虎,偏向虎山行”。

回复

使用道具 举报

8#
发表于 2018-1-16 17:42:16 | 只看该作者
印象中去年以来0PE没什么实质变动,失败率没理由起变化。
倒是怀疑近期g4d引入bug了,见3143楼:http://bbs.wuyou.net/forum.php?m ... &fromuid=195661

当然,我还没仔细看g4d作了什么变动,是否改了游戏规则需要pe随之调整。

总之,无论是g4d消除了bug,还是pe随之调整,最后上面所说的失败个例应该都能变成功,DOS在pe中又能苟延将就一段日子。

点评

跟 grub4dos 版本无关。我不曾更新 U 盘上的 grldr。 屡次发现 BIOS 偷偷更新,造成问题。而采用 DOS 是最不明智的做法了,属于 “明知山有虎,偏向虎山行”。  详情 回复 发表于 2018-1-16 18:26
回复

使用道具 举报

7#
 楼主| 发表于 2018-1-15 17:54:58 | 只看该作者
本帖最后由 不点 于 2018-1-15 18:05 编辑
pseudo 发表于 2018-1-15 16:44
嗯,是的。
0PE启动过程会在内存动态拼装PE所需文件(包括定制所需磁盘控制器驱动、单双核文件等),再引 ...

是的,技术前进了,grub4dos 下也能编程了。

如果你使用别人的 DOS 工具,你或许别无选择,只能进入 DOS。但假如你是自己写工具软件,你就没必要进入 DOS 了。

在 grub4dos 下直接编程,比进入 DOS 的情况好太多了。没有了 DOS 的 “添乱”,0pe 的启动成功率会高很多的。为什么这么说?因为 DOS 的添乱,不是 DOS 本身在添乱,而是 BIOS 在添乱,让 DOS 不适应。而且,假如这是主板制造商故意的,那就不可能有解,以后也是越来越乱。

使用 DOS 是得不偿失的。是时候该把 DOS 从 0pe 的启动过程中取缔了。

只有一种情况可以使用 DOS:如果进入 DOS 后,不需要回到 grub4dos 环境,这种情况可以使用 DOS。

那些 “经由 DOS 执行某个工具,然后又回到 grub4dos 来继续启动 Windows” 的情况,是最不划算的了。它添加了失败率,这是不划算的。


补充:

2017 年下半年最新版的 0pe,似乎比 2017 年上半年的 0pe,失败率高(是说进入 XP PE 的失败率高,而 7、8、10pe 没遇到失败)。

很多时候只能被迫进入 7、8、10pe。

如果这失败的情况中有 DOS 的因素在内,请去除 DOS,这样有可能大大增加成功率。

回复

使用道具 举报

6#
发表于 2018-1-15 16:44:43 | 只看该作者
嗯,是的。
0PE启动过程会在内存动态拼装PE所需文件(包括定制所需磁盘控制器驱动、单双核文件等),再引导setupldr.bin而进入PE。实际使用了两种方式:
(1)不按键情形,由grldr直接完成拼装并引导setupldr.bin;
(2)按空格或回车键情形,则会出0PE彩色菜单,然后进入DOS,在DOS下完成拼装,再用grub.exe返回grub4dos,引导setupldr.bin。
两种方式一般情况下等效,都无效的还没遇到过。

拼装操作有点复杂,早期grub4dos功能弱,前一种方式无法实现,就采用后一种方式,在DOS下完成拼装。
在DOS下,曾经使用汉字,那对中断影响更大,后来避开汉字了。

点评

是的,技术前进了,grub4dos 下也能编程了。 如果你使用别人的 DOS 工具,你或许别无选择,只能进入 DOS。但假如你是自己写工具软件,你就没必要进入 DOS 了。 在 grub4dos 下直接编程,比进入 DOS 的情况好太  详情 回复 发表于 2018-1-15 17:54
回复

使用道具 举报

5#
 楼主| 发表于 2018-1-15 11:34:28 | 只看该作者
谢谢 pseudo 的详细解答,很满意。这样我就明白了,技术上是可以实现的。目前我懒得去折腾,暂时采用我自己开发的 multimbr 启动代码,只用 FAT32 单分区,里面放 EFI 文件夹支持 EFI 启动。由于目前不使用大于 4G 的文件,也算是可以应付所有的情况。

顺便跟 pseudo 说说单双核 XP PE 上次为何(按空格键)加载在内存失败卡死,而不按空格键加载成功。

按空格键加载单双核的 XP PE 时,我看到屏幕闪过 grub.exe 从 DOS 启动时的探测恢复中断向量的画面。虽然它闪得快,但我还是清晰地看到它了。

我怀疑,正是由于经过了 DOS,才导致失败的。

不然的话,我很难想象出为何加载在内存反而失败死机,而不加载在内存却能正常进入桌面。

因此我怀疑,那是 DOS 污染了中断向量表,而 grub.exe 只能恢复一部分中断向量,不能恢复全部的中断向量。正是恢复不了的那些中断向量,造成了后续的 Windows XP 在启动半路上卡死。

那么,不经过 DOS 就不会污染中断向量表,也就不存在这个问题,所以能够正常启动到桌面。

因此,要点是,启动的全过程要尽量避免经由 DOS 这个途径。如果可能的话,要直接使用运行于 grub4dos 的程序,来取代那些 DOS 程序,这样就可避免使用 DOS。


回复

使用道具 举报

4#
发表于 2018-1-12 23:09:29 | 只看该作者
本帖最后由 pseudo 于 2018-1-12 23:11 编辑

幸好不按空格键,还能正常进入 XP PE 桌面,将就吧。



选win10Pe,进桌面后可尝试将ud里“日常数据区.img”挂载成W:盘(原理可能是基于imdisk的扇区序列映射功能)。
执行命令:
pecmd.exe moun-udm -udfs -udm- -udimg:日常数据区.img \\.\PhysicalDrive0 W:
pecmd.exe moun-udm -udfs -udm- -udimg:日常数据区.img \\.\PhysicalDrive1 W:
pecmd.exe moun-udm -udfs -udm- -udimg:日常数据区.img \\.\PhysicalDrive2 W:

注意:fbinsttool1.7(而不是1.6)弄的ud才支持大空间大文件,pecmd.exe的版本要够新,才支持fbinsttool1.7弄的ud。
我最新提供的(而不是之前提供的)下载(见我的签名处),所附带win8、win10pe包含的pecmd版本是可以的。
回复

使用道具 举报

3#
 楼主| 发表于 2018-1-12 12:37:24 | 只看该作者
自己答复一下,Win8、Win10 桌面,找不到虚拟的 NTFS 分区。我猜它没有 winvblock 驱动。

另外,向 pseudo 报告一些情况。

今天我在公司 dell 台式机试验按空格键将 0pe 加载到内存,居然卡死,黑屏,左上角有光标闪动,按 num lock 键,指示灯有反应。按 ctrl+Alt+delete 可以重启。

不按空格键,能正常进入 XP 桌面。

按空格键后,在出现的菜单上,无论选 单核还是双核,都卡死在同一个地方。选 Win8、Win10 PE,则能正常进入。

按回车键(不把 0pe 加载到内存),选单核或双核,照样卡死在同一个地方。选 Win8、Win10 PE,则能正常进入。



另外,在给别人装机的过程中,经常出现 XP PE 失败,无法进入,从而被迫使用 Win8、Win10 的情况。

因此建议:撤销 XP PE,彻底转向 Win8、Win10 PE。并希望 Win8、Win10 PE 能够安装 Winvblock 驱动。

回复

使用道具 举报

2#
 楼主| 发表于 2018-1-12 11:08:52 | 只看该作者
pseudo 的答复,正是需要的。

看来我的目标可以实现了。

我在启动 0pe 之前先执行:

  1. map   /NTFS.img   (hd)
  2. map   --hook
复制代码


进入 0pe 的 XP 桌面后,确实能够在资源管理器中找到虚拟的 NTFS 分区。

我想请问一下,如果是进入 Win10 桌面(从 BIOS 模式进入),那还能找到虚拟的 NTFS 分区吗?

回复

使用道具 举报

1#
发表于 2018-1-11 18:25:41 | 只看该作者

隐藏常用数据区

不点大人的意思是不是要在U盘弄一个分区,满足:
(1)能存放大于4GB的文件
(2)该分区的分区表项信息不出现在U盘分区表里
目的是隐藏分区,或用来对付不支持多分区 U 盘启动的古怪机器。
(3)必要时有办法用Windows资源管理器正常读写该分区
这三个条件?

这个似乎不难。三步搞定:

(1)按这个帖子做好可启动U盘:http://bbs.wuyou.net/forum.php?m ... &extra=page%3D1
最好还看一下该帖的70楼。

(2)在fbinsttool (必须1.7版,0PE带有,下同)界面里点“grldr菜单”对ud里grldr内置菜单进行修改。
只需在最开头加入一行并右键保存:
parttype (,1) || if exist /日常数据区.img map /日常数据区.img (hd) && map --hook

注意这里连扇区序列信息都不需要。

(3)在fbinsttool 界面里右键点击“日常数据区.img”文件,将其“从分区表移除”,收工。

移除之前,最好往“日常数据区.img”文件所映射的分区(当前用Windows资源管理器可看到该U盘分区)加入一个大文件(可大于4GB),以便验证。当然进PE后再加也行。

从分区表移除后,该分区在Windows资源管理器、甚至各种分区工具里都彻底看不到了,但用这U盘启动0PE(类似于带winvblk驱动的XP),进桌面后还能看到该分区并能正常读写其上大文件。

注:在fbinsttool 界面里右键点击“日常数据区.img”文件,随时可以“加入到分区表”或“从分区表移除”。
回复

使用道具 举报

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

本版积分规则

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

闽公网安备 35020302032614号

GMT+8, 2024-11-24 00:54

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

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