|
|
|
|
Strumenti |
04-11-2011, 10:59 | #1 |
Senior Member
Iscritto dal: Apr 2001
Città: Roma
Messaggi: 3778
|
Aiuto con crontab
Ciao a tutti
Devo schedulare 2 script (sequenziali) per girare tutti i giorni a mezzogiorno su una macchina freebsd. Nella mia macchina ho il mio file crontab che si presenta così: 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 Quello che non capisco: è qui che devo inserire i comandi o nella cartella cron.daily? |
04-11-2011, 22:09 | #2 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
In GNU/Linux solitamente non si modifica direttamente il file /etc/crontab, né il contenuto delle cartelle hourly, daily, ecc...
I processi impostati in hourly, daily, ecc... sono di stretta competenza delle distribuzioni e sono relativi a processi di manutenzione standard. Spesso si usa il comando crontab -e che crea un crontab di proprietà dell'utente con cui si invoca (salvati in /var/spool/cron/crontabs/). I comandi impostati nei crontab dell'utente sono eseguiti con i diritti di quell'utente, l'eventuale output (se non rediretto) inviato via mail all'utente. È anche possibile aggiungere un frammento di crontab nella cartella di sistema /etc/cron.d/. Questo metodo è praticamente equivalente alla modifica diretta di /etc/crontab, ma permette di evitare la modifica del file principale (se si facesse un errore si rischierebbe di far saltare tute le pianificazioni) e di mantenere più ordine. Tirando le somme ti consiglierei di aggiungere un frammento di crontab in /etc/cron.d (dovrebbe esserci anche in FreeBSD); in assenza di questa cartella nel crontab di root.
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...) |
08-11-2011, 13:34 | #3 |
Senior Member
Iscritto dal: Apr 2001
Città: Roma
Messaggi: 3778
|
Ciao ti ringrazio per la risposta. Provo subito.
|
08-11-2011, 13:39 | #4 |
Senior Member
Iscritto dal: Apr 2001
Città: Roma
Messaggi: 3778
|
Allora ho provato come hai detto tu nel primo esempio:
ho digitato cron -e e ho creato un file dove ho: 33 14 * * * root sh /etc/crontest.sh ~ ~ ~ ~ ~ ~ (Con l'intento di eseguire lo script crontest.sh tutti i giorni alle 14 33) Ma non funge |
08-11-2011, 14:29 | #5 |
Senior Member
Iscritto dal: Apr 2001
Città: Roma
Messaggi: 3778
|
Mi rispondo da solo:
senza specificare l'utente 'root' funziona. Ma quindi con quali privilegi starà girando ora? |
08-11-2011, 18:46 | #6 |
Senior Member
Iscritto dal: Feb 2006
Città: Parma
Messaggi: 3008
|
Con i diritti dell'utente con cui hai invocato crontab -e (è cron -e in *BSD?)
È possibile creare un crontab per ogni utente del sistema.
__________________
~Breve riferimento ai comandi GNU/Linux (ormai non molto breve...) |
Strumenti | |
|
|
Tutti gli orari sono GMT +1. Ora sono le: 23:59.