问题:我在哪里可以找到 Win10 升级日志以及如何解读它们?我尝试过三次升级,我想知道是否有任何我可以修复的问题,以便下次成功。特别是,如果失败是由不兼容的驱动程序、硬件错误、缺少文件或目录引起的,我可以尝试修复它。
细节: Windows 更新向我提供了 Win10 从 1909 版升级到 20H2 版的优惠。升级失败了两次,错误代码为 0x8007001f。然后 Windows 更新停止提供升级。因此,我第三次使用了升级助手,但升级再次失败。“失败”的意思是更新已安装,Windows 重新启动并完成安装,但最后一切都回滚了。(一轮大约需要一个小时。)
我能够在 中找到一些日志C:\Windows\Panther\NewOs
,但这些日志仅来自第二次升级尝试。我找不到第三次尝试的任何日志,它们似乎丢失/回滚了。在 Windows 事件日志中,只有一行:安装失败,错误 0x8007001f,没有其他内容。我应该去别处看看吗?
中总共包含 450 行错误,但这可能是正常的setupact.log
,C:\Windows\Panther\NewOs\Panther
因为安装仍在进行中。大多数错误setuperr.log
也出现在 中。我无法判断是什么错误导致安装停止并回滚。这些是最后的错误(包含几行重要的信息):
Info SP SPExecuteFirstBootApply: Begin run. WinOld: C:\Windows.old
Info SP pSPExecuteApply: Starting the engine online
2020-11-15 11:15:55, Error MIG Ignoring replacement manifest with no settingsVersionRange or versionRange attribute in migration element: Microsoft-Windows-Container-Manager
2020-11-15 11:16:03, Error [0x080831] MIG CSIAgent: Invalid xml format: FormatException: Component with display name: Plugin/{C939EC0F-2F56-4CE8-AF56-2336596A5FA7} already loaded __cdecl Mig::CMXEMigrationXml::CMXEMigrationXml(class Mig::CPlatform *,class UnBCL::String *,class UnBCL::XmlDocument *,class UnBCL::String *,class UnBCL::String *)
2020-11-15 11:16:04, Error Mig::CUpgradeTransportPlatform::SetUserContext: Store platform failed to find the user with ID: USER00000005, SID: S-1-0-0[gle=0x000000cb]
2020-11-15 11:16:04, Error MIG Mig::CKnowledgeManager::BeginProcessingContext: Source platform failed to set the user context USER00000005[gle=0x000000cb]
2020-11-15 11:16:04, Error MigApply caught exception: Win32Exception: Can't switch to requested user context: USER00000005.: A device attached to the system is not functioning. [0x0000001F] int __cdecl Mig::CKnowledgeManager::Apply(class Mig::CPlatform *,class Mig::CPlatform *,class Mig::CPlatform *,class Mig::CUserMappingList *,class UnBCL::Hashtable<class UnBCL::String *,class UnBCL::String *> *,class Mig::CAgentManager *,class Mig::CMigrationLogger *,int *,struct IMigExecuteProgress *)[gle=0x000000cb]
2020-11-15 11:16:04, Error SP pSPExecuteApply: Apply operation failed. Error: 0x00000004[gle=0x000000cb]
Info SP SPExecuteFirstBootApply: End run. Result: 0x00000004
2020-11-15 11:16:05, Error SP Apply (first boot apply, online phase): Migration phase failed. Result: 4, no specific error[gle=0x00000002]
2020-11-15 11:16:05, Error SP Operation failed: First boot apply. Error: 0x8007001F[gle=0x000000b7]
2020-11-15 11:16:05, Error SP Operation execution failed: 13. hr = 0x8007001F
2020-11-15 11:16:05, Error SP ExecuteOperations: Failed execution phase Post First Boot. Error: 0x8007001F
2020-11-15 11:16:05, Error SP Operation execution failed.
2020-11-15 11:16:05, Error SP CSetupPlatformPrivate::Execute: Failed to deserialize/execute post-FirstBoot operations. Error: 0x8007001F
升级失败是否由错误导致Store platform failed to find the user with ID: USER00000005, SID: S-1-0-0 (Nobody)
?如果是的话,我必须等待微软的修复。
编辑:
SetupDiag 在 中找到了第三次尝试的日志C:\$WINDOWS.~BT\Sources\Panther
。它测试了很多东西,其中大多数都是“不匹配”,不幸的是它什么也没找到。以下是 的内容SetupDiagResults.log
:
Matching Profile found: FindRollbackFailure - 3A43C9B5-05B3-4F7C-A955-88F991BB5A48
SetupDiag version: 1.6.0.0
System Information:
Machine Name = XXXXX
Manufacturer = LENOVO
Model = 20MAS0P900
HostOSArchitecture = 1033
FirmwareType = UEFI
BiosReleaseDate = 20200620000000.000000+000
BiosVendor = N2CET54W (1.37 )
BiosVersion = N2CET54W (1.37 )
HostOSVersion = 10.0.18363
HostOSBuildString = 18362.1.amd64fre.19h1_release.190318-1202
TargetOSBuildString = 10.0.19041.568 (vb_release_svc_prod1.200929-2208)
HostOSLanguageId =
HostOSEdition = Enterprise
RegisteredAV = Windows Defender
FilterDrivers = FileInfo
UpgradeStartTime = 15.11.2020 15:30:11
UpgradeEndTime = 15.11.2020 16:13:43
UpgradeElapsedTime = 00:43:32
CV = 4zV5tAA0J0Oq5Zcl
ReportId =
Error: SetupDiag reports rollback failure found.
Last Phase = Post First Boot
Last Operation = First boot apply
Error = 0x8007001F-0x3000D
LogEntry: 2020-11-15 16:13:42, Error SP Operation failed: First boot apply. Error: 0x8007001F[gle=0x000000b7]
Refer to "https://docs.microsoft.com/en-us/windows/desktop/Debug/system-error-codes" for error information.
Last Setup Phase:
Phase Name: Post First Boot
Phase Started: 15.11.2020 16:13:31
Phase Ended: 01.01.0001 0:00:00
Phase Time Delta: 00:00:00
Completed Successfully? False
Last Setup Operation:
Operation Name: First boot apply
Operation Started: 15.11.2020 16:13:31
Operation Ended: 01.01.0001 0:00:00
Operation Time Delta: 0:00:00:00,0000000
Completed Successfully? False
答案1
该问题是由 Windows 升级脚本中的一个错误引起的,该错误已存在多年,但仍然没有解决。它发生在用户配置文件不在系统磁盘上的计算机上。就我而言,我的系统磁盘是 C:,而用户配置文件在 D:。
要解决此问题,请打开 RegEdit 并导航到Computer\HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\ProfileList
。在这里,更改ProfilesDirectory
为默认值C:\Users
。就我而言,这足以使升级成功。升级成功后,请改ProfilesDirectory
回以前的值。比较例如这里。
非常感谢@Ramhound!我希望微软能尽快解决这个问题,因为它给很多人带来了麻烦(试着在网上搜索一下)。