Wiki Ubuntu-it

Indice
Partecipa
FAQ
Wiki Blog
------------------
Ubuntu-it.org
Forum
Chiedi
Chat
Cerca
Planet
  • Pagina non alterabile
  • Informazioni
  • Allegati
  • Differenze per "AmministrazioneSistema/Cron"
Differenze tra le versioni 4 e 5
Versione 4 del 20/11/2005 13.27.44
Dimensione: 3480
Commento:
Versione 5 del 20/11/2005 13.28.22
Dimensione: 3362
Commento:
Le cancellazioni sono segnalate in questo modo. Le aggiunte sono segnalate in questo modo.
Linea 1: Linea 1:
[[BR]]
||<tablestyle="width:70%; background:#F1F1ED; margin: 0 0 1em 1em">'''Indice'''[[BR]][[TableOfContents]]||

Cos'è Cron?

Cron è un demone usato per programmare azioni che verranno così eseguite in un tempo scelto. Ogni utente ha il suo file per crontab, permettendo loro di specificare le azioni da eseguire e il numero di volte che dovranno essere eseguite. C'è anche un crontab di sistema, permettendo compiti come azioni sui log, aggiornamento dei database che devono essere fatti regolarmente, etc...

Usare Cron

Per usare cron, semplicemente aggiungi delle voci al tuo file di crontab. Una voce di crontab è una stringa che specifica quando lanciare un comando e il comando stesso da eseguire. Un esempio:

5 3 * * * /usr/bin/apt-get update

La prima parte della voce descrive quando l'azione deve essere effettuata. Ci sono cinque campi, separati da uno spazio, ognuno dei quali accetta un numero, un asterisco (*), o un testo appropriato. I campi specificano, in ordine, il *minuto*, l'*ora*, il *giorno del mese*, il *mese* e il *giorno della settimana*. Il campo del mese e quello del giorno della settimana permettono di usare un'abbreviazione, come ad esempio "jan" per Gennaio (January) o "thu" per Giovedì (Thursday).

L'esempio precedente eseguirà /usr/bin/apt-get update ogni giorno di ogni mese alle 03:05 (cron utilizza un tempo indicato sul sistema di 24 ore). Puoi fare in modo che cron ti annoi ogni 5 minuti durante il tuo turno di lavoro (9 di mattina - 5 di pomeriggio) con un messaggio:

*/5 9-17 * * mon,tue,wed,thur,fri wall "Siamo ancora qui?"

o ricordarti un compleanno alle 9 di mattina il 10 gennaio ogni anno:

0 9 10 jan * echo "E' il compleanno di tua madre oggi!" > ~/readme

Per vedere il contenuto corrente del tuo file di crontab, esegui:

crontab -l

Per modificare il file, con un editor specificato nel tuo sistema, utilizza:

crontab -e

Quando chiuderai l'editor, il nuovo file di crontab sarà installato. Il file è mantenuto in /var/spool/cron/crontabs ma deve essere modificato solo per mezzo del comando di crontab.

Considerationi Supplementari

I comandi precedenti sono memorizzati in un file di crontab e verranno eseguiti con il livello di permessi dell'utente a cui appartiene. Se vuoi lanciare un comando regolarmente che richiede ul livello più alto di permessi, imposta un file di crontab per root usando:

sudo crontab -e

A seconda dei comandi che dovrai utilizzare, potresti avere bisogno di modificare la variabile PATH inserendo la seguente linea all'inizio del file di crontab dell'utente:

PATH=/usr/sbin:/usr/bin:/sbin:/bin

E' sensato voler testare se tutto funziona come voluto. Un metodo per farlo è impostare un'azione da eseguire un paio di minuti dopo la modifica del file di crontab e vedere il risultato. Puoi anche trovare utile mettere il comando in un file che terrà traccia del successo o del fallimento dell'esecuzione:

echo "Backup riuscito: $(date)" >> /tmp/mybackup.log

Per maggiori informazioni, utilizza man per cron e crontab. Potrebbe anche esserti utile il comando at (che è parte dell'installazione base di Ubuntu) ed anacron (che si trova nel repository Universe) che fornisce un approccio diverso per azioni programmate.


Traduzione: LorenzoSfarra - Documento Originale: wiki:Ubuntu/CronHowTo