Inventory collection begins when inventory client agents are enabled in the SMS Administrator console and ends when inventory data is stored in the site database. Once this data is collected, reports can be created and other features in the SMS Administrator console "come alive."
Inventory collection falls into two categories:
SMS inventory collection behavior is highly configurable. By using the SMS Administrator console, you are not only able to specify what kind of information should be collected, you control how often inventory should run on the client computer. Hardware and software inventory collection is configured by selecting the Client Agent node in the SMS Administrator console, then accessing the properties of the Hardware Inventory Client Agent and the Software Inventory Client Agent. In Exercise 12 of Chapter 2 you enabled these agents. Once the inventory agents have been enabled, collection frequency can be configured. Additional configuration options are available for the Software Inventory Client Agent. Inventory client agent configuration is discussed in Lesson 2.
Client agents are not installed unless the client computer is within the configured boundaries of the site, and a client installation method has been enabled.
Hardware inventory and software inventory are inventory collection functions that are supported by client agents; other than being inventory collection functions, they share little in common. In order to specify what software should be inventoried, you use the SMS Administrator console to add file types for inventory and file collection. On the other hand, in order to specify what hardware properties should be inventoried, you modify the SMS_DEF.MOF file or build custom MIF files. There will be more about this in Lesson 4, "Lesson 4: Using the Resource Explorer and Extending Inventory Collection"
SMS_DEF.MOF contains classes and properties of hardware that are defined by the DMTF. Classes are categories of hardware resources. Properties are the attributes of the classes. SMS_DEF.MOF is used by hardware inventory client components to determine what classes and properties should be gathered. There are more than 650 properties defined in SMS_DEF.MOF, and approximately 200 of these properties are enabled. SMS_DEF.MOF is stored on CAPs in the \CAP_sitecode\CLIFILES.BOX\HINV directory. A master copy of this file is stored on the site server in \smsdir\INBOXES\CLIFILES.SRC\HINV. Disabled properties in SMS_DEF.MOF can be enabled by editing the master copy. Editing SMS_DEF.MOF will be discussed in Lesson 4.
Both Windows 16-bit and Windows 32-bit client computers use the SMS_DEF.MOF file to determine what hardware inventory should be collected. However, the way the data is collected on these client computers differs. Windows 32-bit client computers use the CIM Object Manager (started by the Windows Management Service) to collect hardware inventory data from providers. Windows 16-bit client computers use the Hardware Inventory Client Agent to collect inventory data. On both client computer types, collection data is sent to the CAP by the Hardware Inventory Client Agent and added to the site server database by threads of the SMS Executive.
Only a subset of the data that is collected by the CIM Object Manager can be collected by the Windows 16-bit Hardware Inventory Client Agent. Further, most hardware data processing for Windows 16-bit client computers is done on the site server. On the other hand, most hardware data processing for Windows 32-bit client computers is completed on the client computer. So, for example, only changes in hardware configuration are sent to the CAP by the Windows 32-bit client agent, while all hardware data is sent to the CAP by the Windows 16-bit client agent, and the site server must then process the data to find changes in hardware inventory.
The CIM Object Manager running on Windows 32-bit clients is not involved in the software inventory process. So software inventory collection is similar on Windows 16-bit and Windows 32-bit client computers. When the software inventory client agent runs, it attempts to collect the following information from files it has configured, through the SMS Administrator console, to inventory:
Some software inventory information cannot be collected if the file doesn't contain the data sought by the inventory client agent. For example, if the file header does not include product version information, this data cannot be collected. Executable files, which are files with EXE or COM extensions, are most likely to contain file header information identifying the characteristics of the file. Therefore, software inventory provides the most information when these files types are read by the Software Inventory Client Agent. By default, once the Software Inventory Client Agent is enabled in the SMS Administrator console, it will inventory all files with EXE extensions. Files with COM extensions are not included because they are less common than files with EXE extensions. Any file or file type can be inventoried by adding the file name or file type to the Inventory Collection tab in the SMS Administrator console. Inventory data collected by the Software Inventory Client Agent is sent to the CAP and is added to the site server database by a thread of the SMS Executive.
To instruct the Software Inventory Client Agent to collect files from the client computer, file names or file types are added to the File Collection tab in the SMS Administrator console. The Software Inventory Client Agent collects the files and appends the collected files to software inventory collection data sent to the CAP. The CAP forwards the software inventory to the site server and the site server separates software inventory collection data from collected files. The software inventory collection data is added to the site database and collected files are stored on the site server's hard disk. The site server maintains the five most recent versions of collected files from each client computer. Thus it contains an archive of file changes, which makes it easy to track changes and recover previously saved versions of a collected file.
Collecting hardware and software inventory is the first step in managing inventory data and client computer functions with SMS. After the data is collected in the site database and (in the case of collected files) stored on the site server's hard disk, data can be managed in SMS. Individual client computer inventory is viewed through a snap-in to the MMC called the Resource Explorer. To make full use of other SMS functions, inventory must be collected. The following SMS functions depend on inventory collection:
After hardware inventory has been performed, you can, for example, target an advertisement to be relayed only to computers running Windows NT Workstation, containing 64MB of RAM, and containing 250MB of free space on the D: partition.
The Resource Explorer will be discussed in Lesson 4. Other SMS features that use inventory data will be examined throughout this guide.