LeoBenelli
|
CRON/CROND |
|
Controlla la pianificazione delle operazioni periodiche. Ogni minuto verifica se qualche schedulazione
deve essere attivata. Per gestire le schedulazioni e'
opportuno usare il comando crontab -e che apre un
editor, ed all'uscita verifica se le impostazioni sono
state scritte correttamente. Per visualizzare il file crontab
eseguire crontab -l. Nel file crontab se specificata
la variabile MAILTO="utente", utente ricevera' l'output di ogni job,
se la variabile non e' specificata verra' inviato
al proprietario, se vuota (MAILTO="") non
sara' inviato niente. |
|
File e Directory |
Descrizione |
/var/spool/cron/... |
Directory con script creati da crontab
-e divisi per utente |
/etc/cron.d/ |
Directory con script. |
/etc/crontab |
File con i settaggi di cron con possibilita' di
specificare l'utente |
/etc/cron.allow |
Se presente indica gli utenti che possono usare cron |
/etc/cron.deny |
Se presente indica gli utenti che non possono usare cron |
/etc/cron.hourly |
Directory contenente gli script da eseguire ogni ora (per Red Hat) |
/etc/cron.daily |
Directory contenente gli script da eseguire ogni giorno
(per Red Hat) |
/etc/cron.weekly |
Directory contenente gli script da eseguire ogni settimana
(per Red Hat) |
/etc/cron.monthly |
Directory contenente gli script da eseguire ogni mese (per
Red Hat) |
Qui di seguito un esempio di riga di /etc/crontab : 01 * * * * root run-parts /etc/cron.hourly |
|
Qui di seguito un esempio di riga di /var/spool/cron/root * * * * 0 ls |
|
Qui di seguito un esempio di riga di /etc/cron.d/kmod :
*/10 * * * * root /sbin/rmmod -as
|
|
La struttura e' la seguente di ogni
richiesta e' la seguente : <Minuto> ( Valore da 0 a 59 ) <ora> ( Valore da 0 a 23 ) <giorno> ( Valore da 1 a 31 ) <mese> ( Valore da 1 a 12 ) <G. Settimana> ( Valore da 0 a 7, sia 0 che 7
corrispondono a domenica ) <utente> ( per eseguire un lavoro con un utente
diverso da root, solo per il file crontab per evitare di usare un file crontab
separato per l'utente ) <comando> ( Istruzione da Eseguire ) Per i primi 5 campi con * si
tralascia la selezione per quel campo Alcune distribuzioni come redhat
mettono a disposizione job gia' impostati che periodicamente eseguono tutti gli script
residenti in directory dentro /etc tramite uno
script chiamato run-parts. Si puo' nella specifica del
periodo di schedulazione indicare intervalli dalle...alle con "-" o il passo con
"/" ed indicare piu' specifiche con
"," quindi: 1-3 indica 1,2,3 1-9/2 indica 1,3,5,7,9 1-3,5-7 indica 1,2,3,5,6,7 |
AT/ATD |
|
Permette di eseguire un comando ad una determinata ora o
quando le condizioni del sistema lo permettano |
|
Comandi |
Descrizione |
at |
Comando per impostazione comando
da schedulare. |
atq |
Visualizza le schedulazioni |
atrm |
Cancella una schedulazione |
batch |
Imposta una schedulazione che verra' eseguita solo quando le condizioni di impegno della cpu lo permette |
Qui di seguito un esempio di riga di impostazione
di una schedulazione at 11:30 -f /usr/bin/programma |
|
Ad ogni lavoro verra' assegnato un gruppo di appartenenza (se non specificato verra' associato al gruppo "a" ) che determina
l'impegno del sistema ad eseguire il job e di conseguenza la velocita' di esecuzione. L'ordine di priorita'
va da "a" (piu' veloce) a "z"
poi si parte con le lettere maiuscole "A" fino a "Z" (piu' lento),
Es. : at -q Z 11:30 -f /usr/bin/programma |
|
Per non specificare l'ora precisa di esecuzione,
ma impegnare le risorse nell'esecuzione di un processo quando le condizioni
lo consentano si usa il comando "batch" : batch
-f /usr/bin/programma
(Quando le condizioni lo permettano il programma sara'
eseguito) o batch
11:30 -f /usr/bin/programma
(Partendo dalle 11:30 quando le condizioni lo permettano il programma sara' eseguito) La condizione che permette l'esecuzione avviene quando il
carico di job per minuto scende sotto il valore di 0,8; tale informazione e'
visibile eseguendo : cat /proc/loadavg (Il primo valore
e' quello da prendere in considerazione) |
|
Per una schedulazione periodica
e' conveniente usare il sistema CRON. |
SYSLOGD |
|
Permette la gestione dei log dei vari programmi ed
operazioni effettuate sul sistema. |
|
File e Directory |
Descrizione |
/etc/syslog.conf |
File di configurazione del demone. |
I logs sono divisi per facility, questo permette di smistare i logs in base alla provenienza, cioe'
al tipo di applicazione, e per priority
cioe' in base alla gravita'
: Facility :
auth aut-priv cron daemon kern
lpr mail mark news security Priority :
debug info notice warning error crit alert emerg Priorit |