a) Crontab Environmental
settings
I settaggi ambientali utilizzano la seguente forma:
nome = valore
Cron conosce già le diverse variabili ambientali.
Per esempio, SHELL è settato a /bin/bash.
Altre variabili ambientali, come LOGNAME e HOME, sono associate
al possessore del file. SHELL e HOME posso essere sovrascritte
nello script, mentre non è possibile farlo con LOGNAME.
Se MAILTO è definito (e non è settato a "
"), tale variabile è inserita in una riga nel
file crontab, e spedisce ogni messaggio generato all'utente
specificato in questo campo.
La seguente riga mostra MAILTO settato ad uno specifico
utente (luca): # spedisce tutti gli output all'utente *luca*
(non importa chi è il proprietario di questo crontab)
MAILTO=luca
b) Crontab Command settings
I settaggi comandi usano un formato standard: ogni riga
inizia con cinque campi ora/data. Se è il crontab
di sistema, il campo successivo è lo username associato
con la voce. Il campo seguente sarà il comando da
eseguire. Il comando verrà eseguito solo quando la
data e l'ora corrente coincideranno con tutti i valori dei
campi time/date del crontab. Nel paragrafo succ. vi è
un esempio.
I campi disponibili per la data e l'ora sono i seguenti:
Campi | Valori ammessi
----------------
minuti | 0-59
ore | 0-23
giorno | 1-31
mese | 1-12
giorno della settimana | 0-7 (0 & 7 indicano la domenica)
Questi campi possono anche contenere un asterisco (*) invece
di un numero. Un asterisco indica che ogni possibile valore
è ammesso.
--Dettagli---
La righe seguenti mostrano il /etc/crontab installato per
default nella RedHat 6.2:
SHELL=/bin/bash
PATH=/sbin:/bin:/usr/sbin:/usr/bin
MAILTO=root
HOME=/
# run-parts
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
Avete notato come crontab chiama i quattro diversi eventi?
Il primo è associato ad eventi orari (eseguiti nel
primo minuto di ogni ora)
Il secondo è associato ad eventi giornalieri (eseguiti
alle ore 4:02 di ogni giorno)
Il terzo è associato ad eventi settimanali (eseguiti
alle 4:22 di ogni domenica)
L'ultimo è associato ad eventi mensili (eseguiti
alle 4:42 nel primo giorno di ogni mese).
Qualcosa da ricordare:
Il sistema non va indietro e raccoglie i lavori cron, esso
li esegue solo se la data e l'ora sono uguali alla voce
nel file. Ad esempio se il computer è spento quando
dovrebbe essere eseguito il cron, quel programma non viene
più eseguito.
Permessi e divieti di accesso al servizio crontab
Ci sono due file che abilitano la root (solo la root dovrebbe
avere il permesso di editare o creare questi file) per autorizzare
o vietare l'utilizzo dei servizi crontab agli utenti; essi
sono: /etc/cron.allow -- Questo file in genere non esiste,
lo dovete creare. Ogni voce che piazzerete in questo file
coprirà quella inserita in /etc/cron.deny. Se il
file /etc/cron.allow esiste, solo gli utenti specificati
dentro posso usufruire del servizio crontab.
/etc/cron.deny -- Questo file esiste per default. In esso,
ci metterete lo username delle persone a cui vietate l'utilizzo
del servizio crontab.
|