X-Git-Url: http://git.alex.org.uk diff --git a/man/nbd-server.5.in.sgml b/man/nbd-server.5.in.sgml index d36fe01..c9f618d 100644 --- a/man/nbd-server.5.in.sgml +++ b/man/nbd-server.5.in.sgml @@ -20,7 +20,7 @@ manpage.1: manpage.sgml wouter@debian.org"> NBD-SERVER"> - + Debian GNU/Linux"> GNU"> @@ -60,11 +60,10 @@ manpage.1: manpage.sgml DESCRIPTION - &dhpackage; allows to configure the - nbd-server. + This file allows to configure the nbd-server. While - @sysconfdir@/nbd-server/config is the default + $sysconfdir/nbd-server/config is the default configuration file, this can be varied with the option to nbd-server(1). @@ -128,20 +127,20 @@ manpage.1: manpage.sgml - - - - Optional; string. - + + - The name of the user this server must run as. If this - parameter is not specified, then nbd-server will not - attempt to change its UID (so the UID it runs as will be - the user who starts nbd-server). If it is specified, then - nbd-server will change its UID after opening ports, but - before accepting connections or opening files. + Optional; string - + If this option is set, it should contain the local IP + address on which we should listen to + nbd-client(8) connections. If it is not + set, nbd-server will listen to all + local IPv4 and IPv6 addresses. To limit to IPv6, specify the + address as "::". To limit to IPv4, specify as "0.0.0.0". It + is not possible to specify more than one IP address + here. + @@ -182,21 +181,34 @@ manpage.1: manpage.sgml - + Optional; string - If this option is set, it should contain the local IP - address on which we should listen to - nbd-client(8) connections. If it is not - set, nbd-server will listen to all - local IPv4 and IPv6 addresses. To limit to IPv6, specify the - address as "::". To limit to IPv4, specify as "0.0.0.0". It - is not possible to specify more than one IP address - here. + + The port on which to listen for new-style nbd-client + connections. If not specified, the IANA-assigned port of + 10809 is used. + - + + + + + Optional; string. + + + The name of the user this server must run as. If this + parameter is not specified, then nbd-server will not + attempt to change its UID (so the UID it runs as will be + the user who starts nbd-server). If it is specified, then + nbd-server will change its UID after opening ports, but + before accepting connections or opening files. + + + @@ -209,7 +221,7 @@ manpage.1: manpage.sgml Optional; string; default - @sysconfdir@/nbd-server/allow. + $sysconfdir/nbd-server/allow. The name of the authorization file for this export. This @@ -288,6 +300,39 @@ manpage.1: manpage.sgml + + + Optional; boolean. + When this option is enabled, + nbd-server will inform the client that it + supports and desires to be sent flush requests when the + elevator layer receives them. Receipt of a flush request + will cause an fdatasync() (or, if the sync option is set, + an fsync()) on the backend storage. This increases + reliability in the case of an unclean shutdown at + the expense of a degradation of performance. This option + will have no effect unless supported by the client. + + + + + + + Optional; boolean. + When this option is enabled, + nbd-server will inform the client that it + supports and desires to be sent fua (force unit access) commands + when the elevator layer receives them. Receipt of a force unit + access command will cause the specified command to be synced + to backend storage using sync_file_range() if supported, or + fdatasync() otherwise. This increases + reliability in the case of an unclean shutdown at + the expense of a degradation of performance. This option + will have no effect unless supported by the client. + + + + listenaddr @@ -302,6 +347,16 @@ manpage.1: manpage.sgml + + + Optional; integer + + If specified, then it limits the number of opened connections for + this export. + + + + Optional; boolean. @@ -355,6 +410,53 @@ manpage.1: manpage.sgml + + + Optional; string + + If specified, then it is assumed to be a command + that will be ran when a client has + disconnected. This can be useful to clean up + whatever has set up, to log + something, or similar. + + + If the literal string '%s' is present in the + command, it will be replaced by the file name that + has just been closed. + + + In contrast to the option, + the exit state of is + ignored. + + + + + + + Optional; string + + If specified, then this command will be ran after a + client has connected to the server (and has been + accepted), but before the server starts serving. If + the command contains the literal string '%s', then + this string will be replaced by the filename of the + file which nbd-server wants to export. + + + This is useful to create export files on the fly, or + to verify that a file can be used for export, to + write something to a log file, or similar. + + + If the command runs with a non-zero exit status, + then nbd-server will assume the export will fail, + and refuse to serve it. + + + + Optional; boolean. @@ -372,6 +474,29 @@ manpage.1: manpage.sgml + + + Optional; boolean. + When this option is enabled, + nbd-server will inform the client that + it would prefer it to send requests in elevator (i.e., optimized) order, perhaps + because it has a backing store and no local elevator. By + default, the client uses QUEUE_FLAG_NONROT, which effectively + restricts the function of the elevator to block merges. By + specifying this flag on the server, the client will not use + QUEUE_FLAG_NONROT, meaning the client elevator will perform + normal elevator ordering of I/O requests. Note that even when + the backing store is on rotating media, it is not normally + necessary to specify this flag, as the server's elevator + algorithm will be used. This flag is only required where + the server will not be using an elevator algorithm or where + the elevator algorithm is effectively neutered (e.g. with + the sync option set). This option will have no effect unless + supported by the client. + + + + Optional; boolean. @@ -394,23 +519,6 @@ manpage.1: manpage.sgml - - - Optional; boolean. - When this option is enabled, - nbd-server will call an fsync() after every - write to the backend storage. Calling fsync() increases - reliability in case of an unclean shutdown of nbd-server; but, - depending on the file system used on the nbd-server side, may - degrade performance. The use of this option isn't always - necessary; e.g., on ext3 filesystems, it is recommended that - it is not enabled, since it seriously - reduces performance on ext3 filesystems while not - importantly impacting reliability. - - - - Optional; boolean. @@ -436,6 +544,23 @@ manpage.1: manpage.sgml + + + Optional; boolean. + When this option is enabled, + nbd-server will call an fsync() after every + write to the backend storage. Calling fsync() increases + reliability in case of an unclean shutdown of nbd-server; but, + depending on the file system used on the nbd-server side, may + degrade performance. The use of this option isn't always + necessary; e.g., on ext3 filesystems, it is recommended that + it is not enabled, since it seriously + reduces performance on ext3 filesystems while not + importantly impacting reliability. + + + + Optional; integer; default 0 @@ -453,6 +578,30 @@ manpage.1: manpage.sgml + + + Optional; string + + If specified, then this pathname is used to generate a transaction + log. A transaction log is a binary file consisting of the requests + sent to and the replies received by the server, but excluding any + data (so, for a write command, it records the offset and length + of the write but not the data written). It is therefore relatively + safe to distribute to a third party. Note that the transaction log + does not include the negotiation sequence. Transaction logs are + mainly useful for debugging. The program + nbd-tester-client distributed with the source + to this program can reply a transaction log against a server and + perform a data integrity test. Note that the transaction log is + written to for every client opened. If it is necessary to maintain + separate transaction logs for each client, the + prerun script should rename the transaction log + (which will just have been opened in order to avoid transaction logs + overwriting eachother. This action should be race-free. + + + + Optional; string; default "ipliteral" @@ -549,70 +698,13 @@ manpage.1: manpage.sgml - - - - Optional; string - - If specified, then this command will be ran after a - client has connected to the server (and has been - accepted), but before the server starts serving. If - the command contains the literal string '%s', then - this string will be replaced by the filename of the - file which nbd-server wants to export. - - - This is useful to create export files on the fly, or - to verify that a file can be used for export, to - write something to a log file, or similar. - - - If the command runs with a non-zero exit status, - then nbd-server will assume the export will fail, - and refuse to serve it. - - - - - - - Optional; string - - If specified, then it is assumed to be a command - that will be ran when a client has - disconnected. This can be useful to clean up - whatever has set up, to log - something, or similar. - - - If the literal string '%s' is present in the - command, it will be replaced by the file name that - has just been closed. - - - In contrast to the option, - the exit state of is - ignored. - - - - - - - Optional; integer - - If specified, then it limits the number of opened connections for - this export. - - - SEE ALSO - nbd-server (1), nbd-client (8) + nbd-server (1), nbd-client (8), nbd-trdump (8) @@ -656,9 +748,9 @@ manpage.1: manpage.sgml [export] exportname = /export/blkdev port = 12345 - authfile = @sysconfdir@/nbd-server/allow + authfile = $sysconfdir/nbd-server/allow - With @sysconfdir@/nbd-server/allow containing the following: + With $sysconfdir/nbd-server/allow containing the following: 127.0.0.1 192.168.0.0/8