SunLink Server provides a variety of tools that you can use as troubleshooting aids. These tools can be arranged into the following three categories:
Tools used for assessing the status of the server
Tools used for automatic notification of the status of the server
Tools used for debugging specific server problems
The following sections summarize the tools found in each category and briefly describe the use of each in a troubleshooting context.
The SunLink Server program includes multiple tools that you can use to assess the operational status of the server at any given time. Frequent assessment of server status will improve your ability as a server administrator to notice a problem or trend quickly.
Periodic review of server status will provide a fairly stable basis for understanding how a normal problem-free server appears. Over time, information that deviates from the norm will be an indication that something has changed and warrants your attention.
Tools for assessing the status of the server are discussed in the following sections.
A number of events related to the daily operation of the server can be tracked using the SunLink Server Manager event logs (see Chapter 3, Configuring and Managing SunLink Server Software). These events are maintained in one of three event logs: system, security, and application. Administrators should develop and implement an event logging policy and include a review of event logs as a regular part of troubleshooting activities.
Administrators will find it particularly useful to characterize the typical use of the server by manipulating event log data using a spreadsheet or word processing program. You can use this approach to generate a standard operating profile of the server and to predict trends in server usage.
You can also view event logs by using the elfread command. For more information, type man elfread at the SunLink Server command prompt.
SunLink Server maintains detailed statistics about its current usage as well as cumulative usage over a particular period of time. It is always helpful to review these statistics on a regular basis as well as when a server problem is encountered.
To view data about current server use, use the SunLink Server Manager Information view (see "How to View SunLink Server Information"). This provides details about current client-server sessions and the resources being used by those sessions:
Solaris user name of the current SunLink Server Manager session
Solaris server Name
Solaris hardware type
Solaris version
SunLink Server system name
SunLink Server system's domain name
SunLink Server system's role (if BDC, then the name of the PDC is also provided)
SunLink Server software version number
State of the server (stopped or running)
State of the Schedule Database wizard (scheduled or not scheduled)
To view cumulative server usage data, you can use the net statistics command at the SunLink Server command prompt. This command provides cumulative totals for a variety of server activities. Administrators who review the server statistics provided by using this command on a regular basis will find it easier to recognize and address changes in server operation.
The following statistics are maintained for the SunLink Server system, and are available by way of the net statistics command:
Table 6-1 Cumulative Statistics Descriptions
Statistic |
Description |
---|---|
Refreshed at |
Tells when this set of statistics began (either at the last server startup or the last time the statistics were cleared). |
Sessions accepted |
Tells how many times users connected to the server. |
Sessions timed-out |
Tells how many user sessions were closed because of inactivity. |
Sessions errored-out |
Tells how many user sessions ended because of error. |
Kilobytes sent |
Tells how many Kbytes of data the server transmitted. |
Kilobytes received |
Tells how many Kbytes of data the server received. |
Mean response time (msec) |
Tells the average response time for processing remote server requests. This always will be 0 for Solaris system servers. |
System errors |
This does not apply to Solaris system servers. |
Permission violations |
Tells when a user attempts to access resources without the required permissions. |
Password violations |
The number of incorrect passwords that were tried. |
Files accessed |
The number of files that were used. |
Comm devices accessed |
Not supported in the SunLink Server program. |
Print jobs spooled |
The number of print jobs that were spooled to printer queues on the server. |
Times buffers exhausted |
The number of shortages of big and request buffers. Always set to 0 for Solaris system servers. |
Administrators can display and control sessions between clients and the server. You can use this information to gauge the workload on a particular server.
To display session information from a Windows NT Workstation computer or a Windows client computer using Server Manager:
Start Server Manager.
Select the SunLink Server system about which you want to view session information.
Click on the USERS button.
You also can display session information using the net session command at the SunLink Server command prompt.
You may see sessions displayed that do not show user names. The sessions are a result of administrative activity and should not be deleted.
An administrator can disconnect a user from the server at any time. Closing a user session does not prevent the user from reconnecting.
To disconnect a user session from a Windows NT computer or from a Windows client computer using Server Manager:
Start Server Manager.
Select the SunLink Server system about which you want to view session information.
Click on the USERS button.
Highlight the user and select the Disconnect button.
You also can disconnect a user session by using the net session command at the SunLink Server command prompt.
When a user uses a shared file, the file is open. Sometimes a file will be left open, perhaps even with a lock on it, because of an application program error or some other problem. Such files will remain open and unavailable to other users. Administrators can close these files.
To close an open resource from a Windows NT computer or a Windows client computer using Server Manager:
Start Server Manager.
Select the SunLink Server whose data you want to view.
Click on the IN USE button.
Highlight the open resource and select the Close Resource button.
You also can close an open resource by using the net file command at the SunLink Server command prompt.
SunLink Server maintains a separate print log for each printer share and each Solaris system printer it uses. These log files record any message generated because of a printer fault or print job error.
An administrator should check these log files periodically to determine whether any such errors are occurring. The logs can be accessed from a client computer by linking to the PRINTLOG shared resource.
The logs also can be accessed from the server. They are in the following directory: /opt/lanman/shares/printlog
Quick response time is critical when dealing with server problems. Being aware of a problem at the time it occurs can decrease greatly the effect that the problem may have on the server user community.
You can configure SunLink Server software to notify specified users when a problem occurs. You can also configure the Solaris system to generate and notify you when problems occur. The following sections discuss these features.
SunLink Server software includes an Alerter service that you can use to notify specified users of the occurrence of a particular event. An administrator should use this service in order to make server problems known immediately. Prompt action to resolve server problems often can minimize their effect. The following examples illustrate situations that could generate alerts:
The number of server errors exceeds a threshold set in the SunLink Server Registry.
The number of bad access attempts exceeds a threshold set in the SunLink Server Registry.
The number of bad password attempts exceeds a threshold set in the SunLink Server Registry.
Errors were encountered during start of the Net Logon service.
A printer is malfunctioning.
A print request has been deleted or completed.
One of the benefits of SunLink Server software is the availability of the inherent scripting features provided by the Solaris operating system. Combining these features with the data-gathering tools provided by SunLink Server software, an administrator can create a powerful tool that can be used to assess the health of a SunLink Server system at any given time.
For example, using the Solaris system job scheduling feature (CRON), various data-gathering tools provided by SunLink Server, and some of the standard Solaris system commands for checking file system integrity and free space, administrators can write scripts that perform various system and server checks and then send the results to Solaris system administrators at regular intervals.
SunLink Server software includes Solaris system commands that you can use to troubleshoot server problems. You execute these commands at the SunLink Server command prompt. This section summarizes these commands and describes the roles they can play in troubleshooting a server.
For more information about each command, type man command at the SunLink Server command prompt.
The lmshell command is useful for emulating an MS-DOS client session when you do not have access to an actual MS-DOS client. This command is especially useful when troubleshooting a connectivity problem between a client and server. Using the lmshell command, you can mimic a client logon and resource linking by executing the net logon and net use commands in lmshell at the SunLink Server command prompt.
The lmstat command interrogates the server's shared memory image to gather a variety of data about the current state of the server. This command is especially useful when you want to determine which server process a client session is on.
SunLink Server software is composed of a set of cooperative processes. When the server is running, enter the following command:
ps -ef | grep lmx
Executing this command generates a display similar to the following:
root 17726 1 0 12:03:36 0:00 lmx.alerter
root 17713 17461 0 12:03:32 0:00 lmx.srv -s 1
root 17722 17874 0 12:03:35 0:00 lmx.srv -s 2
root 17726 1 0 12:03:36 0:01 lmx.dmn
root 17728 1 0 12:03:36 0:01 lmx.browser
root 17744 1 0 12:03:28 0:00 lmx.ctrl
In this example, there are two lmx.srv server processes (17713 and 17722). The server may have nine clients with current sessions.
How does the administrator know to which lmx.srv process a client is connected? Executing the lmstat -c command at the server prompt usually provides the answer. The system displays output similar to the following:
Clients:
BANANA.SERVE~X (nwnum=0, vcnum=0) on 17713
ORANGE (nwnum=0, vcnum=0) on 17713
PEAR (nwnum=0, vcnum=0) on 17722
Notice that each client name has an associated process ID number. This is the process ID of the lmx.srv process that currently is serving that client. The vcnum value specifies whether this is the client computer's first VC or an additional one.
Being able to determine the process ID of the lmx.srv process that is serving a client is particularly useful when using lmstat -w or the Solaris system truss( ) command. Both commands require a process ID as part of their startup arguments. (The -w option is not valid on all operating systems.)
The regconfig command is used to query or change SunLink Server Registry key information. You can use this command to change any value in the Registry. (You also can use the Windows NT Registry Editor to change key values.)
You can also use the regconfig command to reinitialize the SunLink Server Registry with system defaults.
For more information about the Registry, see Appendix A, SunLink Server Registry.
The regcheck command is used to check and repair the SunLink Server Registry file. This command checks only the internal structure of the SunLink Server Registry file; it does not check the validity of any data that may be stored in it.
If the internal structure of the Registry file is found to be invalid, use the regcheck command to make the necessary repairs.
The samcheck command is used to check, dump, and fix the SAM database. You can use this command to determine whether the user accounts database has been corrupted and optionally, to fix it.
The samcheck command also can be used to output the contents of the user accounts database to stdout in human-readable format.
The srvconfig command is used to display the current default settings of all the server parameters in the lanman.ini file. (It also is a good way to check the location and spelling of any parameter you want to modify.)
The lanman.ini file contains several configuration parameters that you can modify. Default settings are used for most of these parameters. However, a certain number of them can be changed, overriding the default values set at server installation.
To display the default settings of the lanman.ini file, use the following command:
srvconfig -p | more
This command generates a listing of all of the parameters in the lanman.ini file and their default settings.
The acladm command is used to check and repair problems found in the Access Control List.
Be sure to examine the options that are available with this command before executing it. Type the man acladm command at the SunLink Server command prompt.