Provided by: diod_1.0.14-5_amd64 bug

NAME

       diod.conf - distributed I/O daemon configuration file

DESCRIPTION

       The  diod.conf  file is actually a LUA script.  Internal config defaults are overridden by
       settings in the file, and some of those values can in turn be overridden  on  the  command
       line.

       Config  settings take the form of LUA global variables which are read out after the config
       file is executed.  Therefore, the values  of  said  variables  can  either  be  statically
       assigned or computed.  The variables are described below.

CONFIG VARIABLES

       listen = { "IP:PORT" [,"IP:PORT",...] }
              List  the  interfaces  and  ports  that  diod  should  listen  on.   The default is
              "0.0.0.0:564".

       exports = { "/path" [, "/path", ...] }
              List the file systems that clients will be allowed to mount.  All paths  should  be
              fully  qualified.   The  exports  table  can include two types of element, a string
              element (as above), or a table element of the form  {  path="/path",  opts="ro"  }.
              The  path  attribute  is  mandatory,  and the opts attribute is an optional, comma-
              separated list of export options.  Currently the only supported  options  are  "ro"
              (export  read-only),  "suppress"  (no export), and "sharefd" (allow limited server-
              side file descriptor sharing for files opened O_RDONLY).   The  two  table  element
              forms can be mixed in the exports table.  Note that although diod will not traverse
              file system boundaries for a given  mount  due  to  inode  uniqueness  constraints,
              subdirectories of a file system can be separately exported.

       exportall = 1
              Export  all  file  systems listed in /proc/mounts.  If new file systems are mounted
              after diod has started, they will become immediately  mountable.   If  there  is  a
              duplicate  entry  for  a file system in the exports list, any options listed in the
              exports entry will apply.

       exportopts = "opt,opt,..."
              Establish a default set of export options.  These are overridden, not appended  to,
              by opts attributes in an "exports" entry.

       nwthreads = INTEGER
              Sets  the  (fixed)  number  of  worker  threads created to handle 9P requests for a
              unique aname.  The default is 16 per aname.

       auth_required = 0
              Allow clients to  connect  without  authentication,  i.e.  without  a  valid  munge
              credential.

       userdb = 0
              This  option  disables  password/group  lookups.   It  allows any uid to attach and
              assumes gid=uid, and supplementary groups contain only the primary gid.

       allsquash = 1
              Remap all users to "nobody".  The  attaching  user  need  not  be  present  in  the
              password file.

       squashuser = "nobody"
              Change the squash user from the default of nobody.  The squash user must be present
              in the password file.

       logdest = "DEST"
              Set the destination for logging.  DEST is in the form of  syslog:facility:level  or
              filename.  The default is syslog:daemon:err.

       statfs_passthru = 1
              This  option  configures  statfs  to return the host file system's type rather than
              V9FS_MAGIC.  The default is 0 (return V9FS_MAGIC).

EXAMPLE

       --
       -- example diod.conf
       --
       listen = { "0.0.0.0:10002" }
       exports = {
            "/home",
            "/usr/global",
            { path="/usr/local", opts="ro" },
       }
       nwthreads = 8

FILES

       /etc/diod.conf

SEE ALSO

       lua (1), diod (8), openlog (3)

       http://www.lua.org/