Man Linux: Main Page and Category List


       nbd-client  -  connect  to  a  server running nbd-server(1), to use its
       exported block device


       nbd-client [ bs=blocksize ] [ timeout=seconds ] host port nbd-device  [
       -sdp ] [ -swap ] [ -persist ] [ -nofork ]

       nbd-client -d nbd-device

       nbd-client -c nbd-device


       With  nbd-client,  you can connect to a server running nbd-server, thus
       using raw diskspace from that server as  a  blockdevice  on  the  local

       To  do this, support from the Linux Kernel is necessary, in the form of
       the Network Block Device (NBD). When  you  have  that,  either  in  the
       kernel,  or  as  a module, you can connect to an NBD server and use its
       exported file through a block special file with major mode 43.


       The following options are supported:

              Use a blocksize of "blocksize". Default is 1024; allowed  values
              are either 512, 1024, 2048 or 4096

       host   The hostname of the machine running nbd-server.

              Set  the  connection timeout to "seconds". For this to work, you
              need a kernel with support for the NBD_SET_TIMEOUT  ioctl;  this
              was  introduced into Linus’ tree on 2007-10-11, and will be part
              of kernel 2.6.24.

       port   The TCP port on which nbd-server is running at the server.

              The block special file this nbd-client should connect to.

       -c     Check whether the specified nbd device is connected.

              If the device is connected, nbd-client will exit  with  an  exit
              state  of  0  and  print the PID of the nbd-client instance that
              connected it to stdout.

              If the device is not connected or does not  exist  (for  example
              because  the  nbd  module  was not loaded), nbd-client will exit
              with an exit state of 1 and not print anything on stdout.

              If an error occurred, nbd-client will exit with an exit state of
              2, and not print anything on stdout either.

       -d     Disconnect the specified nbd device from the server

              When  this  option is specified, nbd-client will immediately try
              to  reconnect  an  nbd  device  if  the  connection  ever  drops
              unexpectedly due to a lost server or something similar.

       -sdp   Connect  to  the  server using the Socket Direct Protocol (SDP),
              rather than IP. See nbd-server(1) for details.

       -swap  Specifies that this NBD device will be used as  swapspace.  This
              option attempts to prevent deadlocks by performing mlockall() at
              an appropriate time. It does not  however  guarantee  that  such
              deadlocks can be avoided.

              Specifies  that  the  NBD client should not detach and daemonize
              itself. This is mostly useful for debugging.


       Some examples of nbd-client usage:

       · To  connect  to   a   server   running   on   port   2000   at   host
         "",   using   the   client’s   block   special  file

         nbd-client 2000 /dev/nb0

       · To  connect  to   a   server   running   on   port   2001   at   host
         "",   using  the  client’s  block  special  file
         "/dev/nb1", for swap purposes:

         nbd-client 2001 /dev/nb1 -swap

       · To disconnect the above connection again (after making sure the block
         special file is not in use anymore):

         nbd-client -d /dev/nb1


       nbd-server (1).


       The  NBD  kernel  module  and  the NBD tools have been written by Pavel
       Macheck (

       The   kernel   module   is   now   maintained    by    Paul    Clements
       (,  while  the userland tools are maintained
       by Wouter Verhelst (

       This manual page was written by Wouter  Verhelst  (<>)
       for   the  Debian  GNU/Linux  system  (but  may  be  used  by  others).
       Permission is granted to copy, distribute and/or modify  this  document
       under  the  terms  of  the  GNU  General  Public License, version 2, as
       published by the Free Software Foundation.

                               03 September 2009