Hardware and Software Inventory

As a systems administrator, you are familiar with the problems associated with determining the number of personal computers that exist in a large distributed enterprise, and keeping track of all of the hardware and software associated with each computer. Systems Management Server helps make these tasks easy and cost-effective.

Systems Management Server can automatically retrieve detailed information about both the hardware and software for every computer within your enterprise and store the information in a standard SQL Server database. You can select, sort, and view the data, or you can query the database, extract the data, and create custom reports with popular desktop applications, such as Microsoft Access or Lotus® 1-2-3®. A few of the business benefits are:

Maintenance and service tracking.

Systems Management Server can automatically create an inventory of all computers connected to your network. You can then supplement this information by adding your company asset numbers, the cost of each computer, and any maintenance that has been performed. If you want to install a new adapter¾for example, a sound card¾you can tell the technician the exact configuration of the computer, to make sure that the device works correctly and minimize computer downtime.

Planning your upgrades.

When planning for the upgrade of all computers in your organization to Windows 95, you can use Systems Management Server to help you identify which computers need new hardware to qualify for the upgrade. All you need to do is define a computer configuration and run a query on the database to find which ones need new hardware.

For hardware inventory, Systems Management Server supports the Desktop Management Interface (DMI). Any hardware vendor can write a Management Information File (MIF) as defined by the DMI, to include their component in the inventory properties of the computer where it resides. Currently-defined components include the microprocessor, the various drives, the network adapter, the memory, the IRQ table, and a number of other hardware-related components. The hardware inventory detects these defined components and stores information about them in the SQL database.

Two types of software inventory information are collected by Systems Management Server: detailed identification and comprehensive audit. As with hardware inventory, both types of software information are stored in the SQL database, which you can query.

A detailed identification inventory looks for a particular set of files. For example, if an accounting system requires a set of EXE and DLL files, detailed identification inventory can verify that all of the required files are present and that they are valid versions. Or, if you want to upgrade to the new version of an application, this type of inventory can tell you how many copies to buy and where to distribute them.

A comprehensive audit is used to determine if specified applications are installed on the network's computers. In this type of inventory, Systems Management Server checks the files on the computer's disk against a list of applications that are predefined in a package rule file. You can add or delete applications from this list to customize it for the enterprise. Microsoft provides a list of most Microsoft applications, and approximately 2500 software packages from leading vendors.

Systems Management Server can also collect software. For example, it can collect copies of the computer's configuration files (such as AUTOEXEC.BAT, CONFIG.SYS, SYSTEM.INI, or WIN.INI) and add them to an archive. If a problem occurs later on a computer, a technician can can replace corrupted files or review the files in the archive to see if a change in a configuration file might have caused the problem. This is the ideal way to manage a diverse variety of configuration files.

How Inventory Is Processed

The inventory collection process is as follows:

  1. The first time a computer logs on to the network, Systems Management Server installs a program called the Inventory Agent on the computer. This is a management agent that examines the computer to determine the hardware and operating system configuration of the computer, and then builds a binary inventory file (report) of this information.
  2. The Inventory Agent places the inventory file on the logon server. During this process, the client computer uses its network logon server. For example, a NetWare client works directly with its existing NetWare server; it doesn't need to access a Windows NT, LAN, or other server.
  3. At intervals set by the administrator, the Inventory Agent inspects the computer for hardware and software inventory information.
  4. At intervals set by the administrator, the primary site server collects the inventory files from all of its logon servers, determines what inventory changes have taken place since the last inventory, and updates its database with the new information. This changed information is passed all the way up the hierarchy to the central site.

Systems Management Server automatically inventories all hardware and operating system components it can locate, but inventories only the software you specify. To specify which software components Systems Management Server should include in the inventory you create an inventory package.

Creating an Inventory Package

To collect software inventory information, you create an inventory package. Systems Management Server automatically sends the package to all primary sites beneath the one where the package was created.

To create a new package, start SMS Administrator and follow these steps:

  1. Open the Packages window.
  2. In the File menu, select New to display the Package Properties dialog box.
  3. In the Name box, type a name for the package.
  4. In the Comments box, add text to further describe the package.
  5. Click Inventory to define the package properties.
  6. Select the Inventory This Package check box.

    By selecting this check box, you include the package in the SMS software inventory. This check box must be selected in order to define the Inventory properties.

  7. Define the files used to identify the package (the inventory rule).

    For instructions on defining the inventory rule, see the Systems Management Server Administrator's Guide.

  8. Define other properties by choosing the appropriate properties button.
  9. Click OK to return to the Package Properties dialog box.
  10. Click OK to close the Package Properties dialog box.

The package is added to the SMS system database and appears in the Packages window. If Inventory has been set, the package is included in the software inventory. Systems Management Server creates a system job to add the package to all primary sites beneath the site where the package is created.

When you create a package with Inventory properties, that package is added to a package rule file for the site.

Package Rule File.

A package rule file is an ASCII text file that contains rules for collecting an inventory of software. Each rule in the file is the name of a program and, optionally, a set of attributes for that file. Here are the rules used to inventory Microsoft Access 2.0 and MS-DOS 6.0.


PACKAGE 1 "Access 2.00" FILE "MSACCESS.EXE" SIZE 1909024   DATE 04/05/94
PACKAGE 2 "Microsoft DOS 6.0" FILE "COMMAND.COM" DATE 03/11/93

The package rule file is used to generate a configuration file which is distributed to all logon servers at the site. When the Inventory Agent runs from the client, it uses this configuration file to determine which packages (thatis, which files) it should look for on the client. Packages listed in the configuration file that are found on the client are reported as inventory and stored in the site database. This information is passed all the way up the hierarchy to the central site.

You can add Inventory properties to an existing package with either Workstation or Sharing properties, or create a package with only Inventory properties defined.