就地升级的文件或者说ISO哪里来,参考我这篇文档https://cloud.tencent.com/developer/article/2419258
就地升级(维护)系统,版本要对,同版本的才支持,不同版本的不行,比如得是pc对pc、server对server、en对en、cn对cn、桌面版对桌面版、core纯命令行版对core纯命令行版,交叉的不行
就地升级(维护)系统,版本要对,同版本的才支持,不同版本的不行,比如得是pc对pc、server对server、en对en、cn对cn、桌面版对桌面版、core纯命令行版对core纯命令行版,交叉的不行
就地升级(维护)系统,版本要对,同版本的才支持,不同版本的不行,比如得是pc对pc、server对server、en对en、cn对cn、桌面版对桌面版、core纯命令行版对core纯命令行版,交叉的不行
一般选"保留数据和程序"来升级。
注意,所有盘符的根目录,不要有自动应答文件,除非你知道这个文件的功能
注意,所有盘符的根目录,不要有自动应答文件,除非你知道这个文件的功能
注意,所有盘符的根目录,不要有自动应答文件,除非你知道这个文件的功能
检查所有分区根目录没有自动应答文件,类似*unattend.xml
https://learn.microsoft.com/zh-cn/windows-server/get-started/upgrade-overview
1、winre.wim没有集成虚拟化驱动会影响recovery模式相关功能(winre.wim的位置你可以安装Everything全局搜一下)
就地升级报错0xC1900101 - 0x20017的问题,就是winre.wim没有集成虚拟化驱动使得recovery mode不识别硬盘导致的。
升级过程中需要在recovery mode增删改查文件,winre.wim没有硬盘驱动很尴尬,相关的一些功能比如:Windows系统自有的备份和还原功能、recovery 修复功能、旧补丁状态就地升级新补丁状态等凡是跟recovery模式相关的功能都会受影响。友商云一般也有同类问题,因为winre.wim很少用到,当前系统有驱动一般就够用了,但就怕正好赶上上述场景。
就地升级失败的微软官方资料:https://go.microsoft.com/fwlink/?LinkID=528892
如果有条件,2016直接就地升级到2022。举例:
同版本之间从老补丁状态升级到新补丁状态,比如2019原系统是2018年的ISO安装的,现在我有个2024年5月补丁状态的2019新ISO和一个2022 ISO,同版本就地升级是依赖当前系统正常才能增删改查替换文件完成"保留数据和程序"的方式升级,而低版本升级到高版本则是先把高版本系统安装成功,再在高版本系统内部增删改查替换文件完成"保留数据和程序"的方式升级。
这就是我遇到的特殊情况:在相同image部署的2019机器上,当 winre.wim(Safe OS)中没有集成虚拟化平台的驱动时,使用相同版本的2019(补丁版本不同)就地升级将报错0xC1900101, 0x20017,而此时直接使用windows server 2022 ISO可以成功升级。
当winre.wim缺少所需的驱动,如果在重启进入WinRE时检查磁盘状态,可以发现此时输入list disk机器将会显示“没有可以显示的固定磁盘”,这说明此时Safe OS里面没有对应的驱动。
2、就地升级后时间可能异常
①配置可靠的内外网校时
以下代码另存为.bat即可设置可靠的校时
net stop w32time
net start w32time
w32tm /config /manualpeerlist:"time.windows.com,0x8 ntp.tencent.com,0xa ntpupdate.tencentyun.com,0xa time1.tencentyun.com,0xa" /syncfromflags:manual /reliable:yes /update
w32tm /query /configuration
w32tm /query /source
w32tm /query /peers
w32tm /resync /rediscover /nowait
w32tm /resync /rediscover /nowait
w32tm /resync /rediscover /nowait
上面命令里的0x8和0xa解释: 第一个主用0x8,剩下的备用0xa,备可以加多个,都是0xa,例如
w32tm /config /manualpeerlist:"time.windows.com,0x8 ntp.tencent.com,0xa ntpupdate.tencentyun.com,0xa time1.tencentyun.com,0xa time2.tencentyun.com,0xa time3.tencentyun.com,0xa time4.tencentyun.com,0xa time5.tencentyun.com,0xa" /syncfromflags:manual /reliable:yes /update
②检查时间服务是否开机自动启动,如否,设置之
cmd:
sc.exe config w32time start= auto
powershell:
Set-Service -Name w32time -StartupType Automatic
注意:如果设置了开机自动启动,开机后w32time服务还是启动慢,看下是不是延迟启动,检查下延迟启动的全局配置。可参考https://cloud.tencent.com/developer/article/2284334
默认情况下延迟启动是120秒(实际执行下来是大于这个时间的),配置全局延迟启动后是4分钟。
③添加开机计划任务拉起Windows时间服务(这是对②的补充,万一有特殊情况,并没有在开机后及时启动w32time服务的话,开机计划任务就很有必要)
Administrator计划任务
schtasks.exe /create /tn "\start_w32time" /ru Administrator /rp "Administrator用户密码" /rl highest /sc ONSTART /tr "c:\windows\system32\sc.exe start w32time" /f
schtasks /change /tn "\start_w32time" /ru Administrator /rp "Administrator用户密码" /st 00:00 /sd 1900/01/01
reg query "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
reg query "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal
SYSTEM计划任务
schtasks.exe /create /tn "\start_w32time" /ru SYSTEM /rl highest /sc ONSTART /tr "c:\windows\system32\sc.exe start w32time" /f
schtasks /change /tn "\start_w32time" /ru SYSTEM /st 00:00 /sd 1900/01/01
reg query "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal
reg add "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal /d 1 /t REG_DWORD /f
reg query "HKEY_LOCAL_MACHINE\System\CurrentControlSet\Control\TimeZoneInformation" /v RealTimeIsUniversal
0x420 ERROR_SERVICE_ALREADY_RUNNING
如果计划任务在开机后执行状态是0x420,忽略即可!
Windows计划任务执行的结果0x420是什么意思?
Windows计划任务执行结果的错误代码0x420实际上是十六进制的表示方式。将其转换为十进制,结果是1056。
在Windows系统中,错误代码1056表示一个已经存在的实例已在运行,即它调用的服务已经在运行,因此它返回代码0x420。
④就地升级后显示的时间不正确(不是文档对应的系统的话,忽略)
在 Windows Server 2008 R2 服务器上,无法更改时区设置,并且收到以下错误消息:
无法识别当前时区。 请选择有效的时区。
⑤NT10系统(2016/2019/2022/2025/win10/win11)通过注册表禁用STS,并设置不论时差多大(任何时间,只要不对)都能校时
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w32time\Config" /v MaxNegPhaseCorrection /t reg_dword /d 4294967295 /f
reg add "HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\w32time\Config" /v MaxPosPhaseCorrection /t reg_dword /d 4294967295 /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\W32Time\Config" /v MaxNegPhaseCorrection /t reg_dword /d 4294967295 /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\W32Time\Config" /v MaxPosPhaseCorrection /t reg_dword /d 4294967295 /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Policies\Microsoft\W32Time\Config" /v MaxNegPhaseCorrection /t reg_dword /d 4294967295 /f
reg add "HKEY_LOCAL_MACHINE\SOFTWARE\Wow6432Node\Policies\Microsoft\W32Time\Config" /v MaxPosPhaseCorrection /t reg_dword /d 4294967295 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Services\W32Time\Config" /v UtilizeSslTimeData /t REG_DWORD /d 0 /f
从NT10.0系统 1511版本开始引入默认启用Secure Time Seed of High Confidence (STSHC),简称STS,在某些情况下,可能会导致时间跳变很多天。
微软给的解决方案:通过注册表禁用STS
细节可详阅我这篇文档https://cloud.tencent.com/developer/article/2387795
阿里云SMC(Server Migration Center,简称SMC):
https://www.aliyun.com/product/ecs/smc
https://help.aliyun.com/zh/smc/product-overview/operating-system-migration
阿里的功能其实就是微软的就地升级:
https://learn.microsoft.com/en-us/windows-server/get-started/upgrade-overview
https://learn.microsoft.com/zh-cn/windows-server/get-started/upgrade-overview
就地升级系统注意事项:下载跟当前系统一样语言版本的ISO,比如当前是英文版,得下载英文的ISO,只有这样,覆盖安装时才能选择保留应用和数据,否则只能100%完全覆盖原系统所有数据
腾讯云在线和离线迁移只是迁原系统数据过来,就地升级需要在源端事先做好(或者迁移过来后在目的端再做,所需的ISO需要客户自己上公网找,腾讯云不提供ISO)
在线迁移:
https://cloud.tencent.com/document/product/213/65711
离线迁移:
https://cloud.tencent.com/document/product/213/19233
导入自定义镜像有1T vsize限制(系统盘不能大于1T,大于1T小于2T的情况可以离线迁移)
就地升级可参考:
https://cloud.tencent.com/developer/article/2419259
https://cloud.tencent.com/developer/article/2400100
https://cloud.tencent.com/developer/article/2400772
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。