7-STABLE NFS: fatal: "select lock: Permission denied"

perryh at pluto.rain.com perryh at pluto.rain.com
Tue Apr 5 08:11:49 UTC 2011


Chuck Swiger <cswiger at mac.com> wrote:

> It's fairly common to scale up a mail infrastructure from one box
> handling both SMTP and IMAP (or POP) to a SMTP-only box writing to
> NFS-mounted user mailboxes, and have one or more dedicated reader
> boxes which only run IMAP/POP daemons which access that same NFS
> filesystem holding the user mailboxes.

Yikes!  The _proper_ way to scale up from one box to multiple goes
something like this:

         SMTP
Internet ---> mail.<domain> [original box]
              This box now runs only the SMTP receiver, and perhaps
              the spam/virus filtering (if it has enough capacity).
              It contains no user mailboxes.

               SMTP
mail.<domain> --+--> mailbox01.<domain>
                |    This box runs local delivery, and IMAP/POP
                |    daemons, for some user mailboxes (which are
                |    stored on _local_ disks).  It may also handle
                |    spam/virus filtering for those mailboxes, if
                |    mail.<domain> can't handle that load.
                |
                +--> mailbox02.<domain>
                |    This box is just like mailbox01, for a different
                |    set of user mailboxes.
                |
                +--> mailbox03.<domain>
                     etc. -- as many as needed.

mail.<domain> becomes a multiplexer, so that the outside world can
send to <user>@mail.<domain> (or simply <user>@<domain> if you
prefer) without needing to know about the internal structure.  The
multiplexing can be very simple, and thus very fast, by doing a
table-lookup based on the first character of <user>.  There's no
need for NFS anywhere in the setup.

> ... I've been burned by NFS locking (mis)adventures in the past,
> and I hate to see people depend on it if they have alternatives....

As have I.  Once.  That was enough.


More information about the freebsd-net mailing list