SCCM 2007 Client Agent Installation Failure

This post documents my experiences with:

  • SCCM 2007 client installation failure
  • SCCM 2007 SMS Host Agent service will not start
  • SCCM 2007 client agents that stop working.

The post assumes the SCCM 2007 infrastructure is in-place and functional and the failures being experienced are not down to SCCM 2007 server configuration issues or network connectivity issues etc., they are just failures relating to individual client machine issues.

The Basics
  • Is the SMS Agent Host service running on the machine? If not start it.
  • You can run ccmsetup /uninstall and then re-install the client using your favoured method.
Install or Repair the Agent from the SCCM 2007 Console
  • Initiate a client push installation from the SCCM 2007 Management console to the target machine, (whether it is a new client or an existing client that is faulty) – ensuring the Repair option is selected in the Client Push Wizard.
  • Access the CCMSetup folder (depending on the OS this could be under the Windows, System32 or SysWOW64 folder) on the target machine and review the ClientMSI and the CCMSetup logs. If the installation was successful happy days, if not are there any clues in the logs why the install failed?
WMI – Rebuild the Repository.

The root of most SCCM client problems. The classic fix:

  • Set the WMI service to Disabled.
  • Stop the WMI service.
  • Take a backup copy of everything under the C:\Windows\System32\WBEM\Repository folder.
  • Delete everything under the C:\Windows\System32\WBEM\Repository folder.
  • Set the WMI service to Automatic and restart the service.
WMI Again – Corrupt Files
  • Set the WMI service to Disabled.
  • Stop the WMI service.
  • Take a copy of all the files under the C:\Windows\System32\WBEM folder.
  • Access a similar machine to the machine with the problem that has a working SCCM 2007 client.
  • Copy all the files (not the folders) from the C:\Windows\System32\WBEM folder and overwrite the equivalent files on the problematic machine.
  • Set the WMI service to Automatic and restart the computer.
WMI Yet Again – System Path Variable
  • Ensure the System Path Variable includes either %SystemRoot%\System32\WBEM or the specific path to the WBEM folder, e.g. C:\Windows\System32\WBEM.
  • If you need to add the entry restart the WMI and SMS Agent Host services.
SMS Certificates
  • Open the Certificates MMC for the Computer account of the affected machine.
  • Navigate to the SMS node in the Certificates console.
  • Check the expiration dates of the two SMS certificates. The year part of the date should about 100 years in the future, based on the date of the client install. If the year part of the date looks really strange (I have seen the year part as 7803, 9265) delete the certificates.
  • Restart (or most likely just start) the SMS Agent Host Service on the client machine.
Duplicate Machine Names in SCCM database

Because of the way we provision new and replacement machines where I work I often end up with duplicate machine names in the SCCM 2007 database/console. To remove the duplicates:

  • Create a query-based Collection to highlight the duplicate machine names (query to follow).
  • Ensure the ResourceID field is visible in the SCCM 2007 console.
  • Sort on the Machine Name field.
  • Delete the instance of the duplicate machine name that has the lowest ResourceID number.
  • Restart the SMS Host Agent service on the remaining instance.
SMSCFG.ini

This has only worked once for me and I can’t remember the exact circumstance when I tried it (might have been a duplicate GUID but not 100% sure).

  • Delete the C:\Windows\SMSCFG.ini and restart the SMS Agent Host service.
How do I know if an Existing Client is Faulty?

I use a number of query-based SCCM Collections to highlight either potentially faulty or missing SCCM 2007 client agents.
To follow.

How do I know an SCCM 2007 Agent is Active Again?

It can take a bit of time for current data about a “fixed” machine to appear in the SCCM 2007 console.  My quick check is just to look at the date/time stamp for the files in the CCMLogs folder on the client. If there is lots recent activity in lots of logs (maybe 20 or so logs have a very current time stamp) then it is likely the client is fixed.