SCCM a simple but yet very complex solution. It can be very confusing time to time.
A issue has been reported to me and asked for help. Basically Client stopped reporting back to SCCM Server after the power outage and dirty shutdown of servers.
Client is active but not reporting to SCCM Server.
As per usual I checked all log files, client getting AD site, finding MP fine, Telnet to SCCM ok and lot more troubleshooting steps. Even tried WMI repair and client uninstalls and installs again. Nothing worked until the solution below:
- Uninstall the Client cleanly
- Remove Client Details from SQL DB itself – Query provided below
- Wait 15 Minutes
- Install Client Again
- Wait 30 minutes
- Do SCCM Client Repair or Re-install again
- Wait another 10 minutes
- Perform Machine Policy, User Policy and Inventory cycles to confirm.
Now you should have working client again
Uninstall the SCCM Client via following command line:
To Fully uninstall the Client including the WMI repair, I used the following script:
or perform following steps manually.
- CCMSetup /uninstall
- Remove c:\windows\ccm directory
- Remove c:\windows\ccmsetup directory
- Remove c:\windows\ccmcache directory
- Remove c:\windows\smscfg.ini
- Remove c:\windows\sms*.mif (if present)
- Delete Registry Key – HKLM\software\Microsoft\ccm registry keys
- Delete Registry Key – HKLM\software\Microsoft\CCMSETUP registry keys
- Delete Registry Key – HKLM\software\Microsoft\SMS registry keys
To delete duplicate GUID’s, use below SQL commands.
Note: Replace “ServerName” with your Server.
SELECT * FROM System_DISC WHERE [Name0] like ‘%ServerName%’
DECLARE @ServerName VARCHAR(50)SET @Name = ‘ServerName’DELETE FROM SYSTEM_DISC WHERE Name0 = @ServerNameDELETE FROM ClientKeyData WHERE SMSID IN (SELECT SMS_Unique_Identifier0 FROM SYSTEM_DISC WHERE Name0 =@ServerName )DELETE FROM MachineIdGroupXRef WHERE MachineID IN (SELECT ItemKey FROM SYSTEM_DISC WHERE Name0 = @ServerName )DELETE FROM System_AUX_Info WHERE Netbios_Name0 = @ServerNameDELETE FROM ImportedMachineIdentity WHERE ItemKey IN (SELECT ItemKey FROM SYSTEM_DISC WHERE Name0 = @ServerName )