vlserver - Initializes the Volume Location Server


vlserver [-p <number of threads>] [-nojumbo] [-jumbo] [-rxbind] [-d <debug level>] [-allow-dotted-principals] [-enable_peer_stats] [-enable_process_stats] [-auditlog <log path>] [-audit-interface (file | sysvmq)] [-help]


The vlserver command initializes the Volume Location (VL) Server, which runs on every database server machine. In the conventional configuration, its binary file is located in the /usr/afs/bin directory on a file server machine.

The vlserver command is not normally issued at the command shell prompt but rather placed into a file server machine's /usr/afs/local/BosConfig file with the bos create command. If it is ever issued at the command shell prompt, the issuer must be logged onto a database server machine as the local superuser root.

As it initializes, the VL Server process creates the two files that constitute the Volume Location Database (VLDB), vldb.DB0 and vldb.DBSYS1, in the /usr/afs/db directory if they do not already exist. Use the commands in the vos suite to administer the database.

The VL Server maintains the record of volume locations in the Volume Location Database (VLDB). When the Cache Manager fills a file request from an application program, it first contacts the VL Server to learn which file server machine currently houses the volume that contains the file. The Cache Manager then requests the file from the File Server process running on that file server machine.

The VL Server records a trace of its activity in the /usr/afs/logs/VLLog file. Use the bos getlog command to display the contents of the file. By default, it records on a minimal number of messages. For instructions on increasing the amount of logging, see VLLog(5).

By default, the VL Server runs nine lightweight processes (LWPs). To change the number, use the -p argument.

This command does not use the syntax conventions of the AFS command suites. Provide the command name and all option names in full.


-d <debug level>

Sets the detail level for the debugging trace written to the /usr/afs/logs/VLLog file. Provide one of the following values, each of which produces an increasingly detailed trace: 0, 1, 5, 25, and 125.

-p <number of threads>

Sets the number of server lightweight processes (LWPs or pthreads) to run. Provide an integer between 3 and 16. The default is 9.


Allows the server to send and receive jumbograms. A jumbogram is a large-size packet composed of 2 to 4 normal Rx data packets that share the same header. The VL Server does not use jumbograms by default, as some routers are not capable of properly breaking the jumbogram into smaller packets and reassembling them.


Deprecated; Jumbograms are disabled by default.


Activates the collection of Rx statistics and allocates memory for their storage. For each connection with a specific UDP port on another machine, a separate record is kept for each type of RPC (FetchFile, GetStatus, and so on) sent or received. To display or otherwise access the records, use the Rx Monitoring API.


Activates the collection of Rx statistics and allocates memory for their storage. A separate record is kept for each type of RPC (FetchFile, GetStatus, and so on) sent or received, aggregated over all connections to other machines. To display or otherwise access the records, use the Rx Monitoring API.


By default, the RXKAD security layer will disallow access by Kerberos principals with a dot in the first component of their name. This is to avoid the confusion where principals user/admin and user.admin are both mapped to the user.admin PTS entry. Sites whose Kerberos realms don't have these collisions between principal names may disable this check by starting the server with this option.

-auditlog <log path>

Turns on audit logging, and sets the path for the audit log. The audit log records information about RPC calls, including the name of the RPC call, the host that submitted the call, the authenticated entity (user) that issued the call, the parameters for the call, and if the call succeeded or failed.

-audit-interface (file | sysvmq)

Specifies what audit interface to use. Defaults to file. See fileserver(8) for an explanation of each interface.


Bind the Rx socket to the primary interface only. (If not specified, the Rx socket will listen on all interfaces.)


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


The following bos create command creates a vlserver process on the machine that uses six lightweight processes. Type the command on a single line:

   % bos create -server -instance vlserver -type simple \
                -cmd "/usr/afs/bin/vlserver -p 6"


The issuer must be logged in as the superuser root on a file server machine to issue the command at a command shell prompt. It is conventional instead to create and start the process by issuing the bos create command.


BosConfig(5), VLLog(5), vldb.DB0(5), bos_create(8), bos_getlog(8)


IBM Corporation 2000. <> All Rights Reserved.

This documentation is covered by the IBM Public License Version 1.0. It was converted from HTML to POD by software written by Chas Williams and Russ Allbery, based on work by Alf Wachsmann and Elizabeth Cassell.