This is an old revision of the document!
fcron
L'installazione di fcron sostituisce anacron, ma non cron.
I task daily, weekly e monthly specificati in /etc/crontab
vengono disattivati a causa del link /usr/sbin/anacron → /bin/true
. In pratica cron
crede che sia installato anacron
e non esegue i task.
Gli fcron system wide sono associati all'utente fittizio systab, per vederli:
fcrontab -l -u systab
Per editare il fcrontab di sistema:
fcrontab -e -u systab
Per vedere quando un task è stato schedulato, si usa fcrondyn
:
fcrondyn fcrondyn> ls systab
La sintassi dei fcrontab
è descritta in man di fcrontab(5)
, ecco un esempio di un comando eseguito ogni 24 ore di uptime:
@mailto(niccolo@rigacci.org),forcemail 24h /usr/local/bin/script
anacron
Per job con frequenza maggiore che giornaliera si utilizza sempre cron
, invece anacron
garantisce che i job giornalieri, settimanali o mensili vengano eseguiti correttamente anche su sistemi che non stanno accesi 24h/24h.
anacron
affianca il demone cron
: all'avvio del sistema legge /etc/anacrontab
per vedere quali job devono essere eseguiti. Nella configurazione predefinita Debian, esegue con la periodicità opportuna gli script contenuti in /etc/cron.{daily|weekly|monthly}
, lanciandoli con un certo ritardo specificato. Al termine il demone esce.
L'installazione di anacron
predefinita Debian pertanto disattiva l'esecuzione automatica di /etc/crontab
per evitare che i job giornalieri, settimanali e mensili vengano eseguiti doppiamente da anacron
e cron
.
A seconda dell'uptime previsto per la macchina si può schedulare un job con un frammento standard di cron messo in /etc/cron.d/
(consigliato ad esempio per frequenze di esecuzione di più volte al giorno) oppure aggiungendo uno script di shell in una delle directory /etc/cron.{daily|weekly|monthly}
(per frequenze giornaliere o superiori).