Il demone cron rappresenta uno degli strumenti più datati e al contempo più preziosi per gli amministratori di sistema. Concepito negli albori dell’informatica moderna, questo processo in background opera silenziosamente, fungendo da instancabile sentinella temporale capace di eseguire script e programmi a intervalli regolari e predefiniti.
La sua capacità di automatizzare attività ripetitive, dalla manutenzione routinaria del sistema all’esecuzione di backup notturni, ha reso cron un componente fondamentale nelle architetture server moderne, dove l’affidabilità e la precisione nella pianificazione delle operazioni rappresentano requisiti imprescindibili.
Indice dei contenuti:
Che cos’è un demone?
Un demone è un programma eseguito in background utilizzato per effettuare determinate attività. Cron, come accennato, è un demone, quindi un servizio che necessita esclusivamente dell’avvio. Sulla maggior parte delle distribuzioni Linux, viene installato di default e si avvia automaticamente dal sistema operativo.
Cron può gestire i comandi jobs in modo da eseguirli una sola volta, alla prima occorrenza della data/ora prescelta, ma è anche possibile far compiere ripetutamente i comandi; per esempio, nel caso in cui si voglia eseguire una determinata operazione ogni giorno e in uno specifico orario viene usato il crontab, i cui comandi mandati in esecuzione vengono chiamati cronjob.
Nel contesto del sistema cron, è infatti importante distinguere tra crontab e cronjob, spesso utilizzati in modo intercambiabile ma che rappresentano due concetti distinti.
Crontab
l crontab (contrazione di “cron table”) è il file di configurazione che contiene l’elenco delle attività programmate e le relative tempistiche di esecuzione per un determinato utente o per l’intero sistema. Ogni utente può avere il proprio crontab personale, accessibile tramite il comando crontab -e.
Cronjob in Linux
Con i cronjob è possibile far eseguire determinate procedure in uno specifico momento e usufruirne dai sistemi operativi (oltre Linux, anche Unix e OS) che prevedono il demone cron.
Per impostare i comandi del cron, l’ordine è il seguente:
[minuti] [ora] [giorno] [mese] [settimana] [utente] [comando]
Ad esempio, se vuoi eseguire uno script ogni mattina alle 08.30, dovrai procedere nella seguente maniera:
30 8 * * * [utente] [comando].
L’asterisco, detto anche wild card, può essere usato come carattere jolly per rappresentare tutti i valori accettabili (ad esempio, un asterisco inserito come valore nel campo giorno, indica che tale comando deve essere eseguito tutti i giorni).
Più nel dettaglio, illustriamo in modo schematico i valori applicabili:
PARAMETRO | VALORE | |
1 | Minuto | 0-59 |
2 | Ora | 0-23 |
3 | Giorno del mese | 1-31 |
4 | Mese | 1-12 |
5 | Giorno della settimana | 0-6 |