faxcron(8) HylaFAX routine maintenance script

SYNOPSIS

/usr/sbin/faxcron [ -n ] [ -l lastrun ]

DESCRIPTION

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(8) 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/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.

OPTIONS

-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)).

NOTES

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.)

FILES

/var/spool/hylafax                     spooling area
/var/spool/hylafax/status/lastrun      timestamp of last run
/usr/sbin/xferfaxstats                 for generating transmit statistics
/usr/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