# Administration Reference

## fs checkservers

Purpose

Displays the status of server machines

Synopsis

    fs checkservers [-cell <cell to check>]  [-all]  [-fast]
                    [-interval <seconds between probes>]  [-help]

    fs checks [-c <cell to check>]  [-a]  [-f]
              [-i <seconds between probes>]  [-h]

Description

The fs checkservers command reports whether certain AFS server machines are accessible from the local client machine. The machines belong to one of two classes, and the Cache Manager maintains a list of them in kernel memory:

- The database server machines in every cell listed in the local /usr/vice/etc/CellServDB file, plus any machines added to the memory list by the fs newcell command since the last reboot.

- All file server machines the Cache Manager has recently contacted, and which it probably needs to contact again soon. In most cases, the Cache Manager holds a callback on a file or volume fetched from the machine.

If the Cache Manager is unable to contact the vlserver process on a database server machine or the fileserver process on a file server machine, it marks the machine as inaccessible. (Actually, if a file server machine is multihomed, the Cache Manager attempts to contact all of the machine's interfaces, and only marks the machine as down if the fileserver fails to reply via any of them.) The Cache Manager then periodically (by default, every three minutes) sends a probe to each marked machine, to see if it is still inaccessible. If a previously inaccessible machine responds, the Cache Manager marks it as accessible and no longer sends the periodic probes to it.

The fs checkservers command updates the list of inaccessible machines by having the Cache Manager probe a specified set of them:

- By default, only machines that are marked inaccessible and belong to the local cell (the cell listed in the local /usr/vice/etc/ThisCell file)

- If the -cell argument is included, only machines that are marked inaccessible and belong to the specified cell

- If the -all flag is included, all machines marked inaccessible

If the -fast flag is included, the Cache Manager does not probe any machines, but instead reports the results of the most recent previous probe.

To set the interval between probes rather than produce a list of inaccessible machines, use the -interval argument. The non-default setting persists until the machine reboots; to preserve it across reboots, put the appropriate fs checkservers command in the machine's AFS initialization files.

Cautions

The command can take quite a while to complete, if a number of machines do not respond to the Cache Manager's probe. The Cache Manager probes machines sequentially and waits a standard timeout period before marking the machine as unresponsive, to allow for slow network communication. To make the command shell prompt return quickly, put the command in the background. It is harmless to interrupt the command by typing Ctrl-c or another interrupt signal.

Note that the Cache Manager probes only server machines marked inaccessible in its memory list. A server machine's absence from the output does not necessarily mean that it is functioning, because it possibly is not included in the memory list at all (if, for example, the Cache Manager has not contacted it recently). For the same reason, the output is likely to vary on different client machines.

Unlike most fs commands, the fs checkservers command does not refer to the AFSCELL environment variable.

Options

-cell
  Names each cell in which to probe server machines marked as inaccessible. Provide the fully qualified domain name, or a shortened form that disambiguates it from the other cells listed in the local /usr/vice/etc/CellServDB file. Combine this argument with the -fast flag if desired, but not with the -all flag. Omit both this argument and the -all flag to probe machines in the local cell only.

-all
  Probes all machines in the Cache Manager's memory list that are marked inaccessible. Combine this argument with the -fast flag if desired, but not with the -cell argument. Omit both this flag and the -cell argument to probe machines in the local cell only.

-fast
  Displays the Cache Manager's current list of machines that are inaccessible, rather than sending new probes. The output can as old as the current setting of the probe interval (by default three minutes, and maximum ten minutes).

-interval
  Sets or reports the number of seconds between the Cache Manager's probes to machines in the memory list that are marked inaccessible:

  - To set the interval, specify a value from the range between 1 and 600 (10 minutes); the default is 180 (three minutes). The issuer must be logged in as the local superuser root. The altered setting persists until again changed with this command, or until the machine reboots, at which time the setting returns to the default.

  - Provide a value of 0 (zero) to display the current interval setting. No privilege is required. Do not combine this argument with any other.

-help
  Prints the online help for this command. All other valid options are ignored.

Output

If there are no machines marked as inaccessible, or if all of them now respond to the Cache Manager's probe, the output is:

       All servers are running.

Note that this message does not mean that all server machines in each relevant cell are running. The output indicates the status of only those machines that the Cache Manager probes.

If a machine fails to respond to the probe within the timeout period, the output begins with the string

       These servers unavailable due to network or server problems:

and lists the hostname of each machine on its own line. The Cache Manager stores machine records by Internet address, so the format of each hostname (uppercase or lowercase letters, or an Internet address in dotted decimal format) depends on how the local cell's name service translates it at the time the command is issued. If a server machine is multihomed, the output lists only one of its interfaces (usually, the currently most preferred one).

If the -interval argument is provided with a value between 1 and 600, there is no output. If the value is 0, the output reports the probe interval as follows:

       The current down server probe interval is interval secs

Examples

The following command displays the Cache Manager's current list of unresponsive machines in the local cell, rather than probing them again. The output indicates that if there were any machines marked inaccessible, they all responded to the previous probe.

       % fs checkservers -fast
       All servers are running.

The following example probes machines in the Cache Manager's memory list that belong to the stateu.edu cell:

       % fs checkservers -cell stateu.edu
       All servers are running.

The following example probes all server machines in the Cache Manager's memory list. It reports that two machines did not respond to the probe.

       % fs checkservers -all
       These servers unavailable due to network or server problems:
       fs1.abc.com SV3.STATE.EDU.

Privilege Required

To set the probe interval, the issuer must be logged in as the local superuser root. Otherwise, no privilege is required.

Related Information

CellServDB (client version)

ThisCell (client version)

fs newcell

© IBM Corporation 2000. All Rights Reserved