NOTE: please reply to matta(_at_)geoworks(_dot_)com as well as the list -- I do
not know if I've been added yet.
I just began sending myself (from one site to another) fairly large
files through e-mail. Because the destination site has a firewall, I
can't just ftp or rcp the files over.
My scheme is working, bug procmail is, I think, unacceptably slow for
some reason. I have a script on the source machine that uuencodes the
file and mails it to the destination site with the subject "FILE".
Then I have this procmail rule that uudecodes the file upon arrival:
# Process file mail
:0 Wbrf: uudecode.lock
* ^Subject: FILE:
* ^From: armstron(_at_)cs(_dot_)ucdavis(_dot_)edu
| (cd $MAILDIR/Files && uudecode)
This rule works, but my files average 150K, and procmail is taking
more than 5 minutes PER FILE to process. The time is not spend
actually decoding the file ("ps -xau | grep uudecode" rarely shows
uudecode running).
Is there any reason for this inefficiency?
I do not run procmail from a .forward. I copied the script out of the
FAQ (somewhere) that copies my spool to ~/.newmail and does this:
formail -s procmail < .newmail 2> /dev/null && rm -f .newmail
I had to increase the lock file timeouts in that script -- the formail
line about is now taking more than an hour to process a 5 meg file
consisting of roughly 20 messages. My entire (now simplified)
.procmailrc follows.
The file mail is not reaching the backup rules. Every permutation I
have tried (changing the flags to every permutation I thought might
make sense, changing the action line to be a shell script that does
the same thing) hasn't had an effect on the slowness.
------------------------------------------------------
# Set on when debugging, off when not
VERBOSE=on
#Replace 'mail' with your mail directory
MAILDIR=/n/lk/matta/mail
#Directory for storing procmail log and rc files
PMDIR=/n/lk/matta/.procmail
LOGFILE=$PMDIR/log
LOG="--------------------------------------
"
# Process file mail
:0 Wbrf: uudecode.lock
* ^Subject: FILE:
* ^From: armstron(_at_)cs(_dot_)ucdavis(_dot_)edu
| (cd $MAILDIR/Files && uudecode)
# Default place for new mail, if nothing below matches
DEFAULT = delayed.hourly
:0 c
backup
:0 ic
| cd backup && rm -f dummy `ls -t msg.* | sed -e 1,32d`
------------------------------------------------------
--
Matt