faxcron - HylaFAX routine maintenance script
/usr/local/sbin/faxcron [ -n ] [ -l lastrun ]
faxcron is a command script that does routine upkeep tasks in a
HylaFAX spooling directory hierarchy. This script is intended to be
invoked from cron(8C) on behalf of the fax user (often the ``fax'' user
is uucp) once a day, with the standard output sent by mail to the
HylaFAX administrator. For example, the following crontab might be set
up for the fax user:
25 23 * * * sh /usr/local/sbin/faxcron | mail FaxMaster
The faxcron script does the following work:
- report statistics for facsimile transmitted since the last time
faxcron was run.
- report statistics for facsimile transmitted in the past week.
- report statistics for facsimile received since the last time
faxcron was run.
- report statistics for facsimile received in the past week.
- report any recent calls that failed suspiciously and return the associated
trace log;
- purge data that is 30 days or older from the remote machine information
directory;
- delete information that is 30 days or older from session trace log
files;
- remove files from the tmp directory that are older than 1 day;
- remove files in the received facsimile queue that are 7 days or
older;
- report sites that are currently having jobs rejected; and
- force all session log files to be owned by the fax user and kept with
protection mode 644.
- -n
- Forces faxcron to run without updating any files.
- -l lastrun
- Forces the notion of the last time that faxcron was run to be
lastrun. The value of lastrun is a date and time string of
the form ``MM/DD/YY HH:MM'' (the date(1) format string ``%D
%H:%M'').
- -info n
- Set the expiration time for data in the info database to be n
days.
- -log n
- Set the expiration time for session log data to be n days.
- -rcv n
- Set the expiration time for files in the received facsimile queue to be
n days.
- -tmp n
- Set the expiration time for files in the tmp directory to be n
days.
- -mode m
- Set the file protection mode for session logs to m (a command line
argument to chmod(1)).
This script requires nawk(1) or gawk(1) and a date (1)
program that supports the ``+format'' option.
If session logs are to be kept private this script must be
modified to filter out sensitive information such as calling card numbers.
(It should also be run with ``-mode 0600'' so that session log files are not
publicly readable.)
/var/spool/hylafax spooling area
/var/spool/hylafax/etc/lastrun timestamp of last run
/usr/local/sbin/xferfaxstats for generating transmit statistics
/usr/local/sbin/recvstats for generating receive statistics
/var/spool/hylafax/tmp/faxcronXXXX temporary file for truncating session logs
/var/spool/hylafax/tmp/faxlogXXXX temporary file for logs of failed calls
cron(8C), faxq(8C), faxgetty(8C), faxsend(8C),
xferfaxstats(8C), recvstats(8C), hylafax-server(5F)