Provided by: exim4-base_4.82-3ubuntu2.4_amd64 bug

NAME

       exim_lock - Mailbox maintenance

SYNOPSIS

       exim_lock [options]mailbox-file

DESCRIPTION

       The exim_lock utility locks a mailbox file using the same algorithm as Exim.  For a discussion of locking
       issues,  see  section  25.2.  exim_lock can be used to prevent any modification of a mailbox by Exim or a
       user agent while investigating a problem.  The utility requires  the  name  of  the  file  as  its  first
       argument.   If  the  locking is successful, the second argument is run as a command (using C's “system()”
       function); if there is no second argument, the value of the SHELL environment variable is used;  if  this
       is  unset  or  empty, /bin/sh is run.  When the command finishes, the mailbox is unlocked and the utility
       ends.  The following options are available:

       -fcntl Use “fcntl()” locking on the open mailbox.

       -interval
              This must be followed by a number, which is a number of seconds; it sets  the  interval  to  sleep
              between retries (default 3).

       -lockfile
              Create a lock file before opening the mailbox.

       -mbx   Lock the mailbox using MBX rules.

       -q     Suppress verification output.

       -retries
              This  must  be  followed  by a number; it sets the number of times to try to get the lock (default
              10).

       -timeout
              This must be followed by a number, which is a number of seconds; it sets a timeout to be used with
              a blocking “fcntl()” lock.  If it is not set (the default), a non-blocking call is used.

       -v     Generate verbose output.

              If none of -fcntl, -lockfile or -mbx are given, the default is to create a lock file and also  use
              “fcntl()” locking on the mailbox, which is the same as Exim's default.  The use of -fcntl requires
              that the file be writable; the use of -lockfile requires that the directory containing the file be
              writable.   Locking  by lock file does not last for ever; Exim assumes that a lock file is expired
              if it is more than 30 minutes old.

              The -mbx option is mutually exclusive with -fcntl.  It causes a shared lock to be taken out on the
              open mailbox, and an exclusive lock on the file /tmp/.n.m where n and m are the device number  and
              inode  number  of  the  mailbox  file.   When the locking is released, if an exclusive lock can be
              obtained for the mailbox, the file in /tmp is deleted.

              The default output contains verification of the locking that takes place.  The  -v  option  causes
              some  additional  information  to  be  given.   The  -q  option suppresses all output except error
              messages.

       A command such as

         exim_lock /var/spool/mail/spqr

       runs an interactive shell while the file is locked, whereas

         exim_lock -q /var/spool/mail/spqr <<End
         <some commands>
         End

       runs a specific  non-interactive  sequence  of  commands  while  the  file  is  locked,  suppressing  all
       verification output.  A single command can be run by a command such as

         exim_lock -q /var/spool/mail/spqr     "cp /var/spool/mail/spqr /some/where"

       Note  that if a command is supplied, it must be entirely contained within the second argument - hence the
       quotes.

BUGS

       This manual page needs a major re-work. If somebody knows better groff than us and has more experience in
       writing manual pages, any patches would be greatly appreciated.

SEE ALSO

       exim(8), /usr/share/doc/exim4-base/

AUTHOR

       This manual page was stitched together from spec.txt by Andreas Metzler <ametzler at downhill.at.eu.org>,
       for the Debian GNU/Linux system (but may be used by others).

                                                 March 26, 2003                                     EXIM_LOCK(8)