Definizioni In quasi tutti i sistemi operativi è possibile schedulare o meglio programmare ad un certo orario l’avvio di un comando o programma senza essere collegati in qualche modo al sistema. Gli strumenti disponibili su Unix e Linux sono: at Permette di eseguire un comando una volta sola, eventualmente quando il sistema non è occupato o in un momento definibile dall’utente. Non verrà trattato in questa sede. cron E’ un daemon che viene utilizzato dal sistema per eseguire compiti configurabili dall’utente ad intervalli regolari.
Cron e crontab Il demone crond viene eseguito all’avvio del sistema ( /etc/rc.d/init.d/crond ) e, ogni minuto, analizza il suo file di configurazione predefinito /etc/crontab per verificare se deve eseguire dei comandi. Su varie distribuzioni /etc/crontab prevede le seguenti voci: 01 * * * * root run-parts /etc/cron.hourly 02 4 * * * root run-parts /etc/cron.daily 22 4 * * 0 root run-parts /etc/cron.weekly 42 4 1 * * root run-parts /etc/cron.monthly
Che in pratica fanno eseguire: – tutte le ore (al minuto 01) i comandi presenti nella directory /etc/cron.hourly, – tutti i giorni alle 4.02 i comandi in /etc/cron.daily, – tutte le settimane, alle 4.22 di domenica i comandi in /etc/cron.weekly, – tutti i mesi, alle 4.42 del primo del mese, tutti i comandi in /etc/cron.monthly Ogni riga di /etc/crontab prevede quindi sette campi.
I primi 5 campi servono per definire quando eseguire il comando specificato nel settimo campo. Possono contenere valori separati da virgola o un asterisco che indica tutti i calori possibili: 1) Minuto in cui eseguire il comando. Valori da 00 a 59. 2) Ora in cui eseguire il comando. Valori da 0 a 23 (0 è mezzanotte, 12 mezzogiorno) 3) Giorno del mese in cui eseguire il comando. Valori da 1 a 31. 4) Mese dell’anno in cui eseguire il comando. Valori da 1 a 12. 5) Giorno della settimana in cui eseguire il comando. Valori da 0 a 6. (0 corrisponde alla Domenica, 1 al Lunedì.. ) 6) Utente con cui viene eseguito il comando. Crond viene eseguito come root e può impersonificare qualsiasi utente. Questo campo può anche essere omesso (root di default). 7) Riga di comando da eseguire (con eventuali opzioni, argomenti ecc.) Il comando run-parts, nel caso di cui sopra, esegue tutti i comandi presenti nella directory indicata.
Oltre a /etc/crontab, riservato al sistema, ogni utente può editare un proprio crontab file con la stessa struttura di /etc/crontab. In BOFH! i dettagli.
Desiderate avere la possibilita' di ricevere delle notifiche?
Se si avrete la possibilita' di essere sempre aggiornati con le nostre ultime proposte o notizie .
Consigliamo l'adesione Grazie !