---
name: "faxcron"
section: "8"
platform: "linux"
package: "hylafax-server"
version: "3:6.0.7-11.1"
release: "Debian 13 (Trixie)"
platforms: ["linux"]
url: "https://new.carta.tech/faxcron"
---

# faxcron(8)

HylaFAX routine maintenance script

## NAME

faxcron - *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)](/cron/8.md) 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)](/date/1.md) 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)](/chmod/1.md)).

## NOTES

This script requires [*nawk*(1)](/nawk/1.md) or [*gawk*(1)](/gawk/1.md) 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
```

## SEE ALSO

[*cron*(8)](/cron/8.md), [*faxq*(8)](/faxq/8.md), [*faxgetty*(8)](/faxgetty/8.md), [*faxsend*(8)](/faxsend/8.md), [*xferfaxstats*(8)](/xferfaxstats/8.md), [*recvstats*(8)](/recvstats/8.md), [*hylafax-server*(5)](/hylafax-server/5.md)
