Using
the command cdadm (see section "Command line index" on page 223),
devices can be attached or detached dynamically while the server is running. In
addition, you may specify a list of devices that will be attached automatically
when the server starts up.
The server does not respond to file system requests while devices are being
attached automatically. If, in contrary, the devices are being attached with
cdadm after server start-up, there is a time in which the server will
accept file system requests, but will respond with error messages since the
disks cannot be found. This can be avoided if you list the devices in the file
server.cfg, which is especially useful with NFS. If the server fails,
the clients will not be affected. They do not receive error messages, they just
wait for the server to reply. This is one of the advantages the stateless NFS
provides.
Format of the devices section in the file server.cfg
The section devices contains a subsection called list.
This is where devices are listed (to be more specific, the names of the device
description files). The extension .dev may be omitted. The next
subsections specify whether or not each device is to be attached automatically
at server start-up. A device for which manual attach is defined has no effect
in server.cfg (apart from making it known to the GUI in NT, allowing
you to attach it manually through the GUI). This allows you to disable
automatic attach of a device without deleting it in server.cfg. A
device for which automatic attach is defined is attached by the server upon
start-up before the server accepts any file system requests. This avoids a time
gap in which the file system is present but incomplete.
Example for a device list
Suppose you have two jukeboxes, whose device description files are named
mercury.dev and pioneer.dev, and you want the Mercury to be
attached automatically upon server start-up. The devices section in
server.cfg should then look like this:
devices {
list { mercury pioneer }
mercury { startup { automatic } }
pioneer { startup { manual } }
}