Packages can come in many flavors:
Packages that use a definition file.
You can create ConfigMgr packages either with a definition file or without. A definition file provides the answers to the majority of the questions required to create a package.
SMS
1.x definition files had an extension of PDF (Package Definition File).
With SMS 2.0, you created the definitions in files using either a PDF
or SMS (Systems Management Server) extension. Although these two types
of definition files still exist, and you can use them with ConfigMgr to
create a package, they are relatively uncommon now.
The package definition file most commonly used by ConfigMgr 2007 is the MSI file.
Packages that you can create without a definition file,.
A package that does not even need to have source files as part of the package.
This
is often used when ConfigMgr is used to run a program already stored on
the system, such as the automated uninstall of the ConfigMgr client.
Tip: Remotely Uninstall ConfigMgr Agent Using PsTools
If you are looking for a quick way to uninstall the Configuration Manager agent from a remote system, try this:
Psexec \\<computer> –u <domain\user> c:\windows\system32\ccmsetup\ccmsetup.exe /uninstall
A successful result is shown here:
C:\windows\system32\ccmsetup\ccmsetup.exe exited on (computer) with error code 0.
PsExec is part of the SysInternal PsTools, available for download at http://technet.microsoft.com/en-us/sysinternals/bb896649.aspx. These can be invaluable when performing actions on remote systems.
The
goal remains the same, regardless of how it is achieved. ConfigMgr
takes these different types of packages and integrates them to create
Configuration Manager packages. To illustrate how this is accomplished,
the next sections step through an example using a relatively simple
package to deploy that’s utilized by many ConfigMgr installations—the
Operations Manager (OpsMgr) 2007 client.
1. OpsMgr Client
Operations
Manager 2007 is another member of the System Center product family. It
monitors the health of applications, servers, and services. OpsMgr
requires an agent installation process, which can be accomplished using
ConfigMgr. The next sections discuss this process.
1.1 Using the Create Package from Definition Wizard
Creating the ConfigMgr package for Operations Manager is straightforward and requires only a few steps:
1. | Locate the installation files for the OpsMgr agent installation. These are the installation source files.
For this example, a share named source is on the D: drive of the Bluebonnet server with a subfolder named OpsMgr. The OpsMgr agent software was previously copied to this folder (D:\source\OpsMgr) from the OpsMgr installation media.
Note: Installation Source File Locations
Two
different lines of thought exist for where installation files should be
stored. The first is to store them on an existing network share such as
a distributed file server (DFS) so they will be consistently located on
the network, with only a single copy of the installation source files
required. The second approach is to place copies of the files in a
folder on the ConfigMgr server itself.
It
is best to use a folder on the ConfigMgr site server because other
individuals may rearrange and potentially remove files on a network
share without realizing the impact on the ConfigMgr software packaging
process. Using a dedicated folder prevents someone from inadvertently
moving, changing, or deleting those installation files required for
ConfigMgr.
|
2. | Within
the Configuration Manager console, navigate to System Center
Configuration Manager -> Site Database -> Computer Management
-> Software Distribution -> Packages.
|
3. | Right-click
Packages and choose New -> Package from Definition. This starts the
Create Package from Definition Wizard shown in Figure 1. Click Next to continue.
|
4. | ConfigMgr displays the existing package definitions it is aware of (see Figure 2). Click the Browse button (circled in Figure 2)
to locate the package definition file. For this example, create the
package from a definition file by pointing it to MOMAgent.msi for the
i386 version of the OpsMgr agent. This file was located on the
ConfigMgr server in the d:\source\OpsMgr\agent\i386 folder.
|
5. | After you select the MSI file, it appears on the screen previously shown in Figure 2, which now displays the System Center Operations Manager 2007 agent. Figure 3 shows this screen. Click Next to continue.
|
6. | The next page of the wizard identifies three different ways you can manage source files:
- This package does not contain any source files— This may be useful in a configuration where ConfigMgr is running a program already stored on the system.
- Always obtain files from a source directory— This option is the one most commonly used.
- Create a compressed version of the source files— This may be useful when you need to decrease storage requirements.
Select the second option for this package—Always obtain files from a source directory—as shown in Figure 4. Click Next to continue.
Note: Using Source File Compression
The
Create Package from Definition Wizard includes a source files option to
create a compressed version of the source files, as displayed in Figure 4.
Compression is particularly helpful in environments where it is
important to decrease storage requirements. Compressed packages are
also useful for CD installs, because the source files may not be
available after creating the package. It is important to note that
compressed source files must be stored on NTFS file systems (not FAT).
You
should not use compressed source files if the source files are likely
to change or if there’s not a significant decrease in the size of the
package from compressing it.
|
7. | The
wizard next verifies the location of the source files. This step
appears if the option selected on the previous page of the wizard
specified source files were part of the package—if the package did not
contain any source files, this screen does not appear.
The
wizard defaults to the option Local drive on site server, which is the
location of the source files and folder where you chose the package
definition file (in this case the MOMAgent.msi file specified in step 4
of this process). This is shown in Figure 5. Click Next to continue.
|
8. | The Summary page is the final screen of the Create Package from Definition Wizard (see Figure 6).
It lists the options chosen to create the package. These include the
name of the package, how to handle source files, and the location of
the source directory. Click Finish to complete the Create Package from
Definition Wizard.
|
9. | Using
the information in the MSI file, the wizard now creates a set of
installation options for the program, including Per-system attended,
Per-system unattended, Per-system uninstall, Per-user attended,
Per-user unattended, and Per-user uninstall, as displayed in Figure 7.
|
Using
an MSI file for the package definition greatly simplifies the process
of creating the OpsMgr package, because the MSI supplies the
information that otherwise would have to be manually specified to
Configuration Manager.
With the package
created, the next step is configuring the program the package will use.
In the case of the OpsMgr agent, this is the Per-system unattended
program. The Per-system unattended program deploys the OpsMgr package
on a per-system basis and runs without user intervention. Right-click
the program (located in the Configuration Manager console -> Site
Database -> Software Distribution -> Packages -> <name of the package that was created> (in this case Microsoft Corporation System Center Operations Manager 2007 Agent)) and open the Properties page.
Properties for each program include the following tabs:
General
Requirements
Environment
Advanced
Windows Installer
MOM Maintenance Mode
Each
of these tabs defines how the program will function. Let’s review the
content of each, using the OpsMgr package as an example.
The General tab (shown in Figure 8)
has a variety of fields automatically populated with information, based
on the package definition file used to create the OpsMgr package:
Name— The Name field is prepopulated and cannot be changed.
Comment— This is the first field you can modify. This field is a 127-character text field, used to give a description of the program.
Command line—
This field is a text field that can have up to 255 characters. It
provides the command line that installs the OpsMgr agent. For the
OpsMgr agent installation, the field uses the following syntax:
MSIEXEC.exe /q ALLUSERS=2 /m MSIHATJB /I "MOMAgent.msi"
Start in—
An optional 127-character text field, this specifies either the
absolute path to the program you are installing (such as
c:\install_files\program.exe) or the folder relative to the
distribution point you are installing within (such as install_files).
This defaulted to blank for the OpsMgr agent program.
Run— This dropdown specifies whether the program will run normal, minimized, maximized, or hidden:
Normal— This is the default mode, and means the program runs based on system and program defaults.
Minimized—
Running minimized shows the program only on the task bar during
installation. The window exists on the task bar during the installation
process; however, it is not the active window maximized on the user’s
workstation.
Maximized—
This is a good configuration to use when installing programs that
require user intervention. It’s also good for package testing.
Hidden— This mode hides the program during installation, and is a good option for fully automated program deployments.
The OpsMgr program defaulted to the Normal configuration.
After running— This field is a dropdown selection determining what will occur after the program completes. Here are the options:
No action required—
The OpsMgr agent defaulted to No action required, which means that no
restart or logoff is required for the program (the case in the OpsMgr
agent installation).
Configuration Manager restarts computer—
The option to have ConfigMgr restart the computer is useful when you’re
deploying a program that requires a reboot but the reboot is not
initiated as part of the program.
Program restarts computer— Select this option if the program requires a reboot and the program actually performs the restart program.
Configuration Manager logs user off— Use this option when the program installation requires the user not to be on the system.
It
is important to note that both the ConfigMgr restarts computer and
ConfigMgr logs user off options take place forcefully, after a grace
period. This means that if either of these options is used, any
applications running on the clients will not have the opportunity to
save their data or state.
Category—
Category is a dropdown selection used to help find specific programs in
ConfigMgr. This field defaulted to blank for the OpsMgr agent
installation, but you can create a new category by typing in the text
for the category’s name.