[______TOC_______]
[NEXT CHAPTER]
1 Overview
digest is "send articles once N hours" not in realtime.
/usr/local/fml/msend.pl doed this service. Please run this program
periodically for example by cron(8). cron is built-in in UNIX
usually.
% crontab /var/spool/ml/elena/crontab
1.1 What fml administrator needs to do
inject /var/spool/ml/elena/crontab to crontab by crontab(1).
/var/spool/ml/elena/crontab is created by "makefml newml" command.
% makefml newml elena
% crontab /var/spool/ml/elena/crontab
1.2 What the user to do
matome 3mp
Each user sends "matome option" command to elena-ctl@fml.org (in
"elena" ML case). Here "option" is "hour" + "fop". "fop" is file
format in compression.
See /var/spool/ml/elena/help for more details.
To back again to real time delivery, send "matome 0" to control
address.
matome 0
1.3 Cron (FML Vixie cron compatible program, bin/cron.pl)
1.3 Cron (FML Vixie cron compatible program, bin/cron.pl)
man cron
man crontab
The present OS may have a cron for users. Please check it in the
first. e.g. man cron, man crontab If only root can set up OS's cron
so a general user cannot control cron, you can use FML cron (clone of
4.4BSD cron).
FML cron sleeps and runs once a minute. If the crontab entry has a
job now, cron run it. It is same as UNIX cron daemon.
You can run cron manually. fml.pl can run cron.pl automatically. If
fml.pl automatically runs cron.pl, it runs each cron.pl for each
ML. It is of no use. It is enough that one cron.pl for one user.
fml.pl runs only one cron.pl, not plural for one ML. fml.pl checks
$CRON_PIDFILE ($DIR/var/run/cron.pid) to ensure only one cron.pl
running.
cron.pl may be down. OS does not run cron.pl automatically, so
digest delivery does not run until you are aware of it.
For it, you can set up fml.pl runs cron.pl when mail comes in.
In default cron.pl itself exits, and new cron.pl runs to avoid strange
behavior when a process runs long long time.
However -n option enables infinite running.
SYNOPSIS
cron.pl [-a] [-d] [-b43] [-fcrontab] [-bd] $DIR [$LIBDIR]
-d debug mode
-a run eternally(default: 180sec. = 60sec. * 3times)
-n working all times without RESTART
-mtimes run from now to (60 * times) sec. after
-fcrontab-file alternative crontab
-h show this help and exit
-bd daemon (Become Daemon)
-bOSTYPE -b43(OSTYPE = 43): 4.3BSD Like. not mailed to you
-b43 option set
$CRON_NOTIFY = 0; (default 1)
In default, cron.pl notify the cron job log to the owner of the
process by mail (like 4.4BSD cron).
Also in default, cron.pl does not detach the current tty, that is, not
become a daemon since becoming daemon does not work well on an OS.
-onotty
cron.pl becomes daemon by itself. In default
$NOT_USE_TIOCNOTTY = 1; # no ioctl
1.4 Vixie Cron
4.4BSD has Vixie Cron, so you can use it for yourself. Please use it
on 4.4BSD. Also firstly you should check your OS's manuals.
cron (8) - daemon to execute scheduled commands (Vixie Cron)
crontab (1) - maintain crontab files for individual users (V3)
crontab (5) - tables for driving cron
An old OS has no such cron. However an administrator installed Vixie
cron. It is of value to trek your system:-)
cron.pl is a clone for such an old OS.
1.5 How To Install cron.pl
The system in the bootstrap time does not run cron.pl automatically.
We would like to run cron.pl anyway. What should we do?
To run cron.pl, the arguments are
% cron.pl $DIR(config.ph location) $LIBDIR(lib*.pl location)
The problem is how to run cron!. For example, you can set up the
following ways:
1. set up your ~/.login which run cron.pl. When you log in the
system, you run cron.pl. Cron.pl always checks other cron.pl
runs or not, so only one cron.pl runs.
2. runs cron.pl manually :)
3. fml.pl runs cron.pl when mail comes in.
config.ph example for case 3 is
$CRON_PIDFILE = "$DIR/var/run/cron.pid";
$CRONTAB = "$DIR/etc/crontab";
$FML_EXIT_PROG = "$LIBDIR/bin/cron.pl $DIR $LIBDIR -a";
cron.pid ($DIR/var/run/cron.pid) corresponds to /var/run/cron.pid but
exists for each ML under FML.
When you run "makefml newml", FML sets up each crontab for each ML.
It is an example for Vixie cron. You can use it on 4.4BSD and under
Vixie cron.
[Example]
% makefml newml elena
...
% cd /var/spool/ml/elena
% crontab crontab
[______TOC_______]
[NEXT CHAPTER]