Latest posts by Joseph Moody (see all)
- WuInstall: A command-line interface (CLI) for Windows Update - Thu, Apr 4 2019
- PolicyPak Group Policy Edition: Deploy any settings and apps - Thu, Mar 21 2019
- Total Network Inventory 4: Discover your network and stay on top of changes - Wed, Feb 6 2019
By default, an SCCM installation includes console access only on site servers. Additional installation can be handled by several methods. The two most common are:
- Manually installing from the SCCM 2012 installation media
- Configuring an application deployment using the extracted installer
We are all responsible automating administrators here, so we will be taking option 2. Our first step is to prepare the content.
ConsoleSetup.exe and SCCM application deployments ^
Everything was so much more complicated in SCCM 2007, including the Administrative Console deployment. In an SCCM 2012 environment, the Configuration Manager Console installer is easily accessed by browsing to \\SiteServer\SMS_SiteCode\tools\ConsoleSetup\.
The SCCM 2012 Management Console installer
Don’t get too excited about the AdminConsole.msi file, though. Microsoft recommends that the deployment be controlled by ConsoleSetup.exe.
Begin by copying the entire contents of the ConsoleSetup folder to a software deployment share. I prefer to use a DFS namespace for my UNC because that gives me quite a bit of additional flexibility. For organization, content is stored like this:
DFS Name: Test.local\Software
Folder: \Microsoft\System Center\2012R2SP1\ConsoleSetup
Storing the Console installer in a separate folder structure makes future Console upgrades much easier. Be sure that your domain computers have read execute to the share and to the folder structure itself.
With the content in your software share, launch the Configuration Manager Console. If this is your first deployment of the Console, you may need to launch it directly on your site server. Navigate to Software Library – Application Management – Applications. In the ribbon UI, select Create Application.
Leave the default Automatically detect information option selected and enter the full path to the AdminConsole.msi. Click Next.
Specifying the AdminConsole.msi for the installation file
Though we won’t use the MSI as our actual installer, we will let the Create Application Wizard grab all of our relevant information from the MSI before changing the setup type to the executable.
On the General Information page, specify the additional details needed for the Configuration Manager Console. As a best practice, I always supply the publisher and software version attributes. Change the installation program value to:
consolesetup.exe /q TargetDir="C:\Program Files (x86)\Microsoft Configuration Manager\AdminConsole" EnableSQM=1 DefaultSiteServerName=SiteServer.Test.local
Configuring the installation program for the SCCM Console
TargetDir controls the installation directory. EnableSQM controls the Customer Experience Improvement Program. A value of 1 will join the CEIP. Be sure to change the DefaultSiteServerName value to your site server. Finish the Create Application Wizard.
Configuring SCCM application requirements and dependencies ^
Right now, you have an SCCM application that will install the Configuration Manager Console. You may want to do two additional advanced steps to configure your environment.
First, you may wish to restrict the operating system or system architecture that the application can be installed on. In the installation properties above, I manually specified that the application should install in Program Files (x86). Obviously, I do not want a 32-bit machine to install the Console.
Enforcing this is easy. Right-click your newly created application and select Properties. Choose the Deployment Types tab and edit the single deployment listed.
Multiple deployment types are used for architecture-based installs or installers across device types.
In the new MSI file properties window, navigate to the Requirements tab and click Add. Under Condition, choose Operating System and then check the allowed operating system values. Although this is outside the scope of this article, you can also configure custom Global conditions. If you begin to use conditions frequently, change their type to a Global Condition to centralize future changes. The end of this article details how to do this.
The Configuration Manager Console has a single prerequisite requirement. Machines must have the full version of .NET Framework 4 installed. If your machines do not already have this installed, you can download the standalone installer from here. Import it as a new application by following the steps used during the Create Application Wizard section from above. For the command line, use:
dotNetFx40_Full_x86_x64.exe /q /norestart /ChainingPackage ADMINDEPLOYMENT
Once imported, navigate to the Dependencies tab on your SCCM Console MSI File Properties page (screenshot below). Click Add. Select the .NET Framework 4 application that you imported and set the Install value to Yes.
Adding a dependency to an SCCM application
Creating an SCCM console deployment collection ^
Whether you wrapped up your application earlier or added advanced features such as requirements or dependencies, you still need to deploy it to a collection. For best results, I create two collections.
The first collection dynamically adds clients that already have the Configuration Manager Console installed. This ensures that all administrative machines keep the same console version during future System Center updates.
Create a new device collection, name it, and specify a limiting collection (for example, All Desktop and Server Clients). On the Membership Rules page, select Add – Query Rule. Click the Show Query Language button and paste the following:
select SMS_R_SYSTEM.ResourceID,SMS_R_SYSTEM.ResourceType,SMS_R_SYSTEM.Name,SMS_R_SYSTEM.SMSUniqueIdentifier,SMS_R_SYSTEM.ResourceDomainORWorkgroup,SMS_R_SYSTEM.Client from SMS_R_System inner join SMS_G_System_ADD_REMOVE_PROGRAMS on SMS_G_System_ADD_REMOVE_PROGRAMS.ResourceId = SMS_R_System.ResourceId where SMS_G_System_ADD_REMOVE_PROGRAMS.DisplayName like "%Configuration Manager Console%"
Create a second device collection. This time, choose a direct rule and filter to a group of computers that need the Console installed on them. For the Configuration Manager Console, I prefer direct deployments instead of deployments based on AD group membership. After adding the computers, create a second collection rule and choose include collections. Add the first (query) collection that you created.
A device collection for the SCCM Console deployment
Your second collection should now include computers manually slated to get the Configuration Manager Console as well as any that later report it was installed. This is very handy for deploying Cumulative Update packages!
Right-click your second collection and choose Deploy – Application. Select your Configuration Manager Console application and continue through the wizard. Once your content has been distributed and clients have seen the new policy, the Configuration Manager Console should start installing!