‘Micron’ is an implementation of the UNIX cron
daemon,
a program that executes periodically various tasks. It provides a
flexible job scheduler that offers complete control over execution
of the scheduled commands as well as additional organizational
features.
Cron daemons have a long history, dating back to Seventh Edition Unix. The most widespread cron implementations today are Vixie cron and its derivatives, originally written by Paul Vixie, and Dillon’s cron, written by Matt Dillon.
‘Micron’ is a clean, multi-threaded implementation, written from scratch, which does not share any code with its predecessors. Some of the new features provided by ‘micron’ are: flexible control over cronjob’s standard output and error streams, which can be redirected to syslog, mailed to arbitrary list of emails, appended to a file, or simply ignored, control over the number of cronjob instances that are allowed to run simultaneously, and user-group crontabs. For a complete list, see Features.
While providing new features, ‘micron’ tries to preserve backward compatibility with the two above-mentioned implementations. In particular, existing crontabs from Vixie cron can be used with ‘micron’ without changes. The same holds true for per-user crontabs from Dillon’s cron. System-wide crontabs from Dillon’s cron will require a minor editing: the user name must be added between the schedule and command.
The implementation consists of two binaries: the main daemon micrond
and the crontab
utility.