查看: 39677|回复: 261

[技术] 【技术实战】在exFAT分区中安装并启动Windows系统

 火.. [复制链接]
朱玛 发表于 2019-6-19 13:35 | 显示全部楼层 |阅读模式
快御云安全
本帖最后由 朱玛 于 2021-7-23 10:45 编辑
你知道吗?早在遥远的2010年,微软就已经引入exFAT启动了。
早期的时候微软只将exFAT文件系统应用于数据存储卷,后来随着Windows 8操作系统在启动技术的革新上为其带来了可启动exFAT卷特性使引导系统成为了可能。

作为全网研究exFAT启动各版本Windows的第一人,我曾经为研究这个专门写过一个测试帖:
http://bbs.wuyou.net/forum.php?mod=viewthread&tid=388226&mobile=no
这是Windows系统中的一个不为人知的隐藏功能,就连微软官方也从未提及过任何相关信息。在此之前大家普遍认为exFAT不能用作系统盘运行系统,但现在这都将成为历史。
早在多年前我就发现了并专门针对这个做了大量的研究与测试,其中解决了不少小问题但也遇到了一个始终无法解决的大问题,而就在前段时间我彻底攻克了exFAT启动Windows系统的最大难题,从而宣告正式将其应用于日常使用环境。
而这次我决定首次对外公开发布完整的超详细图文安装教程,从而揭开这一神秘而又惊奇的新功能。

个人日用主力机磁盘分区预览截图
在exFAT分区中安装并启动Windows系统.jpg

exFAT带来的新特性
优化卷位图管理及页块分配,提高闪存类存储介质读写速度
无卷日志纪录,减少闪存读写操作次数以延长其使用寿命
无权限管理机制默认即为最高权限,管理系统文件不再报权限不足错误
Windows To Go配合Mac和Linux等平台拥有更强的交互能力以及更为广泛的兼容性
允许分配更大的簇以提升IO性能
支持TFAT保护机制(仅Win8)
支持ECC校验和(仅元数据)

注意事项
exFAT启动仅支持Windows 8及以上版本的系统,Windows 7及以下版本的系统不支持exFAT启动不用再去试了。
exFAT安装并启动Windows系统建议配合固态硬盘或U盘等闪存盘使用,传统的机械硬盘除非特别有需要否则并不推荐。
为保证启动效率建议2016年及以前生产的电脑优先使用Legacy引导,2017年及以后生产的电脑优先使用UEFI引导,旧电脑UEFI引导启动时间普遍会比BIOS略长(新电脑则会正好相反,对于处在临界点的电脑需要自行测试才能确定结果),如果要使用UEFI引导建议关闭安全启动(虽然不关也能完成启动,但会显著降低启动效率)。
为保证启动效率以及系统版本兼容性,建议以传统模式安装系统,如果一定要使用VHD(X)模式安装系统(较慢)请参考:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=414354&mobile=no
对于无ESP单分区exFAT UEFI启动方案可参考此帖:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=409768&mobile=no
对于FAT12/16/32文件系统启动各版本Windows系统可参考此帖:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=414470&mobile=no
高版本的64位系统还需要手动替换一次已签名的exFAT驱动(适用于Win8 RTM到Win10 v1909,对于Win10 v2004及更高版本的系统则不再需要替换驱动),否则启动时间就会非常长(实测Win10不替换驱动开机两个小时,替换驱动开机20秒),对于32位系统则都没有这种问题,该问题的具体原因可参阅:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=414353&mobile=no
高版本的系统启动时间总会比低版本的系统略长,对于特别在意开机速度,对这个有强迫症的同学请使用低版本系统启动(最低7850)。
虽然exFAT在启动时间上可能会稍长一点,但在进入系统后的运行速度并不慢。
实际上这是Windows启动管理器对exFAT启动的优化不到位导致的,不过倒是可以用一种特殊方法来加速启动。
本帖以x64架构的平台为基准,提供的已签名exFAT驱动仅适用于x64系统,对于特殊的Win10 ARM64系统请使用专用驱动:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=415255&mobile=no
对于基于ARM32平台的Windows RT系统请使用专用驱动:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=420563&mobile=no
对于Windows PE系统盘X盘使用exFAT文件系统,请参考此教程:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=421466&mobile=no
对于使用ReFS文件系统启动各版本Windows系统可参考此帖:http://bbs.wuyou.net/forum.php?mod=viewthread&tid=426202&mobile=no

安装思路
由于微软的Sysprep一直都存在一个Bug,因此原版系统直接安装到exFAT分区在启动时会卡在系统OOBE界面报错无法完成初始化。
而正确的安装方法是先在NTFS分区中安装好系统并手动完成OOBE初始化阶段进入桌面,之后在WinPE下将整个系统打包备份为WIM或ESD文件后(不能使用GHOST)再解压释放到exFAT分区中启动即可。
对于已经安装好且现有能用的系统,可以直接在WinPE下备份WIM/ESD后将原NTFS卷格式化为exFAT再释放系统文件即可测试启动,如果遇到了问题也可以手动完全还原回测试之前的状态。

准备工具
MSDN原版系统下载:http://msdn.itellyou.cn[/url]
微PE工具箱下载:http://www.wepe.com.cn/download.html
64位系统专用exFAT驱动:
论坛直接下载: exFAT驱动.zip (1.77 MB, 下载次数: 88)

腾讯微云下载:http://share.weiyun.com/5Cw73QR

百度网盘下载:[url]http://pan.baidu.com/s/11DIj4vTvE6lA-Ah7NhZKdQ

操作步骤
1、下载要安装的Windows系统镜像,这里以使用最新的Windows 10 v1903 64位版本为例,如果已经下载可跳过此步。
建议选择最新版的Windows系统,它能够原生支持exFAT+VHD(X)启动。
01.jpg
2、下载Windows PE维护系统,这里以使用最新的微PE工具箱 v2.0 64位版本为例,如果已经下载可跳过此步。
建议选择最新版的微PE工具箱,它能够原生支持NVMe磁盘。
02.jpg
3、全部下载完成后会得到如图三个文件,注意不要把这些文件放在系统盘(以下均简写为C盘)内。
03.jpg
4、打开你下载的WePE.exe安装包文件,如果手头有可用的U盘建议右下角点击安装到U盘,没有的直接安装到硬盘即可,如果已经安装到硬盘或制作过U盘启动盘的可跳过此步。
制作启动盘时可根据自己的需要调整方案和设置,如果没有异议或看不懂的直接以默认方式一键安装即可。
04.jpg
5、在电脑开机时快速连按主板的快捷启动键显示选择带有U盘名的启动项并回车启动,或者通过硬盘开机启动菜单↑↓选择带有Windows PE的启动项并回车进入,如图现在将进入PE桌面。
对于U盘启动问题各主板厂商预设的快捷键不同,具体请自行百度或者自己挨个试。
05.jpg
6、找到你下载的.iso系统镜像文件,右键装载或者直接双击该文件即可快速挂载为虚拟光驱。
对于已经安装好且现有能用的系统可跳过6-13步,直接从第14步开始操作。
06.jpg
7、备份转移好C盘内重要文件,然后运行PE桌面上的“Windows安装器”,在“安装磁盘的位置”处确定选择为“C盘”,点击右侧的"F"按钮打开格式化窗口,确定“文件系统(F)”选择为“NTFS”,“分配单元大小(A)”选择为“4096字节”,点击“开始(S)”格式化等待完成后确定“关闭(C)”。
07.jpg
8、定位到“选择包含Windows安装文件的文件夹”项点击“选择”按钮,在弹出窗口中找到刚才挂载的“虚拟光驱盘符:\sources\install.wim”文件并点击“打开”按钮完成选择。定位到“选择引导驱动器”项点击“选择”按钮将弹出打开窗口,对于Legacy+MBR组合需找到“活动分区”(一般为C盘)并点击“选择文件夹”按钮完成选择;对于UEFI+GPT组合需找到“ESP分区”(运行WinNTSetup后自动挂载出来的盘)并点击“选择文件夹”按钮完成选择。定位到“安装磁盘的位置”项点击“选择”按钮,在弹出窗口中找到“C盘”并点击“选择文件夹”按钮完成选择。在选项区域中点击“版本:”下拉菜单根据需要自行选择,这里将以“Windows 10 专业版”为例,选择好后如果检查了没有问题就点击“开始安装”按钮继续下一步操作。
对于“优化调整》》》”等其他选项懂的可以自行设置,不懂的则不要设置。
08.jpg
9、如图将弹出“都准备好了吗?”提示框,此时无特殊情况一般不修改设置直接点击“确定”按钮即可。
09.jpg
10、请耐心等待“应用Windows映像文件”绿色进度条走满,此步所需时间视电脑配置高低而定。
10.jpg
11、当弹出“已完成!”提示框时直接点击“重启”按钮即可,如果此时系统不能重启请手动打开“开始菜单”并点击“重启”按钮完成重启操作。
记得拔出U盘等不必要的设备~~
11.jpg
12、请耐心等待系统OOBE阶段初始化完成,并自行完成进入桌面之前的配置工作。
12.jpg
13、当成功进入系统桌面后稍等一会即可重启再次进入WinPE系统,但我强烈建议在这期间先自行优化一些系统设置(如WU打齐更新补丁和预先安装好各运行库以及个人常用软件等)再重新进PE。
13.jpg
14、进入PE系统后解压下载的“exFAT驱动.zip”压缩包文件,然后根据你安装的系统版本选择并打开对应的文件夹(这里为19H1 RTM即对应版本18362),再将其中的“exfat.sys”文件复制粘贴到“C:\Windows\System32\Drivers”文件夹内并替换掉原文件。
注意此操作仅适用于安装的是64位系统(该操作为核心步骤必做,否则系统启动时间将会非常长),如果安装的是32位系统请跳过此步。
补充:微软已在Win10 20H1及更高版本的系统中为exfat.sys加入了内置数字签名,对于这些版本的32位和64位系统都不再需要替换驱动请跳过此步。
14.jpg
15、点击并打开 开始菜单→所有程序→备份还原→WIM映像处理工具。
这里以使用WimTool为例,对于处理WIM/ESD文件也可以使用Dism或Dism++等工具完成操作。
15.jpg
16、点击“新制和追加”选项卡,在“选择要制作成WIM映像的源目录”处点击“浏览”按钮,选择“整个C盘”并点击“确定”按钮。在“选择保存WIM映像的文件名”处点击“浏览”按钮,选择点击“除C盘外”的其他盘可在任意目录输入自定义文件名并点击“保存”按钮。在选项[1]区域中的“压缩类型”下拉菜单选择为“最大压缩”。在选项[2]区域中的四个“文本框”内可以自由设置备注信息或者直接留空即可。选择好后如果检查了没有问题就点击“新建映像”按钮继续下一步操作。
注意对于压缩类型选项请根据实际情况量力而行,该操作对处理器的性能要求较高,如果电脑配置较低此项耗时会比较长,为保证最佳效率我个人推荐:酷睿i9/i7选择最大压缩;酷睿i5/i3选择快速压缩;奔腾/赛扬选择没有压缩。
16.jpg
17、请耐心等待WIM映像打包封装完毕,此步所需时间视电脑配置高低而定。
17.jpg
18、当绿色进度条为“100%”并在提示信息框内显示“制作映像文件:完成”时即可进行下一步操作。
18.jpg
19、点击并打开 开始菜单→命令提示符,注意空格输入“Format C: /FS:exFAT /Q /A:4096”不包含引号并按下Enter回车键,当提示是否继续格式化时按下“Y”键并回车,当提示设置卷标时可自行设置或直接回车留空,当提示格式化完成信息后此时C盘已成功格式化为exFAT文件系统。
这里以系统自带的CMD命令行将本地磁盘格式化为exFAT为例,对于此操作也可以直接使用DiskGenius分区工具4.9以上版本实现以exFAT文件系统格式化硬盘,其中分配簇大小建议选择为4096字节。
19.jpg
20、回到WimTool,点击“挂载和解开”选项卡,在“选择要挂载或解开的WIM文件”处点击“浏览”按钮,选择之前保存好的“WIM映像文件”并点击“打开”按钮。在“选择挂载或解开的目标文件夹”处点击“浏览”按钮,选择“整个C盘”并点击“确定”按钮。选择好后如果检查了没有问题就点击“解开映像”按钮继续下一步操作。
20.jpg
21、如图所示如果弹出“选择是否继续解开WIM映像”对话框则点击“是(Y)”按钮以继续操作。
21.jpg
22、请耐心等待WIM映像解包释放完毕,此步所需时间视电脑配置高低而定。
22.jpg
23、当绿色进度条为“100%”并在提示信息框内显示“解开映像文件:完成”时即可进行下一步操作。
23.jpg
24、点击并打开 开始菜单→扇区小工具BOOTICE。
这里以使用Bootice为例,对于编辑BCD文件也可以使用BcdEdit或EasyBCD等工具完成操作。
24.jpg
25、点击“BCD编辑”选项卡,在BCD文件区域中点击“其他BCD文件(O)”单选框,然后点击右侧的“...”按钮或者在自动弹出的打开窗口中找到BCD文件位置并点击“打开”按钮完成选择,对于使用Legacy引导其BCD文件位置通常为"C:\Boot\BCD"(需要显示隐藏的系统文件才能看到);对于使用UEFI引导其BCD文件位置通常为“ESP:\EFI\Microsoft\Boot\BCD”(需要运行一次WinNTSetup自动挂载出隐藏的ESP分区才能看到),然后点击“智能编辑模式(C)”按钮将弹出BCD编辑窗口。在【启动设备】区域中确定设备类型为“分区”,在“启动磁盘”下拉菜单中选择“C盘所在的磁盘名”,在“启动分区”下拉菜单中选择“系统所在的分区”(即选择C盘),对于其他设置懂的可以自行修改,不懂的则不要修改,调整完成须点击“保存当前系统设置(S)”按钮后再退出。
25.jpg
26、重启测试等待系统成功启动到桌面后打开这台电脑,右键C盘点击属性,此时看到文件系统为exFAT,至此大功告成!
26.jpg

多版本系统测试启动截图
exFAT+传统模式启动最新版Win10 v1903 x64
截图20190505000530.jpg

exFAT+VHD模式启动最新版Win10 v1903 x64
截图20190505123743.jpg

exFAT+Legacy启动初版Win10 v1507 x64
截图20190504221526.jpg

exFAT+Legacy启动Win8 8400 x86
截图20170612145454.jpg

exFAT UEFI+Secure Boot启动Win8 8400 x64
截图20190505161657.jpg

exFAT UEFI启动Win7 7850 x86
截图20190106145502.jpg

exFAT启动Win8 RTM
截图20190922103055.jpg

exFAT启动Win8.1 RTM
截图20190922194037.jpg

exFAT启动Server 2016
截图20190930140232.jpg

exFAT启动WES8
截图20190930183548.jpg

exFAT启动WinRT8.1
截图20200107000830.jpg

exFAT+WIM启动WinPE
截图20200723194605.jpg

exFAT启动Win10Team
截图20201210011110.jpg

exFAT启动Win11
截图20210628164436.jpg

补充:
顺便测试了通过触发exFAT写保护卷处于只读状态时系统还能启动到桌面也没报错,系统中的一些程序也能正常打开,说明Windows是可以在只读介质或分区中运行的,只不过在重启后和RAMOS一样所有的设置都不会保存。
截图20181227021603.jpg

更新exFAT系统盘兼容性表格:
支持作为系统盘的文件系统汇总表.jpg

笔记:
录制的Windows To Go+exFAT启动简易测试视频:

评分

16

查看全部评分

朱玛  楼主| 发表于 2019-6-19 13:44 | 显示全部楼层
本帖最后由 朱玛 于 2021-7-23 10:36 编辑

注意不要将原版系统直接安装到exFAT分区中,否则如图系统会卡在OOBE界面报错无法完成初始化。
截图20190622194427.jpg
如果一定要直接安装到exFAT分区中的话,则必须要通过修改注册表键值的方式来跳过OOBE阶段。但无特殊情况强烈不建议这么做,这样会影响系统的完整性。
NT6+系统跳过OOBE的操作方法:
如图当弹出“Windows无法完成系统配置”对话框时,按下“Shift+F10”键可快速打开CMD命令提示符,输入“regedit”不含引号后按下“Enter回车键”打开注册表编辑器,对于有些版本的系统在OOBE界面不显示鼠标指针那就只能盲点了。
截图20190622194652.jpg
如图依次展开定位到“HKEY_LOCAL_MACHINE\SYSTEM\Setup”项,将下图所有的“REG_DWORD”类型键值逐个“双击”打开编辑框全部输入“0”并点击“确定”按钮完成修改。
截图20190622195202.jpg
如图回到“命令提示符”窗口中注意空格输入“net user Administrator /active:yes”不含引号并“回车”提示命令成功完成,此时可在“安装Windows”报错对话框中点击“确定”按钮重启系统即可成功跳过OOBE。
截图20190622200047.jpg
如果后面启动时卡住了可尝试多重启几次可能会解决
回复

使用道具 举报

WrongREqia0 发表于 2019-6-19 14:10 | 显示全部楼层
谢谢分享。然而exFAT老有掉盘问题
回复

使用道具 举报

头像被屏蔽
vanlentz 发表于 2019-6-19 14:23 | 显示全部楼层
提示: 作者被禁止或删除 内容自动屏蔽
回复

使用道具 举报

缘来此景 发表于 2019-6-19 14:40 | 显示全部楼层
本帖最后由 缘来如此遇好人 于 2019-6-19 22:58 编辑

进来学习一下~~~~但发现这个:
1.png

点评

误报,具体原因请看该帖12楼和29楼的回复。 https://bbs.pcbeta.com/viewthread-1820335-1-1.html  发表于 2019-6-20 22:22
回复

使用道具 举报

rubycon 发表于 2019-6-19 15:22 | 显示全部楼层
这个微软都未提及的 exFAT 启动 windows 功能,你是怎么发现的?

点评

其官方没有提及,其它管道就另说  发表于 2019-6-19 18:43
回复

使用道具 举报

rubycon 发表于 2019-6-19 15:23 | 显示全部楼层
WrongREqia0 发表于 2019-6-19 14:10
谢谢分享。然而exFAT老有掉盘问题

据说 exFAT 仅适用于 U 盘、存储卡等?
回复

使用道具 举报

sasterbbindar 发表于 2019-6-19 15:38 | 显示全部楼层
我对exFAT分区的理解是:又想磁盘兼容性强,又想使用单个超4G文件存储的
回复

使用道具 举报

zhengzwq 发表于 2019-6-19 15:41 | 显示全部楼层
有什么优势?
回复

使用道具 举报

朱玛  楼主| 发表于 2019-6-19 16:02 | 显示全部楼层
WrongREqia0 发表于 2019-6-19 14:10
谢谢分享。然而exFAT老有掉盘问题

这类故障请从硬件上找原因,使用质量不过关或存在技术缺陷的存储设备都可能会引发掉盘等连锁反应。
回复

使用道具 举报

朱玛  楼主| 发表于 2019-6-19 16:03 | 显示全部楼层
vanlentz 发表于 2019-6-19 14:23
exFAT把我数据搞掉过一次之后,除了U盘再也不用了。现在Windows/Linux/macOS都支持NTFS,没必要纠结了。

使用多年从未有过数据丢失现象,且非常稳定没有报告故障。
不正确的使用方式,包括但不限于使用劣质的存储设备、未正确弹出随意拔插设备以及错误的磁盘维护方法都可能会影响数据存储的稳定性,论良好使用习惯的重要性。
回复

使用道具 举报

朱玛  楼主| 发表于 2019-6-19 16:56 | 显示全部楼层
rubycon 发表于 2019-6-19 15:22
这个微软都未提及的 exFAT 启动 windows 功能,你是怎么发现的?

那我就简单说一下吧,不过说出来你有可能会不相信。

当时我发现了很神奇的一点就是从Win8开始格式化出来的exFAT卷在DBR扇区都默认带有BOOTMGR的PBR了,这也就意味着微软正式将exFAT文件系统用于可启动卷支持。
截图20190619161525.jpg
然后我就把Win8的bootmgr给分离出bootmgr.exe主体文件再用16进制编辑器翻了翻又发现了一段用于读取EXFAT元数据的代码,而这在Win7系统中都是没有的。
截图20190619161542.jpg
最后我再把Win8的winload.exe也放进去比较分析发现也多了一段用于读取EXFAT元数据的代码,而这在Win7系统中也都是没有的。
截图20190619161559.jpg
好了,分析到这里基本也就全都明白了,既然从Win8开始微软有意把用于启动系统的文件都加入了识别exFAT分区的支持,那么即使不用试也能知道exFAT启动Windows系统是完全可行的。

评分

2

查看全部评分

回复

使用道具 举报

rubycon 发表于 2019-6-19 16:58 | 显示全部楼层
sasterbbindar 发表于 2019-6-19 15:38
我对exFAT分区的理解是:又想磁盘兼容性强,又想使用单个超4G文件存储的

就是 FAT64 文件系统,支持单个文件大于 4GB
回复

使用道具 举报

朱玛  楼主| 发表于 2019-6-19 17:07 | 显示全部楼层
rubycon 发表于 2019-6-19 15:23
据说 exFAT 仅适用于 U 盘、存储卡等?

不,包括固态硬盘在内几乎所有的闪存存储介质都可以使用exFAT,而且你甚至也可以在传统的机械硬盘上使用exFAT,虽然这不大可能会提供太大的益处。
回复

使用道具 举报

gnxcj 发表于 2019-6-19 17:08 | 显示全部楼层
很厉害,收藏了。
回复

使用道具 举报

subaobao_ok 发表于 2019-6-19 17:10 | 显示全部楼层

   按照这个思路,我能不能把移动硬盘格式化成exFAT格式,然后安装win10系统,指定引导。然后在其他机器上加入引导,进入系统,安装驱动。这样一个系统两台电脑…… 不知道可否实现   
系 统 : W 1 0 - L T S C 转 企 业 版 G 【1 8 0 9 - 1 7 7 6 3 . 5 2 9 】
回复

使用道具 举报

yeacy01 发表于 2019-6-19 17:32 | 显示全部楼层
技术贴!然而意义何在

评分

1

查看全部评分

回复

使用道具 举报

朱玛  楼主| 发表于 2019-6-19 17:33 | 显示全部楼层
subaobao_ok 发表于 2019-6-19 17:10
按照这个思路,我能不能把移动硬盘格式化成exFAT格式,然后安装win10系统,指定引导。然后在其他机器上 ...

当然可以,这就属于Windows To Go的范畴了。
回复

使用道具 举报

rubycon 发表于 2019-6-19 17:34 来自手机 | 显示全部楼层
subaobao_ok 发表于 2019-6-19 17:10
按照这个思路,我能不能把移动硬盘格式化成exFAT格式,然后安装win10系统,指定引导。然后在其他机器上 ...

win to go,不需要这么麻烦
回复

使用道具 举报

subaobao_ok 发表于 2019-6-19 17:39 | 显示全部楼层
rubycon 发表于 2019-6-19 17:34
win to go,不需要这么麻烦

你试验过吗?
回复

使用道具 举报

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

本版积分规则

小黑屋手机版联系我们

Copyright © 2005-2025 PCBeta. All rights reserved.

Powered by Discuz!  CDN加速及安全服务由「快御」提供

请勿发布违反中华人民共和国法律法规的言论,会员观点不代表远景论坛官方立场。

远景在线 ( 苏ICP备17027154号 )|远景论坛 |Win11论坛 |Win10论坛 |Win8论坛 |Win7论坛 |WP论坛 |Office论坛

GMT+8, 2025-4-4 06:38

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