Use the Info Gatherer tool to automatically collect comprehensive information about your SMS site and your SMS site server, which can be provided to the Microsoft System Management Server team when needed.
Administrators might want to review detailed configuration information about their SMS site from the Backup/Recovery Task Information, because this tool does not provide information about systems other than the primary or secondary site server.
Note: SMS 2.0 Info Gatherer stops and restarts Microsoft Windows Management Instrumentation (WMI) on the site server. In most cases, this will not interfere with your testing. If you are investigating a problem that requires WMI to continue running, do not use this tool.
SMS 2.0 Info Gatherer collects information about your SMS 2.0 site and site server by doing the following:
1. | Creates the SMSINFO_<SiteCode> directory on the root of the C drive of the computer on which it is running. All information gathered from the site server is placed in the root of this directory. |
2. | Copies the Install.log. |
3. | Copies the Install.map. |
4. | Copies WINMSD output to MSDRPT_Server Name.txt. |
5. | Copies the SMS site registry hive to RegDump.txt. |
6. | Creates the SMS\Bin\ directory summary file, SMSbin.txt. |
7. | Creates the SMS\Inboxes\Clicomp.src directory summary file, SMSClicompsrc.txt. |
8. | Creates the SMS\Inboxes\ Offerinf.box directory summary file, SMSOfferinfbox.txt. |
9. | Stops the WMI service on the site server. This service is required to reliably copy the provider log file. |
10. | Copies all logs from \SMS\Logs to the logs directory created in the root of the SMSINFO_<SiteCode> directory. |
11. | Starts WMI on the site server. |
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0 and Windows 2000
The following file is required to run Info Gatherer:
SMS20info.exe
To start Info Gatherer:
1. | Run SMS20info.exe from a local or mapped network drive. Note the following:
| ||||||||
2. | You must provide the following information:
| ||||||||
3. | The tool will prompt you to verify the information you specified. Depending on the size of the log files and LAN traffic to the site server, this operation could take from a few seconds to several hours. | ||||||||
4. | Upon successful completion, the tool will indicate that the information has been saved to C:\SMSINFO_<SiteCode> of the local system. | ||||||||
5. | Compress the C:\SMSINFO_<SiteCode> directory (using a tool such as PKZip) and include it with a bug submission. This will enable the Microsoft Systems Management Server team to begin investigating the issue. |
Use the Logon Point Update Tool to manually initiate a logon server manager update cycle, without waiting for the normal scheduled cycle.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0 Server and Windows 2000
To install the Logon Point Update tool, copy the required file to the desired location.
KickLSM.exe
kicklsm
- or -
kicklsm servername
If no server is specified, Logon Point Update tries to initiate the logon server manager update cycle on the local computer. Otherwise, you can specify the remote server to initiate a logon server manager update cycle.
Use the NT Info tool to display various types of information about a computer running Windows NT, such as available disk space and partition types. An example of the data this tool displays is included at the end of this section. You can use the NT Info tool on a remote computer. NT Info is not supported for Alpha platforms that run Windows NT 3.51.
Processors: i386 and Alpha, when running Windows NT 4.0, i386
only when running Windows NT 3.51
Operating Systems: Windows NT 3.51 on i386 only, and Windows NT
4.0
To install the Server Info tool, copy the required file to the desired location.
SrvInfo.exe
srvinfo computer
computer
The name of a computer you want information about.
The NT Info tool generates information about a specified computer running Windows® NT and displays this data at the command line. If you do not specify a computer, the tool generates information about the computer that the tool is being run from. The following is an example of Server Info output:
C:>srvinfo \\waitress02
Server Name: waitress02
Security: Users
NT Type: NT Advanced Server
Version: 4.0, Build = 1381, CSD =
Domain: WAITRESS
PDC: \\WAITRESS02
IP Address: 0.0.0.0
CPU[0]: x86 Family 5 Model 2 Stepping 5
Drive: C$
[File System] FAT
[Size] 1010 MB
[Free] 251 MB
Drive: D$
[File System] NTFS
[Size] 2048 MB
[Free] 784 MB
Services:
[Running] Alerter
[Running] Computer Browser
[Stopped] ClipBook Server
[Running] DHCP Client
[Running] EventLog
[Running] Server
[Running] Workstation
[Running] License Logging Service
[Running] TCP/IP NetBIOS Helper
[Running] Messenger
[Stopped] MSDTC
[Running] MSSQLServer
[Stopped] Network DDE
[Stopped] Network DDE DSDM
[Running] Net Logon
[Stopped] Network Monitor Agent
[Running] NT LM Security Support Provider
[Running] Plug and Play
[Running] Remote Access Autodial Manager
[Running] Remote Access Connection Manager
[Stopped] Remote Access Server
[Stopped] Directory Replicator
[Running] Remote Procedure Call (RPC) Locator
[Running] Remote Procedure Call (RPC) Service
[Stopped] Schedule
[Running] SMS_CLIENT_CONFIG_MANAGER
[Running] SMS_EXECUTIVE
[Running] SMS_HIERARCHY_MANAGER
[Running] SMS_INVENTORY_AGENT_NT
[Running] SMS_PACKAGE_COMMAND_MANAGER_NT
[Running] SMS_SITE_CONFIG_MANAGER
[Running] Spooler
[Running] SQLExecutive
[Running] Telephony Service
[Stopped] UPS
[Running] World Wide Web Publishing Service
[Running] SMS Remote Control Agent
Network Card [0]: Intel EtherExpress PRO Ethernet Adapter
Network Card [1]: Remote Access WAN Wrapper
Network Card [2]: Remote Access WAN Wrapper
Network Card [3]: Remote Access WAN Wrapper
Network Card [4]: Remote Access WAN Wrapper
Network Card [5]: Remote Access WAN Wrapper
Network Card [6]: PPTP Adapter
Network Card [7]:
Network Card [8]: Remote Access Mac
Network Card [9]:
Network Card [10]: Remote Access WAN Wrapper
Network Card [11]: Remote Access WAN Wrapper
Network Card [12]: Remote Access WAN Wrapper
Network Card [13]: Remote Access WAN Wrapper
System Up Time: 47 Hr 31 Min 13 Sec
Use the Query Extract tool to run the same SMS queries that are found in Queries in the SMS Administrator console. This tool has two varieties, Microsoft® Excel files and a Microsoft Access file. All files are functionally equivalent.
Processors: i386
Operating Systems: Windows NT 4.0, Windows 95, Windows 98, and Windows
2000
The following file is required to run Query Extract:
SMSexract.xls (SMSextract.xlt)
- or -
SMSextract.mdb
Excel Version
To use Query Extract
1. | Open SMSextract.xls (or SMSextract.xlt). |
2. | In the SMS Login dialog box, enter the name of the server you want to connect to. |
3. | Enter your user name and password, or click OK to log on as the currently logged-on user. |
4. | In the Select Site Query dialog box, select the query to run, then click OK. Results are displayed in the spreadsheet. |
You can refresh results by clicking Run Queries on the Excel tool bar. You can save the information in Excel for later use.
Access Version
To use Query Extract
1. | Open SMSextract.mdb. |
2. | In the SMS Login dialog box, enter the name of the server you want to connect to. |
3. | Enter your user name and password, or click OK to log on as the currently logged-on user. |
4. | In the Named Queries dialog box, select the query to run, then click Run This Query. Results are displayed within the table. |
You can be refresh results from the Tools menu, Macro, Run Macro, autoexec. You can save the information in Access for later use.
Server Enumerator lists all domain controllers in the domain, to which the server belongs. This is the same list of domain controllers targeted by NT Logon Server Manager when configuring logon points. Therefore, the tool might be useful during troubleshooting to help determine why SMS might not be updating particular domain controllers.
Output from Server Enumerator includes:
| • | PDC name |
| • | Domain name |
| • | Domain controllers |
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0 Server and Windows 2000 Server
To install the Server Enumerator tool, copy the required file to the desired location.
Svrenum.exe
svrenum
- or -
svrenum servername
If no server is specified, domain information for the local computer is enumerated. Otherwise, you can specify the the remote server to enumerate by including its computer name after the command.
Preinst passes commands to Hierarchy Manager while Hierarchy Manager is running. Use this tool to diagnose problems in a site, repair a site, or stop all SMS services at a site. For example, suppose that you incorrectly removed an SMS site by removing a child site from its parent site without detaching it first. You can use Preinst to bypass the SMS Administrator console and delete the incorrectly removed site from the parent site database.
Note: Because a secondary site does not have its own database, use only the /stopsite command-line option when using this tool at a secondary site. Because you cannot use the /syncparent command-line option at a secondary site, you can stop and start SMS_EXECUTIVE instead. This will force the current site control file to be forwarded to the parent site.
Processors: i386 and Alpha Operating Systems: Windows NT 4.0
Install Preinst by copying Preinst.exe to the SMS primary or secondary site where it will be used.
Preinst.exe
preinstoptions
/deinstall:Secondary_Site_Code
Removes the specified secondary site from a site hierarchy. If you want to remove a secondary site from a site hierarchy, first try to remove it by using the SMS Administrator console; if that fails, then use Preinst /deinstall.
/deljob:Site_Code
Deletes all jobs, or commands, that are targeted to the specified site.
/delsite:{Removed_Child_Site_Code, Parent_Site_Code}
Deletes incorrectly removed child sites from the parent site's site database (the braces are required). Use this option if you removed a site before you detached it from its parent. This transaction propagates up the site hierarchy to all parent sites of the current site.
Note: This command does not de-install Removed_Child_Site_Code; it merely removes the site from the local SMS site database and propagates the change up the site hierarchy.
/dump
Writes site control images for all sites to the SMS\Site.srv\Sitecfg.box directory. (An image is a binary representation of the site control file, which is stored in the SMS site database. The dumped site control file image is a sum of the base image plus the pending delta images.) After dumping a site control file image with Preinst, the file name will be in the format SMS_Site_Code.scf.
/stopsite
Initiates a shutdown cycle for SMS Site Component Manager, which partially resets the site. When this shutdown cycle is run, some SMS services on a site server and its remote site systems are stopped. These services are flagged for re-installation. As a result of this shutdown cycle, some passwords will be automatically changed when the services are re-installed.
Note: If you want to see a record of shutdown, re-installation, and password changes for SMS Site Component Manager, enable logging for this component before using this command-line option.
After this shutdown cycle is started, it will proceed automatically, skipping any non-responding components or computers. However, if SMS Site Component Manager cannot access a remote site system during the shutdown cycle, the components that are installed on the remote site system will still be re-installed when SMS Site Component Manager is restarted. When it is restarted, SMS Site Component Manager will try to re-install all services that are flagged for re-installation until it succeeds.
You can restart SMS Site Component Manager using Service Manager. Once restarted, all affected services will be de-installed, re-installed, and restarted. Once you use the /stopsite option to initiate the shutdown cycle, there is no way to avoid the re-installation cycles after SMS Site Component Manager is restarted.
After the site services have been stopped with /stopsite, starting them with the Services control panel icon or Net Start command has the same effect as starting the services with Service Manager.
For details about site shutdown or site reset, see SMS 2.0 Security Essentials.
/syncchild:Site_Code
Synchronizes a child site with the parent site. Site_Code is the child site to synchronize. Syncchild simulates a child site attachment so all the components at the current site get triggered by a site attach notification for the specified child site, thereby updating the child site. For example, Collection Evaluator will send all collection information to the child site, and package definitions will be sent to the child site.
/syncparent
Forces all site control images in the site database to simultaneously propagate up to the parent site of the current site. This propagation includes the site control images of all subsites stored in the site database of the current site. Use this option when sites are out of synchronization due to time lags or other failures. Because secondary sites have no site database for Preinst to operate on, stop and start SMS_EXECUTIVE to force the current site control image to be forwarded to the parent site.
/upgrade:Secondary_Site_Code
Upgrades a secondary site. Use this option to upgrade failed sites if a global upgrade fails to upgrade all secondary sites.
Use the APM Spy tool to view internal Advertised Program Manager data for a client in a readable format. APM Spy is a console tool that you should install and run on a client. For more information, see the following topics:
| • | Using APM SPY |
| • | Description of APM Spy Output |
Processors: i386
Operating Systems: Windows NT 4.0, Windows 98, and Windows 95
To install the APM Spy tool, copy APMSpy.exe to the ..\MS\SMS\Core\Bin directory on the client. The APM Spy tool uses CliBase.dll and CliLog.dll, which are located in this directory.
APMSpy.exe
apmspy
When you run the APM Spy tool, you are prompted to enter a value to indicate the type of information you want to view. The following is a list of values you can enter and a description of the information that appears:
Oprogram_number
Displays the merged advertisement information (offer) that the client receives for the specified program.
Iprogram_number
Displays the items (list information) that appear in the Advertised Programs Monitor and Advertised Programs Wizard for the specified program.
Dprogram_number
Displays the program properties that appear in the Advertised Programs Monitor and Advertised Programs Wizard for the specified program.
S
Displays the programs that are scheduled to run on the client.
T
Displays the programs that are waiting for a trigger before they can run on the client. Triggers include logon, logoff, or another program that must run first.
C
Displays the interprocess communication (IPC) connections for the client. The Advertised Programs Monitor, Advertised Programs Wizard, Offer Data Provider, and Program Execution Agent all rely on the IPC mechanism to communicate with the Advertised Programs Manager (SMSAPM32).
X
Quits the APM Spy tool.
The APM Spy tool produces an output file that reports job status, run status, and various flags. This topic includes tables that describe the status codes and flag codes that APM Spy reports.
This topic includes the following tables:
| • | Table 1. Job Status Codes |
| • | Table 2. Run Status Codes |
| • | Table 3. Program Flag Codes |
| • | Table 4. Advertisement (Advert) Flag Codes |
| • | Table 5. DateTime Flag Codes |
Table 1 Job Status Codes
| Job Status | Short Name | Description |
0 | Success | The advertised program has run successfully. |
1 | Not yet run | The advertised program has not yet been attempted. |
2 | Stopped waiting | The advertised program took longer than expected and was terminated by the user. |
3 | Check at restart | The advertised program restarted the computer. The Advertised Programs Manager looks for the MIF file after the computer is restarted. |
10 | Internal error | The advertised program did not run because of an internal error. |
11 | Program error | The advertised program did not succeed. Error text might be available. |
12 | Network down | The advertised program did not run because the client could not access the network. |
13 | Unknown | Unknown error. |
14 | Could not find file | The advertised program did not run because the executable file could not be located. |
15 | Access denied | The advertised program did not run because access to the executable file was denied. |
16 | Insufficient memory | The program did not run because not enough memory is available. |
17 | Disk full | The advertised program did not run because there was not enough disk space. |
18 | User cancelled | The user cancelled the advertised program. |
20 | Bad removal key | The uninstall command line for the advertised program could not be found. |
Table 2 Run Status Codes
| Run Status | Short Name | Description |
0x0 | Unknown | The status of the advertised program is not yet determined. |
0x1 | Not running | The advertised program is scheduled but is not currently being prepared to run. |
0x2 | Counting down | The countdown dialog box is counting down. When it reaches zero, the advertised program runs (unless it is unscheduled before it reaches zero). |
0x3 | Running | The advertised program is currently running. |
Table 3 Program Flag Codes
| Program Flag | Short Name | Description |
0x00001000 | Disabled | The command is disabled by the administrator. The advertisement for this advertised program is not be honored. |
0x00002000 | Unattended | The advertised program does not require user input. |
0x00004000 | User context | The advertised program must run in the user context. |
0x00008000 | Advanced rights | The advertised program requires Administrator rights. |
0x00010000 | Every user | Every user for whom the program is valid must run the advertised program. For example, the program might modify the user part of the registry or the user profile. |
0x00020000 | No user | The advertised program runs only when no user is logged on. |
0x00040000 | OK to quit | The advertised program restarts the computer. The Advertised Programs Manager accepts shutdown as an indication that the program has succeeded. |
0x00080000 | OK to restart | When the advertised program has run successfully, the Advertised Programs Monitor restarts the computer. |
0x02000000 | OK to log off | When the advertised program has run successfully, the Advertised Programs Monitor logs the user off. |
0x00100000 | UNC path | Use a UNC connection to run the advertised program instead of using a drive letter connection. |
0x00200000 | Persistent | The network connection that is used to run the advertised program persists on the client computer. |
0x00400000 | Minimized | The advertised program runs minimized. |
0x00800000 | Maximized | The advertised program runs maximized. |
0x01000000 | Hide window | The advertised program runs in the background. No dialog boxes are displayed. |
0x04000000 | Run account | The advertised program requires specific SMS administrator-defined account privileges to run. |
0x08000000 | Any platform | The advertised program does not verify the client's platform before running. |
0x10000000 | Still running | The Advertised Programs Monitor displays a dialog box to the user indicating that the program is still running. This dialog box appears 15 minutes after the estimated run time has elapsed. |
0x20000000 | Support uninstall | When the advertised program has expired, the program runs the uninstall program from the registry key. |
0x40000000 | Bad platform | The advertised program cannot run because the client's platform is not supported. |
Table 4 Advertisement (Advert) Flag Codes
This table lists the advertisement flag codes that might be listed under the term Advert in the APM Spy output file.
| Advert Flag | Short Name | Description |
0x01000000 | Hidden | The advertised program is not displayed in the Advertised Programs Wizard or the Advertised Programs Monitor (for example, an SMS client component installation program). |
0x02000000 | No display | The advertised program is displayed in the Advertised Programs Monitor only. It is not displayed in the Advertised Programs Wizard. |
0x04000000 | On slow network | If this flag is set, the advertised program runs even if the network connection is determined to be slow. If this flag is not set, the advertised program does not run if the network connection is determined to be slow. |
0x08000000 | Replace | The advertisement replaces any other existing advertisement information for the same package and program. |
0x10000000 | Remove | The advertisement is removed. |
0x20000000 | New | The Advertised Programs Wizard for this user has not previously encountered this advertised program. |
0x40000000 | Nowhere | The advertised program has not been distributed. |
0x80000000 | Not orphaned | The advertised program is not obsolete. |
Table 5 DateTime Flag Codes
This table lists flag codes that might be listed under the term DateTime in the APM Spy output file.
| DateTime Flag | Short Name | Description |
0x00000001 | Presented | The advertised program is displayed after the specified time but is not valid before this time. |
0x00000002 | Expires | The advertised program is not valid after the specified expiration time. |
0x00000004 | Available | This code is not implemented. |
0x00000008 | Unavailable | This code is not implemented. |
0x00000010 | Mandatory | The advertised program is mandatory and runs according to the administrator-defined schedule. |
0x00000020 | ASAP | The advertised program runs immediately unless the program is waiting for a requirement to be met, such as a user to log on or log off. |
0x00000040 | Scheduled | The user scheduled the advertised program to run on the specified date and time. |
0x00000080 | Last run | Indicates the time that the advertised program was last run. |
0x00000100 | On startup | The advertised program runs when the computer is started. |
0x00000200 | On logon | The advertised program runs when a user logs on. |
0x00000400 | On logoff | The advertised program runs when the user logs off. |
0x00000800 | Modified | Indicates the last time the advertised program was modified. |
0x00001000 | Recurring | The advertised program has a recurring assignment. |
0x00002000 | Start run | Indicates when the command line was last executed. |
Use the Client Cleaner tool to remove an SMS 2.0 client by removing all SMS client components.
Note: You must have Administrator rights on the client computer when using this tool. Otherwise some SMS 2.0 files and registry settings will not be removed.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0, Windows NT 3.51, Windows 98, and Windows 95
You must install and run the Client Cleaner tool on the client. To install Client Cleaner, copy the required files to the desired location. All required files must reside in the same directory.
20CliCln.bat
Hammer.exe
Kill.exe
SetEvnt.exe
20clicln.bat [/SCRUB]
/SCRUB
Causes the SMSCFG.INI file to be deleted from the directory indicated by %SMS_LOCAL_DIR%.
This is a more thorough cleanup since the smscfg.ini file may contain the
previous SMS identifier used by the client.
Allows the administrator to set and check the travel-mode options on the client using a command line tool. This is useful in situations where clients may move from site to site within the enterprise and the user should not be bothered with a dialog box each time the client tries to join a new site. Keeping travel mode active is valuable to prevent the SMS client from uninstalling itself when it is temporarily not a member of any site(s), but the default setting for active travel mode is to prompt the user when site assignments change.
Processors: i386 and Alpha
Operating Systems: Windows NT, Windows 98, and Windows 95
To install the Client Travel Mode tool, copy the required files to the desired location. If the tool will be used through a login script, it should be copied down to the client one time only through the script and then run locally to reduce unneeded network traffic.
CliTravl.exe
ChkTravl.bat
CliTravl [/TRAVEL=ON | /TRAVEL=OFF] [/PROMPT=ON | /PROMPT=OFF]
By specifying no arguments, it returns a DOS errorlevel of 1 if travel mode is active, 0 if it's not active.
Use the Client Upgrade Control tool to specify whether a client should upgrade itself to a later version or not. This can be important to control network bandwidth utilization when many clients might upgrade simultaneously, as well as when remote clients using dial-up connections should be allowed to upgrade to a later version.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0, Windows 98, and Windows 95
File Required for Client Upgrade Control
CliUpgrade.exe
Client Upgrade Control Syntax
CliUpgrade.exe [/S | /Disable | /Enable]
/S
Runs the tool silently, which prevents informational or other messages from from being displayed.
Using Client Upgrade Control - Overview
Run the utility (CliUpgrade.exe) with the /Disable switch to disable the ability of a client to upgrade itself. While the client agents function as usual, Client Component Installation Manager (CCIM) will not upgrade any client components. Also, while upgrade is disabled, the SMS client cannot repair itself if any SMS client files are deleted. Additionally, the client cannot apply hotfixes.
When you want to allow the client to upgrade, run the utility with the /Enable switch. The next time CCIM performs its maintenance cycle, it detects the request to upgrade and will upgrade to the service pack.
You can use Client Upgrade Control on many clients by sending it as an SMS advertisement. You could also send it in e-mail messages or other techniques suitable for distributing small files. By using SMS advertisements you can also target specific clients based on whatever criteria is appropriate. You can run the utility manually from anywhere on a client and it can also be run it from logon files. When using Client Upgrade Control as part of an automated process, you should include the /S switch, ensuring that users do not see informational or other messages.
If you have clients that are at the end of slow network links, you can send CliUpgrade.exe to all of them with the /Disable switch. This ensures that they do not try to upgrade simultaneously over the slow link. You can then send the file with the /Enable switch to a small number of clients each day, ensuring that the upgrades don't overwhelm the network link. You can also use the same approach with large sites.
Similarly, if you have clients that are mobile, but will eventually go back to their home site, you can send them CliUpgrade.exe with the /Disable switch, and then run the utility with the /Enable switch when they are at their home site. You can determine this with slow network link testing, as done in SMSls.bat. This technique can be difficult to administer, especially if you have many users to support. In that case, you might want to automate this technique by changing your logon scripts to test for a slow network link, and if one is detected, then run the utility to disable the upgrade. If a slow network link is not detected, then Client Upgrade Control will run to enable the upgrade.
For details, see Deploying SMS Service Packs.
Using Client Upgrade Control - Details
SMS 2.0 SP2 Client
If CCIM detects the registry switch (flag) to not upgrade, it does not run Clicore.exe, nor will it attempt to upgrade any optional components. All other SMS client processes (inventory, software distribution, and so forth) continue to function as expected. CCIM also functions as usual. (It generates discovery data, verifies assignment, checks heartbeat, verifies APM operations, and so forth.) However, after each component is verified, it reports:
>>> Core operations have been postponed on this client!
On all clients the registry is updated, although the switch has no effect on clients running SP1 or earlier. In SP2, CliEx32.dll detects the registry update and aborts its processing.
Attempts to upgrade disabled clients generates a weekly status message indicating that they are prevented from upgrading. The status message is:
message ID 10222
The status message is only generated by clients running SMS 2.0 SP2 or later. SP1 or earlier clients do not generate the status message. The status message is:
SMS Client Component Installation Manager (CCIM) has postponed client-agent maintenance operations on this client computer. The postponed operations include upgrades, verifications, and deinstallations of the current client agents.
On SP2 clients, you can determine whether the client is set to be upgraded or not by checking the following registry key:
HKLM\SOFTWARE\Microsoft\SMS\Client\Configuration\Client Properties\Disable CCIM Core Command Operations
The value is set to True when disabled. If enabled, the value is removed from the Registry (and the CliEx32.dll file, if replaced, is returned to normal). When the upgrade should be completed on all clients, you can collect this registry key in SMS hardware inventory to find any clients that can be upgraded (active clients vs. decommissioned computers) but haven't been because of this flag. However, you have to adjust SMS_def.mof to collect the information. You can advertise the file with the /Enable switch to all of those clients.
Client Upgrade Tool (DisableClientUpgrade.reg and EnableClientUpgrade.reg)
This tool has the same purpose as Client Upgrade Control: to specify whether a client can upgrade itself to a later version or not.
| • | This allows you added control over network bandwidth utilization consumed as SMS clients automatically upgrade to newer versions of the SMS client. |
| • | The delivery mechanism of the disable/enable is completely flexible - you can run it using collections and software distribution, or send it by mail, or run it in a logon script or from a Web page. |
| • | Using the login script slow link detection (and if users are running the logon script), you could set up the logon script to "disable" if a slow link, and "enable" when a fast link is detected. |
| • | Because this procedure can prevent clients from upgrading and obtaining needed fixes that exist in newer versions of the SMS client, the SMSClient.mof tool has been revised so that you can inventory clients and determine if they have been disabled or not. For details, see Client Component MOF File Tool (SMSClient.mof). |
| • | Client Upgrade has the same platform requirements as Client Upgrade Control, however Client Upgrade Tool runs only on SMS 2.0 SP2. |
| • | To install the Disable and Enable Client Upgrade tool, copy the required files to the desired location. |
| • | To use the tool, run the .reg file on the client computer. |
| • | Required files: DisableClientUpgrade.reg and EnableClientUpgrade.reg |
SMS 2.0 SP1 or Earlier Client
When run with the /Disable switch, the utility prevents any functions of CliEx32.dll from completing, including creating discovery records. As a result, logon discovery records are not generated. This causes CCIM to report an error and to retry the operation hourly. This does not generate any extra network traffic because the error occurs early in the CCIM cycle.
This is accomplished by replacing CliEx32.dll with a modified .dll (CliEx32.dll is renamed to ClTweak.dll). When CCIM attempts to load certain functions from CliEx32.dll, it is unable to, and it reports an error in Ccim32.log when the client is disabled. The modified CliEx32.dll includes enough functionality to permit the Systems Management control panel application to view the current client settings. The error reported is:
ERROR: Failed to get procedure "CollectDiscoveryData" address from DLL cliex32.dll - #127 The specified procedure could not be found
Use the Client Utilities tool to perform various SMS functions on a client including the following:
| • | Signal a Start Cycle event for a client component. The Start Cycle event forces the client component to cycle. |
| • | Start a client component. |
| • | Stop a client component. |
| • | Display the schedule of a client component in readable format. |
| • | Register an application that the client launchers will start. |
For a list of client components that can be used with this tool, see Using Client Utilities.
Processors: i386
Operating Systems: Windows NT, Windows 98, and Windows 95
You must install and run the Client Utilities tool on the client. To install Client Utilities, copy the required file to the desired location.
Cliutils.exe
CliUtils command parameter_list
/kickcomponent_name
Initiates the Start Cycle event for the specified client component.
/startcomponent_name
Initiates the Start event for the specified client component.
/stopcomponent_name
Initiates the Stop event for the specified client component.
/sched schedule_string
Decodes the Schedule List string.
/appreg
Registers an application that the client launchers will start. After this command is issued, the Client Utilities tool prompts the user to enter information about how the application should be registered. To use this command-line option, you must understand the client launchers.
When you use the Client Utilities tool, you can specify the following client components:
Clisvcl (Client Service NT)
Runs on Windows NT clients and starts and monitors the state of all service-context SMS client components (those that run even when the user is logged off). This client component runs continually on all Windows NT clients. CCIM and Copy Queue run as threads of Client Service NT.
Clisvc95 (Client Service 98/95)
Runs on Windows 98 and Windows 95 clients and starts and monitors the state of all service-context SMS client components (those that run even when the user is logged off). This client component runs continually on all Windows 98 and Windows 95 clients. CCIM and Copy Queue run as threads of Client Service 98/95.
Ccim32 (Client Configuration Installation Manager)
Ensures that each client is correctly installed and assigned to the correct sites. As mentioned earlier, this client component also keeps the client data and the SMS site server data synchronized. CCIM runs as a thread of the SMS Client Service.
SMSapm32 (Available Programs Manager)
Runs software on the client, including advertised programs. This client component also runs the installation programs for the optional SMS client components.
SMSmon32 (Advertised Programs Monitor)
Runs the software distribution process on clients. This client component is installed only when the Advertised Programs Client Agent is enabled for the client.
Process Viewer is a Windows 95 tool that is especially useful for investigating process memory use. You can use this tool's graphical user interface to display information about processes on local and remote computers running Windows 95 or Windows 98. Process Viewer is similar to Windows NT Task Manager. You can use Process Viewer 95 to stop a running process and change the base priority class of the process.
Processors: i386 and Alpha
Operating Systems: Windows 98 and Windows 95
To install the Process Viewer 95 tool, copy the required files to the desired location.
PView95.exe
pview95
Use the Zap tool to delete a file that is in use or that cannot otherwise be deleted. After you run this tool and restart the computer, the file is deleted.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0
To install the Zap tool, copy the required file to the desired location.
Zap.exe
zap filename
filename
The path of the file to be deleted.
Use the Delete Client MIF tool to create a Delete MIF file, which deletes a client from an SMS site database and all SMS site databases above it. This tool deletes clients both up and down a hierarchy.
When you use the Delete Client MIF tool with a SQL Server trigger, you can run the tool automatically whenever a client is deleted. This tool can also delete clients down a hierarchy by creating command files and sending them to child sites as PCMSVC jobs.
Processors: i386 and Alpha
Operation Systems: Windows NT 4.0
DelMIF.dll
DelMIF.exe
delmifSMSID [output_directory]
delmif@SMSID_file [output_directory]
SMSID
The SMS ID of the client that will be deleted.
SMSID_file
A file containing several SMS IDs that will be deleted, one per line. All characters after the first space on a line are ignored.
An easy way to create SMSID_file is to run a query in SMS Administrator console, select the applicable computers, and paste the SMS IDs into a Microsoft Notepad file. (The SMS ID is the first column in the query output.)
output_directory
The directory where the Delete MIF file is written. The defaults are the LastLogonServerPath and ISVMIFCollectionPoint, which are found in C:\SMS.ini. The output directory can be on any logon server in Logon.srv\ISVMIF.box or on the site server in Site.srv\ISVMIF.box. (The Site.srv directory provides a slightly faster response.) You must specify an output directory.
The following command creates a Delete MIF file for the client with the SMS ID ABC00012:
delmif ABC00012
The following command creates a Delete MIF file for the client with the SMS ID ABC00345 and writes the Delete MIF file to D:\mydirectory:
delmif ABC00345 d:\mydirectory\
The following command creates a Delete MIF file for each client with an SMS ID listed in Del.dat:
delmif @del.dat
SQL Server Trigger allows you to delete clients by using either SMS Administrator console or Dbclean.exe and to generate Delete MIF files automatically. These Delete MIF files will flow up the hierarchy as any other Management Information Format (MIF) file does. (These MIF files are processed by the current site before they are sent up the hierarchy, which can decrease performance on the current site server.)
To run Delete Client MIF with a SQL Server Trigger, run the following two commands from ISQL/W or a Query window in Enterprise Manager. You can copy and paste these two command groups into the SQL Query window.
Modifying the EXEC line to include an output directory (for example, exec master..xp_delmif @smsid, "D:\SMS\Site.srv\ISVMIF.box\") is strongly recommended. You must be logged on with sa access to create extended stored procedures. (For more information, see the next section, "Limitations of Using Delete Client MIF with a SQL Server Trigger.")
From the Master database:
sp_addextendedproc 'xp_delmif', 'delmif.dll'
From the SMS site database:
create trigger delmachine
on Machines
FOR DELETE
AS
DECLARE @smsid varchar(255)
DECLARE tIDs CURSOR FOR
select SMSID0
from MachineDataHistoryTable m (index = dwMachineID_idx),
Identification_SPEC i, deleted d
where i.datakey = m.SpecificKey and
GroupKey = 1 and
m.ArchitectureKey = 5 and
m.dwMachineID = d.dwMachineID
open tIDs
FETCH NEXT
FROM tIDs
INTO @smsid
WHILE (@@fetch_status <> -1)
BEGIN
exec master..xp_delmif @smsid
FETCH NEXT
FROM tIDs
INTO @smsid
end
close tIDs
deallocate tIDs
The SQL Server trigger method works best when the instance of SQL Server containing the SMS site database is on either the site server or an SMS logon server. Using an instance of SQL Server that contains the SMS site database on a stand-alone server creates a problem.
By default, SQL Server runs under the local system account, which is a special Windows NT account that has full administrative access to the local computer but has no network access. Where, then, can the program write the MIF file? (On site servers and SMS logon servers, there is a directory on the local computer to which the process can write.) There are at least two possible solutions:
| • | Configure the computer running SQL Server as an SMS logon server, or move SQL Server to an SMS logon server. |
| • | Run the SQL Server service under an account that has rights to your SMS logon servers or to the site server. |
There might be a performance problem if many computers are deleted at once.
When you use the SQL Server trigger, make sure the SQL Server process has access to DelMIF.dll. Place this file either in the same directory as SQL Server or somewhere in the path.
Use the Duplicate Data Key Checker tool to generate a report that lists rows in the SMS site database with duplicate datakey values. The report is named DatDupCk.log.
The Duplicate Data Key Checker requires that the SMS SQL server be running Microsoft SQL Server 6.5 SP3 or later. This tool should be run from a computer with the SMS Administrator console installed and functioning properly to ensure that all required DLL files are available.
Processors: i386 and Alpha
Operating Systems: Windows NT with the SMS Administrator console
installed
To install the Duplicate Data Key Checker tool, copy the required file to the desired location.
DatDupck.exe
datdupcksql_server_name sql_login sql_password sms_database
- or -
datdupck (You will be prompted to enter the parameters)
When you attach sites to one another, it is possible for information in the SMS site database to be duplicated incorrectly. Symptoms of this can be apparent in data that is stored as COMMON rather than SPECIFIC according to the Desktop Management Task Force (DMTF) specifications. Examples of this would be in the PC_BIOS or Disk data, although any COMMON storage might be affected. Symptoms might be displayed as a duplicate drive C or no drive A for certain systems. Other symptoms might exhibit themselves as well, but this depends on the state of the child and parent databases before the site attachment.
For more information, see Microsoft Knowledge Base Article Q168565.
Use the Duplicate Data Key Cleaner tool to remove duplicate data key inventory from the database.
The Duplicate Data Key Cleaner requires that the SMS SQL server be running Microsoft SQL Server 6.5 SP3 or later. This tool should be run from a computer with the SMS Administrator console installed and functioning properly to ensure that all required DLL files are available. Additionally, The SMS site database should be in single user mode to ensure that no users or SMS services are accessing the database at the time Duplicate Data Key Cleaner runs. All SMS services should be stopped and no SMS Administrator console should be running against the SMS site database while this tool runs.
Warning: The Duplicate Data Key Cleaner tool modifies the SMS site database.
Before using the Duplicate Data Key Cleaner tool, first execute these DBCC commands from ISQL/W or Microsoft SQL Enterprise Manager:
| • | dbcc checkdb |
| • | dbcc newalloc |
Refer to Microsoft SQL Server Books Online (Administrators Companion, Troubleshooting Overview, Examining the Error Log and DBCC Output) and verify that there are no errors. If any errors are returned, do not run the Duplicate Data Key Cleaner; contact Microsoft Product Support. If no errors are returned, perform a dump of the SMS site database and then proceed.
Depending on the number of duplicate data key entries, this tool can delete a large amount of information from your SMS site database. It is necessary to delete this information to clean the duplicate data keys or the information will be reported by hardware and software inventory at the next inventory interval. Because this tool can delete a large amount of information, you must ensure that your SMS log size and TEMPDB size are sufficient. Guidelines for these are:
TEMPDB - SMS Site Database Size * .25
SMS log size - SMS Site Database Size * .35
Processors: i386 and Alpha
Operating Systems: Windows NT with the SMS Administrator console installed.
To install the Duplicate Data Key Cleaner tool, copy the required file to the desired location.
DatDupcl.exe
datdupclsql_server_namesql_loginsql_passwordsms_database
When you attach sites to one another, it is possible for information in the SMS site database to be duplicated incorrectly. Symptoms of this can manifest in data that is stored as COMMON rather than SPECIFIC according to the Desktop Management Task Force (DMTF) specifications. Examples of this would be in the PC_BIOS or Disk data, although any COMMON storage might be affected. Symptoms might be displayed as a duplicate drive C or no drive A for certain systems. Other symptoms might exhibit themselves as well, but this depends on the state of the child and parent databases before the site attachment.
For more information, see Microsoft Knowledge Base Article Q168565.
Use the Duplicate SMS ID Cleaner tool to assign a unique SMS ID to computers with duplicate SMS IDs, as identified by the Duplicate SMS ID Locator tool. For 32-bit clients, the Duplicate SMS ID Cleaner tool can be used with a logon script to automatically delete the SMS.ini file on a client computer that has a duplicate SMS ID. When the computer logs on to the network, the client is given another SMS.ini file with a unique SMS ID. For both 16-bit and 32-bit clients, SMS 1.2 Package Command Manager (PCM) can be used to run this tool on clients.
The Duplicate SMS ID Cleaner tool requires the output from the Duplicate SMS ID Locator tool, a file named SMSiddup.log. This file contains the SMS ID, sitecode, computer name, domain, and the last hardware-scan time for each computer identified. However, you can reduce the time required to run the Duplicate SMS ID Cleaner tool by using the Duplicate SMS ID Parser tool to reduce the output of SMSiddup.log to just the SMS ID. The resulting file is named Shortdup.txt. Either of these output files can be used with the Duplicate SMS ID Cleaner tool.
For more information about using the Duplicate SMS ID Cleaner tool, see "Using Duplicate SMS ID Cleaner" later in this section.
Processors: i386 and Alpha
Operation Systems: Windows NT 4.0, Windows 98, Windows 95, and
Windows 3.1
12DupCln.exe
Output file
12dupclnoutput_file
output_file
The file containing the duplicate SMS IDs (either SMSiddup.log or Shortdup.txt)
Before you use the Duplicate ID Cleaner tool, verify that the cause of SMS ID duplication has been corrected. You must also delete the computer from the SMS site database, otherwise the site database might become corrupted.
For 32-bit clients, you can run the Duplicate ID Cleaner tool from the logon script. This tool must be run before SMSls.bat is called. Be sure to use the START/WAIT command to avoid file locking errors. The following is a sample script entry:
START/WAIT %0\..\12DUPCLN Shortdup.txt
The Duplicate ID Cleaner tool compares the client SMS ID to the SMS IDs contained in the specified output file (either SMSiddup.log or Shortdup.txt). If a match is found, this tool renames the SMS.ini file on the client to SMS.dup. The SMSls.bat file will then assign a new SMS.ini file to the client, thus assigning a unique SMS ID to the client.
In addition to renaming the SMS.ini file on the client, the Duplicate ID Cleaner tool also places a file, Dup.tst, on the client as a flag. This file is placed in the root system directory. Each time this tool is run from the logon script, it will first check for this flag file. If it finds this file, the tool exits, thereby speeding up the logon process for the client.
The specified output file (either Shortdup.txt or SMSiddup.log) must reside in the same directory as this tool (12DupCln.exe). For efficient execution, place these files in the NETLOGON share and replicate them to all of your logon servers.
For both 16-bit clients and 32-bit clients, you can use SMS 1.2 Package Command Manager (PCM) to distribute this tool to clients. If you choose this option, be sure you force the client to log off the network and then log on as soon as possible in order to receive a new client ID.
Use the Duplicate SMS ID Locator tool to generate a report, SMSIDDup.log, that reports computers with duplicate SMS IDs. Although the SMS Database Manager will locate most duplicate SMS IDs, it is not capable of locating all duplicate SMS IDs. Specifically, the Duplicate SMS ID Locator tool is designed to find duplicate SMS IDs in which two or more computers share the same "cloned" SMS.ini file. In this case, the computers will share the same SMS ID and will be referenced in the same data table. Because the data for the computers is stored in the same data table, the SMS Database Manager will not locate the duplication. For more information about these types of duplicate SMS IDs, including how to remove them from the SMS site database after they have been located, see the "Using the SMS ID Locator" section later in this document.
The Duplicate SMS ID Locator tool is an SMS 1.2 tool that requires that the SMS SQL Server be running Microsoft SQL Server 6.5 SP3 or later. You must run this tool from a server with the SMS Administrator console installed and functioning properly to ensure that all required DLL files are available.
Processors: i386 and Alpha
Operation Systems: Windows NT 4.0
To install the Duplicate SMS ID Locator tool, copy the required file to the desired location.
SMSIDDup.exe
smsiddupsql_server_namesql_loginsql_passwordsms_database
- or -
smsiddup (You will be prompted to enter the necessary parameters)
Note: If sql_password is null, use double quotes for the password field:
smsiddup sql_server_namesql_login""sms_database
In SMS, it is possible to have two different types of duplicate SMS IDs. With the first type, two or more computers share the same SMS ID, but the data for each of these computers is stored in a separate data table. SMS Database Manager will locate this type of duplication. Querying on duplicate SMS IDs in the SMS Administrator console will probably produce multiple records which fit this scenario.
However, the second type of duplicate SMS ID is much more difficult to locate. This is because two or more computers that share the same SMS ID also share the same data table. The SMS Database Manager will not locate this type of duplication. You must use the Duplicate SMS ID Locator tool to find these duplicates.
When a different computer using the same SM SID is inserted into the database, SMS will move the "old" computer data into the historical computer data table. In this case, SMS is not aware that there is more than one computer using the SMS ID. Querying on the SMS ID in the SMS Administrator console produces one record. Viewing the history for the Identification group in this record shows that the computer name changes frequently. However, the computer name does not actually change - multiple computers report using different names.
This second type of SMS ID duplication is usually the result of having a "cloned" SMS.ini file present (an imaged installation of a computer is performed with a pre-existing SMS.ini in the image). This second type of duplication can cause the SMS Dataloader to process computer MIF files very slowly or to hang. These duplicates can also lead to database corruption.
To assist in cleaning up this second type of duplicate SMS ID, the Duplicate SMS ID Locator tool produces a report containing the SMS ID, sitecode, computer name, domain, and the last hardware-scan time for each of these duplicates. These computers should be deleted from the SMS site database and their SMS.ini files should be deleted. After the computers are deleted from the database and their SMS.ini files are deleted, they can be re-inventoried and assigned a new SMS ID. When history and unused common/specific records are removed from the database, remnants of these duplicate SMS IDs are removed.
The SMS.ini file on the client must also be deleted to eliminate the duplicate SMS IDs. If the SMS.ini files on these clients are not deleted, and the computers are merely deleted from the SMS site database, they will show up again in the database after the next inventory and the cleanup process will need to be repeated. You can delete the SMS.ini file manually, or you can use the Duplicate SMS ID Cleaner tool to automatically delete the file when the client logs on to the network. If you use the SMS ID Cleaner tool to automatically delete the SMS.ini file on the client, you might want to use the Duplicate SMS ID Parser tool to optimize the output file from the Duplicate SMS ID Locator tool. This will reduce the amount of time required to match clients logging on to the network with clients listed in the output file.
Use the Duplicate SMS ID Parser tool to parse the output file (SMSiddup.log) from the Duplicate SMS ID Locator tool. The resulting file (Shortdup.txt) lists only the unique SMS ID, one per line, and is much smaller. Using the parsed file can dramatically decrease logon time for the client, although it is not required for using the Duplicate SMS ID Cleaner tool.
Processors: i386 and Alpha
Operation Systems: Windows NT 4.0
12DupCnv.exe
12dupcnv
The Duplicate SMS ID Parser tool requires the output file from the Duplicate SMS ID Locator tool. This output file, SMSiddup.log, must reside in the same directory as the Duplicate SMS ID Parser tool. This tool places the parsed output file, Shortdup.txt, in this same directory, where it can be used by the Duplicate SMS ID Cleaner tool.
Use the QDF Writer and Reader tool to either write a query definition file (QDF) from the query information in the SMS site database, or read a specified QDF into SMS, where it can be manipulated in the SMS Administrator console Query window. You supply the query ID.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0
WriteQDF.exe
writeqdfserver account password database {QDF | query_ID}
[/import | /export] /?
server
The computer running the instance of SQL Server that contains database.
account
The account used to access database.
password
The password for account. If the password is blank or contains spaces, it must have quotation marks around it, for example, "Password".
database
The name of the database containing the query information.
QDF
A QDF that is read into SMS.
query_ID
A query ID for which to write a QDF.
/import
Specifies that a QDF is being read.
/export
Specifies that a QDF is being written, which is the default behavior.
/?
Provides a usage statement.
Use the Status and Configuration Reporter tool to export data (resource usage, status, and configuration) about an SMS site database and its SQL Server computer. This is data that can be read, saved, or pasted into records and reports. This information is helpful when you are troubleshooting SQL problems, planning for hardware upgrades, or restoring SQL Server or an SMS site database.
The Status and Configuration Reporter tool also provides a set of commented SQL commands that are commonly used for work with the SQL Server computer in an SMS hierarchy.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0
To install the Status and Configuration Reporter tool, copy the required file to the desired location.
ChkSMS.sql
To run ChkSMS.sql, open it in an ISQL/w command window and run it. Additional directions are in the ChkSMS.sql file.
Use the Dump Error Message tool to display the text of a message for a specified Windows NT error code generated by Win32 subsystems, drivers, or services. For example, if you receive an error message that references a specific error code, you can use this tool to retrieve the text for the message to help troubleshoot the error.
If an application or event log message dynamic-link library (DLL) is not specified, the message text is obtained from the system message table.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0
To install the Dump Error Message tool, copy the required file to the desired location.
Error32.exe
error32 code[:code][source_name | message_DLL][insertion_string[...]][*]
code
Specifies either a decimal error code for a Windows NT error or an event code for an application or system source, such as SMS. The error code is assumed to be a Win32 error unless source_name or message_DLL is specified.
:code
Specifies another code to form a range - for example, 3:11 specifies codes from 3 to 11, inclusive.
source_name
Specifies an application or system name registered for the Windows NT Event Log. You cannot use this option with message_DLL.
message_DLL
Specifies a full or partial path to a Windows NT event log message DLL file (such as Netmsg.dll). You cannot use this parameter with source_name.
insertion_string
Specifies one or more strings to be inserted into the displayed message.
*
Displays messages for all matching languages and matching severities.
The following command returns Error Code 2 message text, which is taken from the system message table:
error322 The system cannot find the file specified.
The following command returns Error Code 5 message text:
error325 Access is denied.
Use the Dump Scheduler Data tool to view data from a Scheduler send request (.srq) file. You can use the data to troubleshoot software distribution or to gather more information about sender errors.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0
To install the Dump Schedule Data tool, copy the required file to the desired location.
DumpSend.exe
dumpsend instruction_filename
file_name
The name of the Scheduler file to view data from.
The .srq files are located in the following directory (where LAN is the type of sender):
\SMS\Inboxes\Schedule.box\Outboxes\LAN
For example, you can use the following command:
dumpsend x:\SMS\Inboxes\Schedule.box\Outboxes\LAN\2_01skro.srq
Use the NAL Logging tool to enable or disable Network Abstraction Level (NAL) logging on an SMS site server. This tool can be used to troubleshoot network connectivity problems from clients and servers.
When enabled, NAL data is logged to the applicable component log files. Therefore, before using NAL logging, you must first enable logging for the components you are interested in analyzing. NAL logging generates a great deal of data, so you must also increase the log file size. Because NAL logging consumes more CPU time and significantly increase the amount of entries made to log files, it is important to disable NAL logging and decrease the log file size after you capture the necessary data.
For more information about enabling logging and modifying the log file size, see Using NAL Logging.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0, Windows 98, and Windows 95
To install the NAL Logging tool, copy the two required registry files to the desired computer. Run the desired registry file to either turn NAL logging on or off.
Turn_on_nal_logging.reg
Turn_off_nal_logging.reg
turn_on_nal_logging | turn_off_nal_logging
Before you use this tool to capture NAL data, you must first enable logging through the SMS Service Manager. Using the SMS Service Manager, you can enable logging on a component-by-component basis, or you can specify that multiple components are logged to one log file. You can also adjust the log file size. For NAL logging, it is recommended that you set the log file size to 10 MB. Make sure to decrease the log file size and disable NAL logging when you are done.
After you enable logging, you can use the SMS Trace tool to view the log file data in real time. For information about the SMS Trace tool, see SMS Trace Tool.
To enable logging and adjust the log file size
1. | In the SMS Administrator console, navigate to Tools. |
2. | Right-click SMS Service Manager, point to All Tasks, and then click Start SMS Service Manager. |
3. | Expand SMS Service Manager, and then click Components. |
4. | In the details pane, click the components you want. |
5. | Right-click a selected component, and then click Logging. |
6. | Select the Enable logging check box. |
7. | If you selected more than one component, select the Use single log file for all components check box, and then type a path. |
8. | Set the Log size value to the desired size. |
9. | Click OK to save the log-file configuration. |
Use the Read Schedule tool to display schedule string data in a readable format for troubleshooting schedule problems. A schedule string is a representation of the various schedules that you can use with SMS 2.0. Most schedule strings are stored in the site control file and some are stored in the SMS site database. The following is an example of a schedule string:
0001128000100100
You can use these tools to convert this schedule string into a readable format that indicates the start time, next scheduled start time, and recurring intervals.
The Read Schedule tool (ReadSche.exe) is a command-line tool for converting schedule string data to readable format only.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0
To install the Read Schedule tool, copy the required file to the desired location.
ReadSche.exe
readsche.exeschedule_string
schedule_string
The schedule token string.
Use the SMS Trace tool to display SMS service log files in real time. When you run this tool, log-file data is automatically displayed as it is added to the log file. You can install and run SMS Trace on an SMS 2.0 server or client. Before you use SMS Trace, you must first use SMS Service Manager to enable logging.
For more information about using these tools, see the following sections:
| • | |
| • | |
| • |
Processors: i386
Operating systems: Windows 2000, Windows 98, Windows NT 4.0, and Windows 95
Note: Windows 95 and Windows NT 4.0 require Internet Explorer 4.0 or later.
SMS Trace (Trace32.exe) displays log files within a user interface that allows you to monitor the operation of several SMS components. You can open multiple log files simultaneously, and you can create a customized view of the log-file data. Additionally, you can use SMS Service Manager to further customize your view of SMS by specifying that multiple components be logged to one log file and by adjusting the log-file size.
SMS Trace is a good choice for detailed, real-time monitoring of one or more components. You can specify that certain strings or actions be highlighted as they appear on the screen, and you can also filter log-file entries by component, time, thread ID, or entry text. This tool also maintains the entire log file in a window, so historical log-file data is visible at any time.
Important You can adjust the size of the log file by using the SMS Service Manager. If you set the log-file size too high, SMS Trace uses large amounts of memory to simultaneously display many large log files. As a result, if your log-file size is set too high, SMS Trace might reduce the available memory for SMS when it is being used on the SMS Site Server.
To start SMS Trace and view a log file
1. | Start SMS Trace. |
2. | From the SMS Trace File menu, click Open, and then specify a directory and log file to open. |
SMS 2.0 log files for server components are stored in the . .\SMS\Logs directory. Client log files are stored in the %windir%\MS\SMS\Logs directory.
Using SMS Trace, you can open multiple log files simultaneously. You can also configure how the log files are displayed. For example, you can use the Tools menu to specify that a certain string or action be highlighted as it appears in the log file or to filter log file entries by component, time, thread ID, or entry text. You can use the File menu, Preferences to specify the level of detail that is displayed.
This section describes the process of using SMS Trace to monitor site-to-site communications in SMS 2.0 and explains several ways to view the log file data. The process described in this section is simply one example of how you can use SMS Trace.
When monitoring site-to-site communications with SMS Trace, you must perform the following tasks:
| • | Enable logging through SMS Service Manager and specify that log file data for several communications components be logged to one log file. |
| • | Open the log file using SMS Trace. |
When you have performed these steps, you can perform the following optional tasks to view the log file data:
| • | Configure SMS Trace to highlight specified log-file data |
| • | Filter specified log-file data |
| • | Modify columns that are viewed |
| • | Stop adding new log-file data |
Enabling logging
Before you can view log-file data, you must first enable logging through SMS Service Manager. By using SMS Service Manager, you can specify that multiple components be logged to one log file, and you can set the log file size. To monitor site-to-site communications, you specify that the applicable components be logged to one log file.
To enable logging
1. | In the SMS Administrator console, navigate to Tools. | ||||||||
2. | Right-click SMS Service Manager, point to All Tasks, and then click Start SMS Service Manager. | ||||||||
3. | Expand SMS Service Manager, and then click Components. | ||||||||
4. | In the details pane, click SMS_HIERARCHY_MANAGER. | ||||||||
5. | Hold down theCTRL key and select these additional components:
| ||||||||
6. | Right-click SMS_LAN_SENDER, and then click Logging. | ||||||||
7. | Select the Enable logging check box. | ||||||||
8. | Select the Use single log file for all components check box, and then type the following path (or the appropriate path that matches your SMS installation): C:\SMS\Logs\SiteToSite.log | ||||||||
9. | Set the Log size to the desired size. For a large file, set the log file size to 5 MB (approximately three hours of logging). For a small file, set the log-file size to 2 MB (approximately one hour of logging). If NAL logging is enabled, set the log-file size to 10 MB. | ||||||||
10. | Click OK to save the log file configuration. |
Opening a log file
After you enable logging and specify a log file for site-to-site communications, you can view the log file by using SMS Trace. Log file entries appear chronologically.
To view log file data for site-to-site communications
1. | Start SMS Trace. |
2. | In SMS Trace, on the File menu, click Open. |
3. | Navigate to and select the log file you specified for site-to-site communications. For example: C:\SMS\Logs\SiteToSite.log Or, on the File menu, click Open on Server, browse to the server you wish to connect to (or type in the UNC path of the server), and then click OK. Double-click the server log file to open. |
Highlighting log file data
When you use the SMS Trace highlighting feature, all new and existing text that matches the text string you specified is highlighted.
To highlight text
1. | In SMS Trace, on the Tools menu, click Highlight. |
2. | Enter the text string you want to highlight, then click OK. Note: When you use the SMS Trace highlighting feature, you can select the highlight color from the File menu, Preferences. |
Filtering log file data
You can filter log file data by entry text, component, time, and thread ID. You can choose from the following criteria for filtering:
| • | Is equal to |
| • | Is not equal to |
| • | Contains |
| • | Does not contain |
| • | Is later than (for the time value only) |
| • | Is earlier than (for the time value only) |
To filter log file data
1. | In SMS Trace, on the Tools menu, click Filter. |
2. | To enable filtering on one or more columns, select the appropriate check box. |
3. | Select the criteria for filtering, such as is equal to. |
4. | Enter the text, component, time, or thread ID to filter by, then click OK. |
Modifying columns
You can adjust the level of detail that is displayed by resizing, reordering, and adding or removing columns from the view of the log file. To resize a column, drag the heading of the column to increase or decrease its size.
To add, move, or reorder a column:
| • | On the File menu, click Preferences.
|
Preventing new log-file data from being displayed
When SMS Trace is running, it continuously collects new log-file
information. However, you can configure SMS Trace to temporarily not
display new information.
To stop viewing new log-file data:
1. | On the Tools menu, click Pause. No new log-file data will be added to the view in SMS Trace, however new data will continue to be added to the log file. |
2. | To preserve the log-file view, save it as a new file with a different name. |
Use the Client Component MOF File tool to report data on each client component. For each component, the current and pending version is reported along with the current state, such as Not Available, Installed, or Reboot Required. Note that this is the same information that is reported on the client in Control Panel under the Systems Management icon. SMS gathers this data during hardware inventory and displays it in the Resource Explorer under the SMS Client State group class.
To use the Client Component MOF File tool, you must add the contents of the SMSClient.mof file to the SMS_Def.mof file. The SMS_Def.mof file is located on the SMS site server in the following directory: SMS\Inboxes\Clifiles.src\Hinv
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0, Windows 98, and Windows 95
You must add the Client Component MOF File (SMSClient.mof) to the SMS_Def.mof file. To do this, copy the contents of the SMSClient.mof file and append the contents to the end of the SMS_Def.mof file. You can also perform this task by typing a command, like the following, at a command-line:
copy /a SMS_Def.mof + SMSClient.mof SMS_Def_New.mof
After appending SMSClient.mof to SMS_Def.mof, use the MOF Compiler tool (MofComp.exe) to verify that the resulting MOF file will compile. The MOF Compiler tool is installed automatically with SMS 2.0. For a list of command-line options, run the following command at a command line: mofcomp /?
However, the MOF Compiler tool is also part of the Windows Management Instrumentation (WMI) Platform SDK. For more information about compiling MOF files, see the WMI SDK documentation.
After compiling the new MOF file, rename the original SMS_Def.mof to SMS_Def.old and rename new MOF file (SMS_Def_New.mof) to SMS_Def.mof. SMS will automatically replicate the changes to all clients.
Note: Each time you upgrade SMS, the SMS_Def.mof file is replaced. Therefore, you should keep a backup copy of your appended SMS_Def.mof file. Also, if you want to use the MOF Manager tool to edit the new SMS_Def.mof file, you must use the version located on the Systems Management Server 2.0 SP1 compact disc in the following directory: Support\Reskit\Bin\i386\MOFMan. Previous versions of the MOF Manager tool cannot open the SMS_Def.mof file after the contents of the SMSClient.mof file have been appended.
SMSClient.mof
Use the Dump Discovery Data tool to view Network Discovery data from the local discovery data record (DDR) file in a readable format. You must install and run this tool on the client. The Dump Discovery Data tool is a command-line tool.
Note: You might want to adjust your command-line console settings (increase the window height) before you run the Dump Discovery Data tool to accommodate the volume of data that is returned.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0, Windows 98, and Windows 95
To install the Dump Discovery Data tool, copy the required files and place them in the following client directory:
SMS\Core\bin
DiscDump.exe
discdump
Use the Inventory Synchronizer tool to send a hardware or software inventory synchronization request to a client. This tool cannot send a synchronization request to a client that belongs to a child site. Instead, you should run this tool directly from the child site. Also note that you can only run the Inventory Synchronizer tool from an SMS site server.
The Inventory Synchronizer tool uses the following process to synchronize a client:
| • | The user sends a synchronization request by running this tool. |
| • | A .cfg file is created in the server's \\CAP_<SiteCode>\Clidata.box directory. This file includes changes for the client registry. |
| • | When the Client Component Installation Manager (CCIM) cycles on the client, CCIM searches the client access point (CAP) for the .cfg file, and then copies the data from this file to the SMS inventory keys in the client's registry. |
| • | Inventory runs, sending the resynchronized inventory data to the parent site. |
Note: Because the synchronization request depends on CCIM to cycle on the client, the request might take a while to be completed.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0 (SMS site server only)
To install the Inventory Synchronizer tool, copy InvSync.exe to the \SMS\Bin\i386 directory on the SMS site server and verify that the other required files reside in the directory.
BaseObj.dll
BaseSQL.dll
Basesvr.dll
BaseUtil.dll
InvSync.exe
SMSPerf.dll
invsync [hw | sw] client_NetBios
hw
Sends a hardware inventory resynchronization request to the specified client.
sw
Sends a software inventory resynchronization request to the specified client.
client_NetBios
The NetBios name of the client that the request is sent to.
The following syntax sends a hardware inventory resynchronization request to the specified Windows NT client:
invsync hw SMSNTCLI8
The following syntax sends a software inventory resynchronization request to the specified Windows 95 client:
invsync sw SMSWIN95CLI
Use the MIF Checker tool to validate the syntax of a Management Information Format (MIF) file before submitting it to an SMS site system. MIF Checker will report the syntax and semantic errors of a specified MIF file at the command line. You can also specify that the MIF file be parsed and displayed in a readable format.
The MIF Checker tool is designed to help independent software vendors (ISVs) check the syntax of MIF files used to extend hardware inventory.
Note: MIF Checker does not work with delta MIF files.
Processors: i386 and Alpha
Operating systems: Windows NT 4.0
MIFCheck.exe
mifcheck [/dump] file
/dump
Displays the MIF file in a readable format. If you run MIF Checker without specifying the /dump option, the MIF files are checked for syntax errors only.
file
The name of the MIF file.
When you run the MIF Checker tool, the tool reports only one error at a time. Therefore, you must rerun MIF Checker after correcting each error, to verify that each error is resolved.
Use the MOF Manager tool to edit the SMS_def.mof file. This file is the Managed Object Format (MOF) file that specifies which hardware classes and attributes are collected for hardware inventory. The MOF Manager tool does not work with any other MOF files.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0, Windows 98, and Windows 95
MOF Manager is used to edit the SMS_def.mof file only. If you use MOF Manager to try to open any other MOF file using MOF Manager, you will receive an error message. Before you edit the SMS_def.mof file, make a backup copy of this file and place it in another location.
To edit SMS_def.mof
1. | On the Start menu, point to Programs, then click MOF Manager. |
2. | On the File menu, click Open, Locate and open the SMS_def.mof file. |
For detailed information about using the MOF Manager tool to edit the SMS_def.mof file, see Chapter 10, "Customizing Hardware Inventory," in the Microsoft Systems Management Server 2.0 Resource Guide.
Use the Software Inventory Viewer tool to view, in a readable format, data processed by the SMS Software Inventory Processor. You can use this tool to view data from both full inventory files (.sic) and delta inventory files (.sid). You can also use this tool to view data from the software inventory history file (Sinv.his). The output from this tool can be used to verify that the data displayed in the SMS Administrator console is the same data that the client is actually generating.
Processors: i386 and Alpha
Operating Systems: Windows NT 4.0
To install the Software Inventory Viewer tool, copy the required file to the desired location.
SInvView.exe
sinvviewfilename
filename
The name of the file (.sic, .sid, or Sinv.his)
Use the Advertisement Information tool to display information from the header of a package file (.pkg) or an advertised programs offer file (.ofr), including the package ID, name, version, language, MIF file information, program command line, and disk space requirements.
Processors: i386 and Alpha
Operating systems: Windows NT 4.0 (SMS site server only)
To install the Advertisement Information tool, copy the required file to the desired location.
AdvInfo.exe
advinfo [package_file | offer_file]
package_file
The full path name of the package file (.pkg).
offer_file
The full path of the advertised program offer file (.ofr).
The following are directories that normally contain package files and offer files:
SMS\Inboxes\Offerinf.box\
SMS\Inboxes\Pkginfo.box\
Use the Advertisement Status Viewer tool to provide you with the comprehensive status of an advertisement on individual SMS clients or collections over various user-defined intervals.
Advertisement Status Viewer includes the following features:
<