这两天刚升级老的二奶机Win10到Win11,老机器配置i7-4790K + Z97-AR + GTX 970 + 32G RAM。
这个主板是支持单独插一个TPM芯片的,不过花那个钱另外买就不值了。这主板也支持UEFI。
因为我升级时要保留Win10的应用程序和数据,所以是不能从优盘里的Win11启动系统来升级的,只能在Win10中直接运行Win11的setup.exe。
试了各种办法死活不管用(注册表里设置AllowUpgradesWithUnsupportedTPMOrCPU或者BypassTPMCheck等、用Rufus制作remove TPM check的优盘等),都在TPM检测通过之后的那一步才报错,错误信息是“无法判断你的电脑是否已经准备好继续安装Windows 11,请尝试重新启动安装程序”。
最后用下面这个MCT脚本升级到了Win11:
https://github.com/AveYo/MediaCreationTool.bat
执行脚本前,一定要先在BIOS里关闭secure boot,不然会在机器重启时报"SAFE_OS阶段错误"。可能还要关闭Intel PTT,但我的BIOS没这个特性,没处理。
运行MediaCreationTool.bat,在出来的菜单中选择11,再选择Auto Upgrade,然后就完事了,后面的步骤都是自动的。
这个脚本从微软下载Win11的*.ESD文件是走的BITS服务,可以用系统自带的bitsadmin工具查看下载进度、下载错误信息、设置BITS下载代理。
比如:
bitsadmin /monitor 可以查看下载进度的字节数,默认5秒刷新间隔。
bitsadmin /list /allusers 可以查看所有的下载任务、出错原因等。
我机器上因为有一个TAP虚拟网卡,导致BITS服务下载*.esd时进度一直卡在0%。用bitsadmin看了错误原因是没检测到可用的网络接口,禁用了虚拟网卡后才能正常下载。
bitsadmin的命令行参数的手册:
https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/bitsadmin