Before you can start managing a device with Configuration Manager, you must install the client software on it. The Configuration Manager 2012 client software is used to interact with the Configuration Manager site servers, and it consists of different agents that you can enable or disable. It is possible to deploy the client automatically using various methods, and it is possible to install it completely manually. In this blog post we will look at a couple of installation methods for the ConfigMgr 2012 Client. And we will review some of the client installation properties.
Before you start deploying the client software to clients, you should install a Fallback Status Point for your site. The fallback status point is an optional, but recommended site system role for client deployment. It tracks client installation and enables computers in the ConfigMgr site to send state messages during installation when they cannot communicate with a management point. Two types of messages may occur, the normal messages that appear during client installation and assignment or those identifying unhealthy ConfigMgr 2012 clients.
You should also look into the different ports and protocols used by the client software, so you know what firewall exceptions you need to configure.
And it can also be beneficial to know the different dependencies and prerequisites required by the client software. Software dependencies such as Microsoft Silverlight and .Net Framework are included in the client folder found on the site server.
1. Installation Properties
Regardless of the installation method you choose, knowledge of the different command-line properties will be necessary. Two different files are run during the installation process, ccmsetup.exe and client.msi
ccmsetup.exe – The CCMSetup program downloads all the necessary files to complete the client installation from a specified management point or from a specified source location, to the client computer and then starts the Client.msi Windows Installer package to install the client. CCMSetup.exe and its supporting files are located on the ConfigMgr site server in the Client folder of the ConfigMgr installation folder. This folder is shared as <Site Server Name>\SMS_<Site Code>\Client. All ccmsetup.exe properties start with a forward slash /
Below are a few of the installation properties for ccmsetup.exe
/source:<Path> – Specifies the local or UNC path from which to download installation files. Can be used multiple times to specify alternative locations.
/mp:<Computer Name> – Specify either Netbios or FQDN of a source management point, which will help you locate the nearest Distribution Point, so the client installation files can be downloaded. This property is used only for the aforementioned purpose. It does not specify the management point to which the client will become assigned after installation.
/uninstall – Used to uninstall the ConfigMgr 2012 client. This is the only required switch to perform an uninstallation of the client.
/logon – Client will not be installed if any version of the SCCM client (2007/2012) is already present on the machine.
client.msi – This is the file that actually carries out the installation. All client.msi properties use an equal sign. It is not possible to run client.msi directly.
Below are a few of the installation properties for client.msi
SMSCACHEDIR=Path – Specifies the location of the client cache folder on the client computer, which stores temporary files. By default, the location is %Windir%\ccmcache.
SMSMP=FQDN – Specifies an initial management point for the client to use. Very handy switch when installing the client on a computer in a workgroup/DMZ.
SMSSITECODE=AUTO or 3-character site code – Specifies the site to assign the client to. If AUTO is specified, or if this property is not specified, the client attempts to determine its site assignment from Active Directory DS or from a specified management point.
FSP=Single-label name – Specifies the fallback status point that receives and processes state messages sent by ConfigMgr client computers, during installation of the client software.
To view a complete list of SCCM 2012 R2 Client installation properties, click here
As have been noted earlier, you can not run client.msi directly, it must be invoked through ccmsetup.exe You have to first specify the CCMSetup.exe command-line properties and then the Client.msi MSI properties, using the format CCMSetup.exe <CCMSetup properties> <Client.msi properties>. Below are a few examples
ccmsetup.exe /mp:Server10 SMSCACHEDIR=C:\SccmCache
This command will perform the following actions,
- Will utilize Server10 as a Management Point to locate the nearest Distribution Point from where the installation files can be downloaded.
- Set C:\SCCMCache as client cache folder
ccmsetup.exe SMSMP=server10.shabaztech.com SMSSITECODE=PRI
This command will perform the following actions,
- Specify that the client must use server10 as Management Point initially
- Assign the client to site with the site code PRI
3. Client Push Installation Method
You can use the client push installation method on computers that have been discovered by ConfigMgr. Client Push is only supported on Windows computers. When automatic site-wide client push installation is enabled for a site, client software will automatically be installed on computers that are discovered within the site’s configured boundaries, if those boundaries have been added to a boundary group. Client push installation can also be initiated manually by running the Client Push Installation Wizard for a specific collection or specific resource.
The preinstallation phase of client push involves the following steps,
- When a computer that does not have the client software installed, is discovered, a CCR (Client Configuration Request) record will be generated for that object.
- The Client Configuration Manager (CCM) component of the site server will then use the client push account to make a connection to the client and copy ccmsetup.exe and mobileclient.tcf to \\Client\Admin$\ccmsetup (that would be the %systemroot%\ccmsetup folder on the client)
- After copying the files, the site server will verify that the ccmsetup service starts successfully on the client, before disconnecting from the client.
- Now the local client will be responsible for installing the ConfigMgr agent (client software).
All information from the preinstallation phase will be recorded in CCM.log on the site server, and the CCMSetup.log file records the installation process on the client. If the site server cannot contact the client computer or start the setup process, it automatically repeats the installation attempt every hour for up to 7 days until it succeeds. To use client push to install the ConfigMgr 2012 client, the following exceptions must be added to the Windows Firewall on the clients,
Outbound and inbound: File and Printer Sharing
Inbound: Windows Management Instrumentation (WMI)
3.1 Configuring Client Push Settings
3.1.1 Browse to Administration -> Site Configuration -> Site, then select Client Installation Settings -> Client Push Installation in the ribbon bar or the right-click context menu
3.1.2 This will open the Client Push Installation Properties
- You can enable automatic site-wide client push installation. This will automatically install the client on discovered computers within defined site boundaries, that are members of boundary groups. It does not matter whether the computer is discovered before or after enabling client push.
- Choose which type of computers you want to push the client software to (Servers, Workstations and ConfigMgr Site System Servers).
- Choose whether client software will be pushed automatically to Domain Controllers, or if you will manually specify it in the Client Push Installation Wizard (and thus not automatically push it to Domain Controllers).
If you are going to perform a manual client push by running the Client Push Installation Wizard for a specific collection or specific resource, you don’t need to configure any settings on the General Tab.
The Client Push installation account must have local administrative permissions on the client. A maximum of ten user accounts can be specified here. If none of the specified client push accounts are able to connect to the client, the site server will attempt to connect using its own computer account. The Site Server’s computer account will also be used if no account is specified here (which will cause cross-domain client push to fail).
Specify accounts by clicking on the starburst icon, and then selecting Existing Account or New Account. By selecting New Account, you can define a new account
Installation Properties Tab
Specify any of the available client.msi installation properties to use when installing the client software. (According to technet, post SCCM 2012 SP1, you can actually specify a select few ccmsetup.exe properties here too) Properties you enter here will be published to AD Domain Services, which means that other installation methods can utilize those too, because these properties are read by client installations where CCMSetup.exe is run with no installation properties.
3.2 The Client Push Installation Wizard
You can use the client push installation wizard to initiate client push on specific systems and collections. Installation properties and accounts can not be modified from the wizard.
3.2.1 Right-click a discovered system or collection, select Install Client
3.2.2 Click Next
3.3.3 Configure whether the client can be installed on domain controllers, whether the client will be reinstalled, upgraded, or repaired on computers with an existing client, and the name of the site that will install the client software. Finally, click Next
3.3.4 Click Next on the Summary page, and finally click Close on the completion page.
4. Manual Installation
To perform a manual installation, run ccmsetup.exe from the site server or from any management point. ccmsetup.exe is located in the Client folder of the ConfigMgr installation folder. This folder is shared as <Site Server Name>\SMS_<Site Code>\Client.
Before we look at examples on how to perform a manual installation, its important to know how the client will discover a management point. Client management point discovery occurs in this order,
1. Command-line setup parameters
2. AD DS (System Management container)
3. DNS Srv record (client must have site code)
Ccmsetup.exe will also retrieve installation properties from AD DS, if no installation properties are defined when running ccmsetup.exe This includes properties such as site code and management point, as both of those properties are automatically published to AD DS during installation of a site and management points.
4.1 To manually install a client on an AD joined computer, in an environment where the AD schema has been extended, Run the following command \\ConfigMgr Server\SMS_<sitecode>\Client\ccmsetup.exe
CCMSetup.exe will copy all necessary installation prerequisites to the client computer and call the Windows Installer package (Client.msi) to perform the client installation. This requires the client’s network location to be included in a boundary group that is configured for client assignment.
If the client’s network location is not included in a boundary group that is configured for client assignment, you will have to specify the site to assign the client to manually, by using the smssitecode=SMS_<sitecode> installation property.
4.2 To manually install the client software on a workgroup computer (which might be located in a DMZ), you should copy the Client folder from the site server to a local path on the client computer. Then run the following command, ccmsetup.exe /source:c:\LocalPath SMSMP=FQDNofMP SMSSITECODE=SMS_<sitecode>
The client must be able to resolve the management point’s name, otherwise the installation will fail. You can use the Hosts and LMHOSTS files, if the client is not able to contact a DNS server to resolve the needed hostname.
You will also have to Approve the client, by right-clicking the discovered object in the SCCM console, and selecting Approve.
5. Other Available Installation Methods
Use a software installation GPO to install the client. You will have to use the ccmsetup.msi file, which is found in <Installation Directory>\bin\i386 on the site server. Its not possible to specify any command-line properties, instead the command lines that are published to Active Directory will be used.
Software Update Point
Use the Software Update Point to perform the installation. Its not possible to specify any command-line properties, instead the command lines that are published to Active Directory will be used.
When you use a logon script to perform the installation, you must include the /logon switch, otherwise the client installation will begin every time the user logs on to a system.
Deploy the client by using the Software Deployment feature of SCCM 2012 R2.
You can deploy the client by using the Operating System Deployment feature of ConfigMgr.
6. Installing Linux/Unix Clients
Beginning with SCCM 2012 SP1/SCCM 2012 R2, ConfigMgr supports Linux and Unix computers as clients. The Linux/Unix Configuration Manager client supports hardware and software inventory as well as software distribution. Linux/Unix computers are treated as workgroup-based devices. As a result, you must manually install the Configuration Manager client on Linux/Unix devices, or you can use a shell script that installs the client remotely.
Obviously the installation media for these type of clients is different than the one used on Windows computers. You can download Clients for Additional Operating Systems here.
7. Troubleshooting a Client Installation
The installation process consists of three phases. You can troubleshoot each of the phases in real time by reading the correct log files with CMTrace
The Preinstallation Phase
This phase is described in the “Client Push” section of this blog post. A useful log file in this phase is ccm.log on the site server.
The Installation Phase
Begins when ccmsetup.exe reads the mobileclient.tcf file and starts downloading the required files needed to complete the installation. Useful log files in this phase are ccmsetup.log and client.msi.log, both found in the %windir%\ccmsetup folder on the client.
The Post-installation Phase
This is the assignment phase, where the client is added as a managed client to a primary site. Useful log files in this phase are clientidstartupmanager.log, clientlocation.log, and locationservices.log, all found in the %windir%\ccm\logs folder on the client.
You need to first identify where the problem is, and then select the correct log file for further troubleshooting. You can also use Task Manager for basic troubleshooting. When the installation is started on a client, you can use Task Manager to view if the ccmsetup.exe process is running. When the installation finishes, you will see that the host process for ConfigMgr ccmexec.exe has started to run, and you will find the Configuration Manager applet in Control Panel, which you can use to verify the installation of the client software.