<!ENTITY dhfirstname "<firstname>Wouter</firstname>">
<!ENTITY dhsurname "<surname>Verhelst</surname>">
<!-- Please adjust the date whenever revising the manpage. -->
- <!ENTITY dhdate "<date>september 19, 2001</date>">
+ <!ENTITY dhdate "<date>$Date$</date>">
<!-- SECTION should be 1-8, maybe w/ subsection other parameters are
allowed: see man(7), man(1). -->
<!ENTITY dhsection "<manvolnum>1</manvolnum>">
<cmdsynopsis>
<command>&dhpackage; </command>
- <arg choice=plain><replaceable>port</replaceable</arg>
+ <arg choice=plain><replaceable>[ip@]port</replaceable</arg>
<arg choice=plain><replaceable>filename</replaceable></arg>
<arg><replaceable>size</replaceable></arg>
<arg><option>-r</option></arg>
<arg><option>-m</option></arg>
<arg><option>-c</option></arg>
- <arg><option>-a <replaceable>timeout</replaceable></option></arg>
- <arg><option>-l <replaceable>host list</replaceable></option></arg>
+ <arg><option>-l <replaceable>host list filename</replaceable></option></arg>
+ <arg><option>-o <replaceable>section name</replaceable></option></arg>
+ <arg><option>-C <replaceable>config file</replaceable></option></arg>
</cmdsynopsis>
</refsynopsisdiv>
<refsect1>
<title>DESCRIPTION</title>
- <para>This manual page documents the
- <command>&dhpackage;</command> command.</para>
-
- <para>This manual page was written for the &debian; distribution
- because the original program does not have a manual page.</para>
-
<para><command>&dhpackage;</command> is the server for the Linux
Network Block Device (NBD). With NBD, a client can use a file,
exported over the network from a server, as a block device. It can
were a local filesystem.</para>
<para><command>&dhpackage;</command> implements some security
- through a file called "nbd_server.allow" in the current directory (by default; a different file can be chosen with the '-l' option).
- This file must list the IP-addresses of clients that are allowed
- to connect. If it does not exist, all clients are able to connect.
- If the file is empty, no clients can connect.</para>
+ through a file called "@sysconfdir@/nbd-server/allow" (by default; a
+ different file can be chosen with the '-l' option or through a
+ config file specification). This file must list the IP-addresses or
+ network masks of clients that are allowed to connect. If it does not
+ exist, all clients are able to connect. If the file is empty, no
+ clients can connect.</para>
+
+ <para>Note that while the command line allows for specifying an
+ export, the use of this option is deprecated. It is preferred to
+ make use of a configuration file instead, the format of which is
+ defined in nbd-server(5).</para>
</refsect1>
<refsect1>
<title>OPTIONS</title>
<variablelist>
<varlistentry>
- <term><option>port</option>
- </term>
- <listitem>
- <para>The port the server should listen to. A valid port is
+ <term>ip</term>
+ <listitem>
+ <para>The ip address the server should listen on. This may
+ be an IPv4 address, an IPv6 address, or a hostname. In the
+ latter case, nbd-server will do a hostname lookup for the
+ name specified, and will listen on the first address that is
+ returned. For compatibility with past versions of
+ nbd-server, if an IPv4 address is specified, the @ sign that
+ serves as separator between the address and port may be
+ replaced by a colon.</para>
+ <para>If this parameter is not specified, nbd-server will
+ listen on all local addresses on both IPv4 and IPv6. To
+ limit to IPv4, specify the address as 0.0.0.0; to limit to
+ IPv6, specify it as ::.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>port</option>
+ </term>
+ <listitem>
+ <para>The port the server should listen to. A valid port is
any number between 1 and 65536; if 0 is used, nbd-server
will listen on stdin (so that nbd-server can be ran from
inetd)</para>
- </listitem>
+ </listitem>
</varlistentry>
<varlistentry>
<term><option>filename</option></term>
<term><option>size</option></term>
<listitem>
<para>The size of the block device at the client side. This
- is especially usefull in conjunction with the -m
+ is especially useful in conjunction with the -m
option</para>
<para>Can optionally be followed by one of K,k,M or
m, in which case the size will be multiplied by 1024 (K
Linux 2.2 and below), you can use this option to store the
data in multiple files and export a larger filesystem, if
needed.</para>
+ <para>
+ To use this option, you must create a number of files
+ with names in the format "name.X", where "name" is given as
+ the filename argument to nbd-server, and "X" is a number
+ starting by 0 and going up for each file.
+ </para>
+ <para>
+ Allowing more flexibility for this option is planned for
+ future versions.</para>
</listitem>
</varlistentry>
<varlistentry>
<term><option>-c</option></term>
<listitem>
<para>Copy on write. When this option is provided,
- write-operations are not done to the exported file, but to a
- separate file. This separate file is removed when the
- connection is closed, which means that serving this way will
- make nbd-server slow down (especially on large block devices
- with lots of writes), and that after disconnecting and
- reconnecting the client or the server, all changes are
- lost.</para>
+ write-operations are not done to the exported file, but to a
+ separate file. This separate file is removed when the
+ connection is closed, which means that serving this way will
+ make nbd-server slow down (especially on large block devices
+ with lots of writes), and that after disconnecting and
+ reconnecting the client or the server, all changes are
+ lost.</para>
</listitem>
</varlistentry>
<varlistentry>
- <term><option>timeout</option></term>
+ <term><option>-C</option></term>
<listitem>
- <para>Maximum number of idle seconds. If a connection is
- inactive for this amount of time, it is terminated; this is to
- avoid stale nbd-server processes staying in memory. Use of
- this option is strongly recommended.</para>
+ <para>Specify configuration file. The default configuration
+ file, if this parameter is not specified, is
+ <filename>@sysconfdir@/nbd-server/config</filename>.</para>
+ <para>Note that the configuration file is always parsed and
+ the entries in the file used, even if an extra server is
+ specified on the command line. To disable the configuration
+ file entirely, either move it away or use the -C option to
+ point <command>nbd-server</command>(1) to a non-existing or
+ empty configuration file.</para>
+ <para>Also note that if an empty, incomplete, or invalid
+ configuration file is specified, nbd-server will produce a
+ warning about failure to parse the config file. If the
+ command line contains a fully specified configuration, this
+ warning is harmless and may be ignored.</para>
</listitem>
</varlistentry>
<varlistentry>
- <term><option>host list</option></term>
+ <term><option>host list filename</option></term>
<listitem>
<para>This argument should contain a list of IP-addresses
- for hosts that may connect to the server. Wildcards are
- <emphasis>not</emphasis> allowed. If the file does not
- exist, it is ignored (and any host can connect); If the file
- does exist, but is empty, no host can connect. By default,
- the name 'nbd_server.allow' is used, and looked for in the
- current directory, unless nbd-server is compiled as a
- daemon, in which case it is looked for in the
- root-directory.
+ for hosts that may connect to the server. Wildcards are
+ <emphasis>not</emphasis> allowed. If the file does not
+ exist, it is ignored (and any host can connect); If the file
+ does exist, but is empty, no host can connect. By default,
+ the name 'nbd_server.allow' is used, and looked for in the
+ current directory, unless nbd-server is compiled as a
+ daemon, in which case it is looked for in the
+ root-directory.</para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><option>section name</option></term>
+ <listitem>
+ <para>If the <option>-o</option> argument is given on the
+ command line, then &dhpackage; will output a configuration
+ file section with this as the header that is functionally
+ equivalent to the other options specified on the command line,
+ and exit. This is useful for migrating pre-2.9 nbd-server
+ initscript configuration files to the new format.</para>
</listitem>
</varlistentry>
</variablelist>
-
+
</refsect1>
<refsect1>
<title>EXAMPLES</title>
changes are lost after restarting the client or the
server:</para>
<para><command>nbd-server 2000 /export/nbd/exp-bl-dev
- -c</command></para>
+ -c</command></para>
</listitem>
</itemizedlist>
</refsect1>
<refsect1>
<title>SEE ALSO</title>
-
- <para>nbd-client (8).</para>
-
+
+ <para>nbd-client (8), nbd-server (5), http://nbd.sourceforge.net/roadmap.html</para>
+
</refsect1>
<refsect1>
<title>AUTHOR</title>
<para>The NBD kernel module and the NBD tools were originally
written by Pavel Machek (pavel@ucw.cz)</para>
-
- <para>The kernel module is now maintained by Paul Clements
+
+ <para>The Linux kernel module is now maintained by Paul Clements
(Paul.Clements@steeleye.com), while the userland tools are
maintained by &dhusername; (&dhemail;)</para>
+ <para>On The Hurd there is a regular translator available to perform the
+ client side of the protocol, and the use of
+ <command>nbd-client</command> is not required. Please see the
+ relevant documentation for more information.</para>
+
<para>This manual page was written by &dhusername; (&dhemail;) for
the &debian; system (but may be used by others). Permission is
granted to copy, distribute and/or modify this document under
</refsect1>
</refentry>
-
-<!-- Keep this comment at the end of the file
-Local variables:
-mode: sgml
-sgml-omittag:t
-sgml-shorttag:t
-sgml-minimize-attributes:nil
-sgml-always-quote-attributes:t
-sgml-indent-step:2
-sgml-indent-data:t
-sgml-parent-document:nil
-sgml-default-dtd-file:nil
-sgml-exposed-tags:nil
-sgml-local-catalogs:nil
-sgml-local-ecat-files:nil
-End:
--->