Pagina 1 di 1
un aiutino con crontab
Inviato: ven 18 gen 2008, 18:05
da danix
Ciao a tutti...
ho un piccolo problema con crontab, immagino sia perchè non l'ho mai usato, comunque...

premetto che ho controllato e crond è in esecuzione -->
/usr/sbin/crond -110
usando crontab -e ho inserito la seguente riga:
Codice: Seleziona tutto
5 * * * * echo "ciao a tutti" >> /home/miahome/file_di_testo.txt
Se non ho capito male dovrebbe aggiungere la riga "ciao a tutti" al file "file_di_testo.txt" contenuto nella mia home ogni 5 minuti, giusto??
Solo che non funziona

nella doc non ho trovato nulla che possa aiutarmi, qualcuno di voi mi sa dire se sto sbagliando qualcosa??
Grazie mille a tutti...
Ciau
Re: un aiutino con crontab
Inviato: ven 18 gen 2008, 18:21
da alnilam
Ciao, dopo aver impostato le regole nel file devi dare
Col comando crontab -e dovresti aver editato il file che si trova in
/var/spool/cron/crontabs/
Puoi anche copiarti il file in un qualsiasi punto del file system ed editarlo con un editor come vim... poi comunque ricorda di dare il comando scritto sopra...
Re: un aiutino con crontab
Inviato: ven 18 gen 2008, 18:32
da Mario Vanoni
danix85 ha scritto:Ciao a tutti...
ho un piccolo problema con crontab, immagino sia perchè non l'ho mai usato, comunque...

premetto che ho controllato e crond è in esecuzione -->
/usr/sbin/crond -110
usando crontab -e ho inserito la seguente riga:
Codice: Seleziona tutto
5 * * * * echo "ciao a tutti" >> /home/miahome/file_di_testo.txt
Se non ho capito male dovrebbe aggiungere la riga "ciao a tutti" al file "file_di_testo.txt" contenuto nella mia home ogni 5 minuti, giusto??
Solo che non funziona

nella doc non ho trovato nulla che possa aiutarmi, qualcuno di voi mi sa dire se sto sbagliando qualcosa??
Grazie mille a tutti...
Ciau
Prova come utente root, e metti * * * * * echo ... con crontab -e
per provare in fretta, la directory /home/miahome _deve_ esistere!
A me funzionano tutti i comandi cosi`, tutti come utente root.
Diventa utente miahome, fai lo stesso, se non va
allora utente miahome != /home/miahome
Mario Vanoni
Re: un aiutino con crontab
Inviato: ven 18 gen 2008, 19:22
da danix
Mario Vanoni ha scritto:Prova come utente root, e metti * * * * * echo ... con crontab -e
per provare in fretta, la directory /home/miahome _deve_ esistere!
A me funzionano tutti i comandi cosi`, tutti come utente root.
Diventa utente miahome, fai lo stesso, se non va
allora utente miahome != /home/miahome
Mario Vanoni
ho problemi anche a farlo andare da root...
per provare ho killato crond e l'ho riavviato in foreground attivando il debug, ho impostato:
come utente root, ho dato il comando:
come consigliato da alnilam
e ha funzionato, nel senso che ad ogni aggiornamento (ogni minuto) veniva aggiungo un rigo con scritto "ciao a tutti"...
Per provare allora ho impostato un altro comando (uno script che mi restituisce il mio indirizzo ip):
ho ridato:
ma cron continua a scrivermi "ciao a tutti" nel file...
ho controllato crontab -l e mi restituisce la riga corretta (quella con lo script per l'IP)
allora ho killato e riavviato crond
e ancora continua a scrivermi "ciao a tutti"...
che faccio adesso??
Grazie a tutti
Re: un aiutino con crontab
Inviato: ven 18 gen 2008, 20:14
da alnilam
E' strano il comportamento che descrivi... preso dal dubbio ho provato ad impostare 2 differenti comandi e tutto funziona come dovrebbe...
A questo punto controlla:
-la regola impostata va in conflitto con un'altra regola eventualmente presente nel file?
-lo script che utilizzi ha i permessi di esecuzione impostati?
-hai controllato che piu' istanze di crond non siano in esecuzione?
Altro non mi viene in mente... potresti provare con l'approccio poco "scientifico" del "riavvio il sistema e vediamo se funziona..." ...

Re: un aiutino con crontab
Inviato: ven 18 gen 2008, 20:22
da danix
prima di mettermi a fare altri esperimenti, volevo chiedervi, per passare degli argomenti ad un programma che va in crontab, devo metterlo magari tra virgolette o altro??
per farmi capire:
oppure
???
Grazie per l'aiuto...

Re: un aiutino con crontab
Inviato: ven 18 gen 2008, 20:26
da alnilam
ho provato senza quoting e funziona...
Re: un aiutino con crontab
Inviato: ven 18 gen 2008, 20:45
da Mario Vanoni
danix85 ha scritto:Mario Vanoni ha scritto:Prova come utente root, e metti * * * * * echo ... con crontab -e
per provare in fretta, la directory /home/miahome _deve_ esistere!
A me funzionano tutti i comandi cosi`, tutti come utente root.
Diventa utente miahome, fai lo stesso, se non va
allora utente miahome != /home/miahome
Mario Vanoni
ho problemi anche a farlo andare da root...
per provare ho killato crond e l'ho riavviato in foreground attivando il debug, ho impostato:
come utente root, ho dato il comando:
come consigliato da alnilam
e ha funzionato, nel senso che ad ogni aggiornamento (ogni minuto) veniva aggiungo un rigo con scritto "ciao a tutti"...
Per provare allora ho impostato un altro comando (uno script che mi restituisce il mio indirizzo ip):
ho ridato:
ma cron continua a scrivermi "ciao a tutti" nel file...
ho controllato crontab -l e mi restituisce la riga corretta (quella con lo script per l'IP)
allora ho killato e riavviato crond
e ancora continua a scrivermi "ciao a tutti"...
che faccio adesso??
Grazie a tutti
Non capisco il tuo crontab /dir/file, _mai_ usato.
I files sono in /var/spool/cron/crontabs,
e.g. root, pincopallina etc.
Perche` killare crond?
Con crontab -e (ovviamente come utente giusto) riparte da solo.
Se da utente normale,
ovviamente deve avere il permesso di scrittura sulla directory target.
Mario Vanoni
Re: un aiutino con crontab
Inviato: ven 18 gen 2008, 20:59
da danix
Mario Vanoni ha scritto:Non capisco il tuo crontab /dir/file, _mai_ usato.
I files sono in /var/spool/cron/crontabs,
e.g. root, pincopallina etc.
semplicemente:
Codice: Seleziona tutto
$ man crontab
...
crontab file [-u user] - replace crontab from file
...
per usare un file diverso da quello in /var/spool/cron/crontabs in modo da modificarlo con un editor diverso da vi
Mario Vanoni ha scritto:Perche` killare crond?
E' uno degli esperimenti che ho fatto perchè vedevo che nemmeno da root aggiornava il comando che gli avevo assegnato
Mario Vanoni ha scritto:Con crontab -e (ovviamente come utente giusto) riparte da solo.
Se da utente normale,
ovviamente deve avere il permesso di scrittura sulla directory target.
Mario Vanoni
Mi chiarisci cosa vuoi dire con "utente giusto" ?? Intendi root??
per quanto riguarda i permessi sono a posto, ho fatto dei tentativi lanciando a mano i comandi che poi ho messo nel crontab e funzionavano bene...
Ancora grazie mille per l'aiuto...

Re: un aiutino con crontab
Inviato: ven 18 gen 2008, 21:11
da conraid
danix85 ha scritto:
crontab file [-u user] - replace crontab from file
...[/code]
per usare un file diverso da quello in /var/spool/cron/crontabs in modo da modificarlo con un editor diverso da vi
cron è un demone, puoi modificare i file con quel che vuoi.
Al limite dopo dai solo un "contrab -e" e salvi subito senza modificare.
E lascia tutto nei percorsi standard.
Importante per i backup
ho fatto la prova che dici e... mi da problemi con >> mentre con > è andato bene.
Ma è stata una prova troppo veloce.
IMHO prova a fare un file .sh che fa tutto non che fa alcune cose e poi ridirigi l'output.
Re: un aiutino con crontab
Inviato: ven 18 gen 2008, 21:30
da Mario Vanoni
danix85 ha scritto:
Mi chiarisci cosa vuoi dire con "utente giusto" ?? Intendi root??
per quanto riguarda i permessi sono a posto, ho fatto dei tentativi lanciando a mano i comandi che poi ho messo nel crontab e funzionavano bene...
Sei fai crontab -e da utente pincopallina
il programma deve essere eseguibile da pincopallina,
la directory dove scrive deve essere scrivibile per pincopallina.
Con root non hai mai problemi, onnipotente o quasi!
Redirection con > oppure con >> non fanno differenza,
_se_ i permessi ambo le parti sono giusti,
se sono sbagliati, idem.
Mario Vanoni
Re: un aiutino con crontab
Inviato: ven 18 gen 2008, 23:28
da mauro
danix85 ha scritto:
Codice: Seleziona tutto
5 * * * * echo "ciao a tutti" >> /home/miahome/file_di_testo.txt
Se non ho capito male dovrebbe aggiungere la riga "ciao a tutti" al file "file_di_testo.txt" contenuto nella mia home ogni 5 minuti, giusto??
Magari non e' proprio attinente ai problemi che hai ora con crontab, ma con quella impostazione non te lo esegue ogni 5 min. bensi ogni ora, alle 1:05, 2:05, etc...
Re: un aiutino con crontab
Inviato: ven 18 gen 2008, 23:43
da danix
mauro ha scritto:Magari non e' proprio attinente ai problemi che hai ora con crontab, ma con quella impostazione non te lo esegue ogni 5 min. bensi ogni ora, alle 1:05, 2:05, etc...
Eccome se è attinente, come ho precisato è la prima volta che provo ad usare crontab, avevo questo dubbio in effetti dopo aver visto gli esempi nel man, ma nessuno mi aveva fatto notare questa cosa e non sapevo che pensare... per caso mi sapresti dire come fare per farlo eseguire ogni cinque minuti (se è possibile)??
Grazie mille della risposta...
Ciau
Re: un aiutino con crontab
Inviato: sab 19 gen 2008, 7:39
da aschenaz
danix85 ha scritto:...mi sapresti dire come fare per farlo eseguire ogni cinque minuti (se è possibile)??
Metti una
/ prima del 5 ( /5 ).
Ciao,
nino
Re: un aiutino con crontab
Inviato: sab 19 gen 2008, 10:59
da danix
Grazie a tutti,
adesso vedo se funziona, ho fatto uno script che si occupa di tutto in automatico e viene lanciato ogni 5 minuti...
Vi faccio sapere com'è andata...
Ciau...