作者:棋玉
问题现象
激活报错,slmgr /ato
后报错代码类似如下:
排查步骤
1.运行命令行 slmgr /dlv
同样报错,说明是slmgr 本身命令有问题,不像是网络层面的问题
2.查看msinfo32, 发现报错,提示 winmgmt 服务有问题
3.重启winmgmt 服务,可以正常重启,说明winmgmt 服务本身正常,需要rebuild wmi 数据库。
4.按照以下步骤rebuild wmi 数据库(注:此操作可能会对环境产生影响,建议先进行快照)
windows Server 2008R2:
右击cmd,选择以管理员身份运行,运行以下命令行:
sc config winmgmt start= disabled
net stop winmgmt /y
cd %windir%\system32\wbem
rename repository repository.old
for /f %s in ('dir /b *.dll') do regsvr32 /s %s
wmiprvse /regserver
sc config winmgmt start= auto
net start winmgmt
for /f %s in ('dir /b *.mof *.mfl') do mofcomp %s
Windows Server 2012及以后版本
右击cmd,选择以管理员身份运行,运行以下命令行:
sc config winmgmt start= disabled
net stop winmgmt /y
%systemdrive%
cd %windir%\system32\wbem
ren repository repository-backup
for /f %s in ('dir /b *.dll') do regsvr32 /s %s
sc config winmgmt start= Auto
net start winmgmt
dir /b *.mof *.mfl | findstr /v /i uninstall > moflist.txt & for /F %s in (moflist.txt) do mofcomp %s
5.之后成功激活。