Fernando Corte-Real Mira da Silva <fcr(_at_)weenie(_dot_)inesc(_dot_)pt> writes:
I have a distributed environment setup with (mainly) linux machines using nfs
and NIS. The home pages of the several users are distributed by several
machines and accessed by NFS using autofs. All mail is processed by sendmail
in a central mail hub and has a builtin procmail configuration.
For each received mail, procmail must access, by nfs, the $HOME of the
destination user looking for .procmailrc. I noticed that when the home
directories of some users are not available (this happens when a given machine
is down) and there are too many incoming mails, this occasionally makes
sendmail to hang (due to a too high load).
We had a similar problem with the .forward files sometime ago and we bypassed
it by changing the sendmail configuration such that the .forward files are
installed in the local disk of the mail hub. I would like to follow a similar
strategy with procmailrc, but I am not sure if and how it is possible to
change the procmail configuratiom such that it looks for procmailrc in an
alternate directory and not in the $HOME directory.
You can tell procmail to look for the default rcfile in another location
that $HOME/.procmailrc. You just need to change the PROCMAILRC #define
in the config.h file. With recent versions, you can separately configure
the default 'starting location' via the DEFmaildir #define.
However, that begs the question of what can be usefully done from a
.procmailrc if the user's home directory isn't availible: you can't refile
into folders located there and running useful programs may be difficult.
As an (ex-)sysadmin, I suggest you reconsider your fundamental setup.
I would suggest that you either
1) push out final delivery to the machines that have reliable access to
the target users' home directories (probably the machines where the
home directories are located), or
2) provide a reliable home directory for each user on the mail server,
either by
a) moving all the home directories onto machines that are reliably
availible, or
b) providing a home directory for each user on the mail server that is
distinct from their 'real' home directory.
The setup you're proposing sounds like a minimal version of 2b.
If that's the course you choose to take, I think you should go all the
way and change what that machine thinks users' home directories are.
That way you can be confident the problem ("unreliable access to home
directories causes load problem on mail server") is completely solved.
Philip Guenther
_______________________________________________
procmail mailing list
procmail(_at_)lists(_dot_)RWTH-Aachen(_dot_)DE
http://MailMan.RWTH-Aachen.DE/mailman/listinfo/procmail