Hello everyone let’s learn how to Remove SCCM Client from Provisioning Mode. In this post, I will show you the steps to remove clients from the provisioning mode.
The client will be in Provisioning mode during operating system deployment (OSD). This is applicable in-place upgrade OS Task Sequence(TS). When the client is provisioning state, it doesn’t process policy from the server-side.
Provisioning mode behavior helps the task sequence to run without additional deployments. The client should automatically come out of provisioning mode once the task sequence is completed.
Updated on 19th April 2021 – I have received feedback from the community that it’s better to use the commands instead of registry values. The PowerShell option was already given in the blog post. Really appreciate the comments and involvement with the HTMD community.
I have seen this issue occurs when you are performing an in-place upgrade to Windows 10. If the upgrade activity is failed due to some reason, then the ConfigMgr client will fall under-provisioning mode (not always).
If ConfigMgr client falls under-provisioning mode, then client-side communications can not be reached to the SCCM servers. The client can receive the new policies as per my experience.
In the SCCM console, you can see the client will be in an inactive state. There are few steps discussed below that can be followed to remove the ConfigMgr client manually out of provisioning mode.
- Changing Registry Value
- PowerShell Command
I realized that there was some problem with some of the ConfigMgr (a.k.a SCCM) when I was going through the console.
- Verify the client activity status in the ConfigMgr console and you need to perform further troubleshooting when you see the client is inactive.
- Communication 37 mean there are 37 policies sent from the server-side but there is no response from the client-side.
- Verify client side log CcmNotificationAgent.log if the configmgr client is in provisioning state.
CRL Checking is Enabled. Faild to read 'security Token' from registry. CCMGetCertificateContextWrapperEx - function called while in provisioning mode. CCMGetCurrentSigningCertificateContext failed when get client certificate context. 8000ffff
Fix – Remove SCCM Client from Provisioning Mode
The following are the two methods that you can try to fix the issue provisioning mode issue.
NOTE! – If the task sequence unexpectedly fails, the client can be left in provisioning mode. In this scenario, you need to troubleshoot further and understand why the client is in provisioning mode.
Changing Registry Value
This is method to change the registry value to remove ConfigMgr client from provisioning mode.
- If the value of ProvisioningMode is True in the following registry key: HKLM\Software\Microsoft\CCM\CcmExec, then the client is on provisioning mode.
- Remove client out of provisioning mode modify the value of ProvisioningMode to False in following registry key: HKLM\Software\Microsoft\CCM\CcmExec. Also, remove the value inside SystemTaskExcludes.
NOTE! – We recommend you create a backup before editing the registry.
The following PowerShell command helps us to Remove SCCM Client from Provisioning Mode. Use below PowerShell command line which invoke the WMI method and will modify the value.
Invoke-WmiMethod -Namespace root\CCM -Class SMS_Client -Name SetClientProvisioningMode -ArgumentList $false
- SCCM OSD Troubleshooting using SMSTS Log with Vishal | ConfigMgr