+<para>This device enables Amanda to communicate with a tape service on an NDMP
+server. The device name specifies the hostname and optionally the TCP port of
+the NDMP server, followed by the name of the tape device on the server
+(<command>st1</command> in the example above).</para>
+
+<para>This device supports LEOM detection.</para>
+
+<refsect3><title>Device-Specific Properties</title>
+
+<para>The properties <command>NDMP_USERNAME</command> and
+<command>NDMP_PASSWORD</command> set the username and password with which to
+access the NDMP server. The default for both is "ndmp".</para>
+
+<!-- PLEASE KEEP THIS LIST IN ALPHABETICAL ORDER -->
+<variablelist>
+ <!-- ==== -->
+<varlistentry><term>NDMP_AUTH</term><listitem>
+(read-write) Authentication method to use to connect to the NDMP server. One of
+"md5" (default), "text", "none" (for an empty authentication attempt) or "void" (for
+no authentication attempt at all).
+</listitem></varlistentry>
+ <!-- ==== -->
+<varlistentry><term>NDMP_PASSWORD</term><listitem>
+(read-write) Password for md5 or text authentications.
+</listitem></varlistentry>
+ <!-- ==== -->
+<varlistentry><term>NDMP_USERNAME</term><listitem>
+(read-write) Username for md5 or text authentications.
+</listitem></varlistentry>
+ <!-- ==== -->
+<varlistentry><term>READ_BLOCK_SIZE</term><listitem>
+(read-write) This property specifies the block size that will be used for reads; this should be large enough to contain any block that may be read from the device and must be larger than BLOCK_SIZE. See BLOCK_SIZES, above.
+</listitem></varlistentry>
+ <!-- === -->
+</variablelist>
+
+</refsect3>
+
+</refsect2>
+
+<refsect2><title>VFS Device</title>
+<programlisting>
+tapedev "file:/path/to/vtape"
+</programlisting>
+
+<para>The VFS device driver stores data on a UNIX filesystem. Note
+ that although one typically uses the VFS device driver to store data
+ on hard disks, the driver does not interface with any hardware on a
+ block level.</para>
+
+<para>The device name specifies a path to a directory which must exist and
+contain a "data/" subdirectory. Each tape file is stored as a distinct file in
+this directory, the name of which reflects the Amanda header in the tape file.
+Block boundaries are not maintained: the driver supports reads of arbitrary
+size, regardless of the blocksize used to write the data.</para>
+
+<para>This device supports LEOM detection. LEOM will be indicated when the
+ MAX_VOLUME_USAGE is nearly met, or when the filesystem is nearly out of
+ space. The latter circumstance is detected by monitoring the available
+ space on the filesystem, and this monitoring can be disabled with the
+ MONITOR_FREE_SPACE property. Note that the device cannot detect other
+ circumstances that may cause a write to fail, such as a filesystem quota.
+ LEOM detection can be disabled by setting the LEOM property to
+ false.</para>
+
+<refsect3><title>Device-Specific Properties</title>
+
+<variablelist>
+ <varlistentry><term>MONITOR_FREE_SPACE</term><listitem>
+ (read-write) This property controls whether the device will monitor
+ the filesystem's free space to detect a full filesystem before an
+ error occurs, and defaults to true. The monitoring operation works on
+ most filesystems, but if it causes problems, use this property to
+ disable it.
+</listitem></varlistentry>
+</variablelist>
+
+</refsect3>
+
+</refsect2>
+
+<refsect2><title>DVD-RW Device</title>
+<programlisting>
+tapedev "dvdrw:/var/cache/amanda/dvd-cache:/dev/scd0"
+device-property "DVDRW_MOUNT_POINT" "/media/dvd"
+device-property "DVDRW_KEEP_CACHE" "false"
+device-property "DVDRW_UNLABELLED_WHEN_UNMOUNTABLE" "true"
+</programlisting>
+
+<para>The DVD-RW device driver reads and writes optical media such as DVDs and
+CDs. The device name must specify a cache directory for data to be temporarily
+stored, followed by the operating system name for the optical drive. The cache
+directory must contain a "data/" subdirectory.</para>
+
+<para>The DVDRW_MOUNT_POINT property is required, and specifies a directory
+where the optical media can be mounted. This directory must be configured to
+enable non-root users to mount the optical media. On Linux, that means a line
+similar to the following in /etc/fstab:</para>
+<programlisting>
+/dev/scd0 /media/dvd auto ro,user,noauto 0 0
+</programlisting>
+
+<para>Note the "user" option.</para>
+
+<para>When writing data, the device acts as a VFS device using the given cache
+directory. On completion of writing the tape, the cache directory is written
+to optical media. The DVDRW_KEEP_CACHE property controls whether the cache
+contents are immediately deleted. When reading, the optical media is first
+mounted and read as a VFS device.</para>
+
+<para>Attempting to mount unformatted media or media that is formatted but
+contains no filesystem will usually result in an error. The boolean
+DVDRW_UNLABELLED_WHEN_UNMOUNTABLE property specifies whether media that cannot
+be mounted should be treated as an empty, unlabelled volume when attempting to
+read the volume label. It is necessary to set this property to "true" when
+labelling such media.</para>
+
+<para>This device does not support LEOM detection.</para>
+
+<refsect3><title>Device-Specific Properties</title>
+
+<para>The properties DVDRW_GROWISOFS_COMMAND, DVDRW_MOUNT_COMMAND and
+DVDRW_UMOUNT_COMMAND specify alternative commands for writing, mounting and
+unmounting optical media. The default is to find the programs using the PATH
+environment variable.</para>
+
+<para>The CDRW device supports all of the properties of the VFS device, as well
+ as the properties given below. The DVDRW_MOUNT_POINT property is required.
+ Other properties are optional.</para>
+
+<variablelist>
+ <varlistentry><term>DVDRW_KEEP_CACHE</term><listitem>
+ (read-write) Set this boolean property to "true" if the disk cache directory should be kept after successfully writing tape data to optical media. The default is false, which causes the cache contents to be deleted immediately after a successful write operation.
+</listitem></varlistentry>
+ <varlistentry><term>DVDRW_MOUNT_POINT</term><listitem>
+ (read-write) This property specifies the filesystem mount point for the optical media. Non-root users must be able to mount optical media by invoking "mount" and specifying this mount point.
+</listitem></varlistentry>
+ <varlistentry><term>DVDRW_UNLABELLED_WHEN_UNMOUNTABLE</term><listitem>
+ (read-write) Treat unmountable media as empty, unlabelled media. This is necessary when attempting to label freshly formatted media.
+</listitem></varlistentry>
+ <varlistentry><term>DVDRW_GROWISOFS_COMMAND</term><listitem>
+ (read-write) The command to invoke to burn the DVD.
+</listitem></varlistentry>
+ <varlistentry><term>DVDRW_MOUNT_COMMAND</term><listitem>
+ (read-write) The command to invoke to mount the DVD.
+</listitem></varlistentry>
+ <varlistentry><term>DVDRW_UMOUNT_COMMAND</term><listitem>
+ (read-write) The command to invoke to unmount the DVD.
+</listitem></varlistentry>
+</variablelist>
+
+</refsect3>
+
+</refsect2>