With this post I want to explain the CCMSetup install switches as I get asked a lot how and when to use them. The Configuration Manager client is installed by launching ccmsetup.exe. This happens to all client installations, even if client push installation from the Configuration Manager console and task sequence installations with the setup windows and configuration manager step.
The first thing ccmsetup.exe does is copy itself to c:\windows\ccmsetup and then downloads any prerequisites needed for the installation like .Net Framework 4.0. Ccmsetup.exe is a bootstrapper for the ConfigMgr client installation, and client.msi is launched from ccmsetup.exe. Ccmsetup.exe takes several paramters, some are used by ccmsetup.exe while others are passed on to client.msi.
CCMSetup Install Switches
Here is an example of an installation string I use in an environment with multiple domains and Configuration Manager sites. These ccmsetup install swithes makes sure my configuration manager clients are always installed and connected to the right site.
ccmsetup.exe SMSSITECODE=P01 SMSMP=cm01.lab.net FSP=cm01.lab.net DNSSUFFIX=lab.net /mp:cm01.lab.net /ForceInstall
This installation string tells the Configuration Manager client installation the following:
- SMSSITECODE=P01. Client.msi use P01 as sitecode.
- SMSMP=cm01.lab.net. Client.msi use cm01.lab.net as management point.
- FSP=cm01.lab.net. Client.msi use cm01.lab.net as fallback status point.
- DNSSUFFIX=lab.net. ConfigMgr client will use this domain for all connections where domain name is not specified.
- /MP: CCMSetup.exe use cm01.lab.net as managementpoint.
- /ForceInstall CCMsetup.exe will force the installation, and any previous versions of sccm client discovered will be uninstalled.
Any parameter prefixed with “/” is a ccmsetup install switch and is used by CCMSETUP itself. They only control the behavior of CCMSETUP bootstrapper and do not affect the configuration of the installed configuration manager client. Specifying /MP sets the management point that CCMSETUP will use to lookup the distribution point for the installation, it do not in any way configure the management point used by the installed configuration manager client. You can specify several management points with /MP. It is also considered best practice to specify the FQDN (Fully Qualified Domain Name) when you specify the management point.
Management points that use secure communication must be specified with HTTPS prefix in the url.
ConfigMgr Client parameters
CCMSetup install switches that are all capital letters without the prefix “/” are passed directly to Client.msi, they are not used by CCMSETUP bootstrapper. These settings directly affects the ConfigMgr client and its configuration. They don’t have to be capital letters but is considered best practice to write them like that as it is easier to read. By specifying SMSMP and SMSSITECODE you tell the installed configuration manager client to use a specific management point and assign itself to a specific site instead letting the client look it up and discover it itself, thus saving time.
For some customers of mine, this is the only way to make sure the sccm client connects and configures itself to the right site. This is espeically important in multiple domain / site environments or when you want to manage a computer that is in a workgroup and not part of any domain.
Note that you can only specify one management point with SMSMP as the Configuration Manager client can only connect to one.
ccmsetup.exe SMSMP=https://cm01.lab.net SMSSITECODE=P01
In this post I only touched a few of the many parameters available. Check out Microsoft TechNet for more install switches for both ccmsetup.exe and client msi.