In this blog post I will be discussing on difference between ccmsetup.exe vs client.msi. CCMSetup.exe is used to install the Configuration Manager client which calls client.msi to do the installation. CCMSetup.exe uses client installation parameters to install the client when you are trying to install the client manually.
CCMSetup.exe uses slash “/” parameter to run the command. CCMSetup.exe also uses client.msi properties, however the parameters doesn’t use slash parameter. In nutshell following is the parameter to be used with CCMSetup.
CCMSetup.exe [<Ccmsetup parameters>] [<client.msi setup properties>]
This might looks confusing, but to clarify further, we are going to install SCCM client manually, we have to use ccmsetup.exe with parameters, we cannot directly use client.msi which can only be used for client push Installation properties on SCCM Console or for task sequence “Setup Windows and Configuration manager” with installation properties.
If you run ccmsetup.exe /? In command prompt, you can see the parameters which we can use.
Few of the CCMSetup parameters are /source, /mp, /forceinstall etc.
/source is used to specify location of source path of configuration manager installation files.
Client.msi has different parameters such as SMSSITECODE, SMSCACHESIZE, CCMLOGMAXSIZE, SMSCACHEDIR etc
Following is one of the example we can use for manual install:
ccmsetup.exe /mp:SCCM01.MANBAN.COM SMSSITECODE=AUTO SMSCACHESIZE=10000
ccmsetup.exe parameter is /mp
client.msi parameter is SMSSITECODE & SMSCACHESIZE
/mp is used to specify the management point to request the downloading content from distribution points. This will only use MP info to download the content, not for assigning it to management point
SMSSITECODE is used to assign client to management point, we can use AUTO or 3 digit of your MP Code.
SMSCACHESIZE is used to specify cache size in MB’s. In this case we are specifying 10GB, default value is 5GB.
Client.msi parameters never uses slash (/) parameters. It starts with SMSSITECODE, SMSCACHESIZE etc. We can specify these parameters:
- When installing client manually using ccmsetup.exe. As we have discussed previously, ccmsetup.exe parameters using /parameters + client.msi parameters to install the client.
- Use client.msi parameters in Client Push Installation Properties.
Launch SCCM Console, navigate to Administration > Overview > Site Configuration > Sites, On the Home tab of the ribbon, select Client Installation Settings and select Client Push Installation. Click on Installation Properties tab.
I have used following installation properties:
Where SMSSITECODE=MAN is my site code and SMSCACHESIZE=10GB. You can clearly see the message showing Do not specify installation properties for CCMSetup.exe, so bear in mind not to use /parameters.
- User Client.msi parameter in Task Sequence step Setup Windows and Configuration Manager installation properties.
Edit your OSD task sequence, navigate to the above mentioned step and provide the installation properties, such as:
SMSCACHESIZE=10000 CCMLOGMAXHISTORY=3 CCMLOGMAXSIZE=5000000
Where cache size we are specifying as 10GB, keep 3 versions of log file as history, log file size defining as 5MB
Further exploring CCMSetup.exe parameters:
Following are the few slash parameters which we can use during installation
|/ExcludeFeatures||This parameter specifies that CCMSetup.exe doesn’t install the specified feature.|
Example: CCMSetup.exe /ExcludeFeatures:ClientUI doesn’t install Software Center on the client.
|/forceinstall||Specify that CCMSetup.exe uninstalls any existing client, and installs a new client.|
|/logon||If any version of the client is already installed, this parameter specifies that the client installation should stop.|
|/mp||Specifies a source management point for computers to connect to. Computers use this management point to find the nearest distribution point for the installation files.|
|/noservice||This parameter prevents CCMSetup from running as a service, which it does by default.|
|/source||Specifies the file download location. Use a local or UNC path.|
|/uninstall||Use this parameter to uninstall the Configuration Manager client|
Example: ccmsetup.exe /uninstall
Further exploring client.msi parameters:
Following are the few parameters which we can use during installation
|CCMLOGLEVEL||Use this property to specify the level of detail to write to Configuration Manager log files.|
2: Warnings and errors
3: Errors only
Example: CCMSetup.exe CCMLOGLEVEL=0
|CCMLOGMAXHISTORY||When a Configuration Manager log file reaches the maximum size, the client renames it as a backup and creates a new log file. This property specifies how many previous versions of the log file to keep. The default value is 1|
|CCMLOGMAXSIZE||This property specifies the maximum log file size in bytes.|
|DNSSUFFIX||Specify a DNS domain for clients to locate management points that you publish in DNS.|
|FSP||Specify the fallback status point that receives and processes state messages sent by Configuration Manager clients.|
|PROVISIONTS||Starting in version 2002, use this property to start a task sequence on a client after it successfully registers with the site.|
Example: PROVISIONTS=MAN20012. Set the value of this property as the task sequence deployment ID
|SMSCACHEDIR||Specifies the location of the client cache folder on the client computer|
|SMSCACHESIZE||Client settings are available for specifying the client cache folder size|
|SMSMP||Specifies an initial management point for the Configuration Manager client to use|
|SMSSITECODE||This property specifies a Configuration Manager site to which you assign the client. This value can either be a three-character site code or the word AUTO|