Repository 32bit  Forum
Repository 64bit  Wiki

Usare CRON

Postate qui per tutte le discussioni legate a Linux in generale.

Moderatore: Staff

Regole del forum
1) Citare sempre la versione di Slackware usata, la versione del Kernel e magari anche la versione della libreria coinvolta. Questi dati aiutano le persone che possono rispondere.
2) Per evitare confusione prego inserire in questo forum solo topic che riguardano appunto Gnu/Linux in genere, se l'argomento è specifico alla Slackware usate uno dei forum Slackware o Slackware64.
3) Leggere attentamente le risposte ricevute
4) Scrivere i messaggi con il colore di default, evitare altri colori.
5) Scrivere in Italiano o in Inglese, se possibile grammaticalmente corretto, evitate stili di scrittura poco chiari, quindi nessuna abbreviazione tipo telegramma o scrittura stile SMS o CHAT.
6) Appena registrati è consigliato presentarsi nel forum dedicato.

La non osservanza delle regole porta a provvedimenti di vari tipo da parte dello staff, in particolare la non osservanza della regola 5 porta alla cancellazione del post e alla segnalazione dell'utente. In caso di recidività l'utente rischia il ban temporaneo.

Usare CRON

Messaggioda darkstaring » mar mar 26, 2013 17:15

Sera a tutti...

Sto cercando di schedulare operazioni con cron senza successo...
In pratica scrivo un file in " /etc/cron.d/ " e le dò i permessi di esecuzione (777) ma arrivando al momento nel quale lo script dovrebbe essere eseguito
mi accorgo che invece non viene eseguito...

Sapete darmi qualche dritta?...Può essere legato al timezone impostato?
Questo è il file che scrivo:
Codice: Seleziona tutto
root@mediahp:/etc/cron.d# cat htv
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
18 17 * * * root init 0 

root@mediahp:/etc/cron.d# cron -l
cron: can't lock /var/run/crond.pid, otherpid may be 28045: Resource temporarily unavailable

root@mediahp:/etc/cron.d# ps aux | grep cron
See http://gitorious.org/procps/procps/blobs/master/Documentation/FAQ
root     28045  0.0  0.0  19112   980 ?        Ss   17:11   0:00 cron



Grazie
Francesco
darkstaring
Linux 2.4
Linux 2.4
 
Messaggi: 364
Iscritto il: mer ott 13, 2010 12:55
Slackware: Current
Desktop: xfce

Re: Usare CRON

Messaggioda miklos » mar mar 26, 2013 17:36

non sono un esperto di cron.. sicuramente c'e' chi è piu' ferrato di me in questo campo.. ma una volta ci sono impazzito anche io dietro ad una cosa simile e ho capito che:

  • i file presenti sotto /etc/cron.d/ a meno che non riavvi il demone non vengono subito recepiti, mi pare che cron di suo rilegga la configurazione ogni 30 minuti
  • diverso è il caso in cui editi il crontab dell'utente loggato tramite il comando crontab -e. in questo caso infatti viene istruito il demone a riconfigurarsi entro il minuto successivo.

non so se puo' essere il tuo caso.

ciaup
ho visto cose che voi astemi non potete immaginare
miklos
Linux 3.x
Linux 3.x
 
Messaggi: 1205
Iscritto il: lun lug 16, 2007 16:39
Località: Roma
Slackware: 14.1 64bit
Kernel: 3.12.6
Desktop: openbox 3.5.2

Re: Usare CRON

Messaggioda darkstaring » mar mar 26, 2013 17:47

Sono su un server Ubuntu...
Difficile usare 'crontab -e'... Il file cron lo faccio generare dall'utente tramite php e non da terminale...
Ho provato a riavviare cron ma nisba...
Sembra che la directory /etc/cron.d non venga vista.. in /var/log non ho nessun log su cron ma il servizio è in esecuzione...

Non è che devo inserire in /etc/crontab di verificare ogni minuto se ci sono cosa da eseguire cose in /etc/cron.d ???
darkstaring
Linux 2.4
Linux 2.4
 
Messaggi: 364
Iscritto il: mer ott 13, 2010 12:55
Slackware: Current
Desktop: xfce

Re: Usare CRON

Messaggioda miklos » mar mar 26, 2013 18:02

guarda qui in particolare il pezzo
don't forget to add a newline at the end of your command in your cron file.
magari generandolo tramite php puo' essere questo il problema.

ciau
ho visto cose che voi astemi non potete immaginare
miklos
Linux 3.x
Linux 3.x
 
Messaggi: 1205
Iscritto il: lun lug 16, 2007 16:39
Località: Roma
Slackware: 14.1 64bit
Kernel: 3.12.6
Desktop: openbox 3.5.2

Re: Usare CRON

Messaggioda targzeta » mar mar 26, 2013 20:46

Ma i file in cron.d devono essere script e non entry per crontab. Quel file htv non ha molto senso...o mi sono perso qualcosa???

Emanuele
Linux Registered User #454438
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
20/04/2013 - Io volevo Rodotà
Avatar utente
targzeta
Iper Master
Iper Master
 
Messaggi: 6155
Iscritto il: gio nov 03, 2005 14:05
Località: Carpignano Sal. (LE) <-> Pisa
Nome Cognome: Emanuele Tomasi
Slackware: current
Kernel: latest stable
Desktop: IceWM

Re: Usare CRON

Messaggioda ZeroUno » mer mar 27, 2013 0:18

no Manu. Le entry in cron.daily &co devono essere script, mentre quelli in cron.d devobo essere entry cron con in più (rispetto a crontab -e) l'utente con cui lanciare il comando
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111
Avatar utente
ZeroUno
Staff
Staff
 
Messaggi: 4345
Iscritto il: ven giu 02, 2006 13:52
Località: Roma / Castelli
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current

Re: Usare CRON

Messaggioda darkstaring » mer mar 27, 2013 10:09

Non sò perchè ma non và...
Questo è il file che genero:
Codice: Seleziona tutto
root@mediahp:~# ls -al /etc/cron.d/h*
-rwxrwxrwx 1 www-data www-data 159 mar 27 10:07 /etc/cron.d/htv

root@mediahp:~# cat /etc/cron.d/htv
SHELL=/bin/bash
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games
10 10 * * * root echo "AJO" > /tmp/riesce.txt

Se funziona alle 10 e 10 mi dovrei trovare /tmp/riesce.txt che invece non si crea..
Cosa mi consigliate?

....Posso mettere più scheduling: ( 10 10 * * * root echo "AJO" > /tmp/riesce.txt ) nello stesso file ?
darkstaring
Linux 2.4
Linux 2.4
 
Messaggi: 364
Iscritto il: mer ott 13, 2010 12:55
Slackware: Current
Desktop: xfce

Re: Usare CRON

Messaggioda ZeroUno » mer mar 27, 2013 10:40

puoi mettere più entry si.

Per aggiornare la cache di cron.d senza aspettare dai touch /etc/cron.d/cron.update

killa crond e startalo a mano con

/usr/sbin/crond -l notice

ora in /var/log hai il file 'cron'

che, con il tuo htv, da:

Mar 27 10:36:16 matteo crond[11946]: failed parsing crontab for user root: SHELL=/bin/bash
Mar 27 10:36:16 matteo crond[11946]: failed parsing crontab for user root: PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games


edit: questo su slackware
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111
Avatar utente
ZeroUno
Staff
Staff
 
Messaggi: 4345
Iscritto il: ven giu 02, 2006 13:52
Località: Roma / Castelli
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current

Re: Usare CRON

Messaggioda darkstaring » mer mar 27, 2013 13:08

Ho fatto tutto quello che mi hai detto ma il file /usr/sbin/crond non esiste...
C'è una differenza tra cron e crond in /usr/sbin/ ???

Ho stoppato il servizio di cron, killato il processo
creato /etc/cron.d/cron.update
e riavviato cron con "/usr/sbin/cron -l notice" (attenzione alla d che manca).

In /var/log/ non ho nessun log su cron e le operazioni non vengono eseguite.
darkstaring
Linux 2.4
Linux 2.4
 
Messaggi: 364
Iscritto il: mer ott 13, 2010 12:55
Slackware: Current
Desktop: xfce

Re: Usare CRON

Messaggioda ZeroUno » mer mar 27, 2013 15:21

Come dicevo, quanto detto è riferito a slackware. Può darsi che su ubuntu il processo si chiama cron e sia in un altro path (dipende da come è stato compilato).

il lancio manuale consente di mettere il "-l notice" che consente di creare un log (per capire perchè non parte) che in slackware è /var/log/cron, ma in ubuntu potrebbe chiamarsi in modo diverso o mettersi dentro il /var/log/messages

Se il problema è lo stesso di slackware, elimina SHELL e PATH da htv lasciando solamente
10 10 * * * root echo "AJO" > /tmp/riesce.txt

so per certo che in alcune distribuzioni è possibile mettere SHELL e PATH. In quali non lo so, ma se in slackware ce lo metti fallisce.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111
Avatar utente
ZeroUno
Staff
Staff
 
Messaggi: 4345
Iscritto il: ven giu 02, 2006 13:52
Località: Roma / Castelli
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current

Re: Usare CRON

Messaggioda darkstaring » mer mar 27, 2013 16:55

Il file di log sembrerebbe /var/log/syslog anche se contiene il log di dmesg ed altro contiene anche le info di cron...
Questo quello che succede dopo il riavvio di cron:
Codice: Seleziona tutto
Mar 27 16:48:01 mediaHP /usr/sbin/cron[4104]: (*system*htv) INSECURE MODE (group/other writable) (/etc/cron.d/htv)
Mar 27 16:49:01 mediaHP /usr/sbin/cron[4104]: (*system*htv) INSECURE MODE (group/other writable) (/etc/cron.d/htv)
Mar 27 16:50:01 mediaHP /usr/sbin/cron[4104]: (*system*htv) RELOAD (/etc/cron.d/htv)
Mar 27 16:50:46 mediaHP /usr/sbin/cron[4875]: (CRON) INFO (pidfile fd = 3)
Mar 27 16:50:46 mediaHP /usr/sbin/cron[4876]: (CRON) STARTUP (fork ok)
Mar 27 16:50:46 mediaHP /usr/sbin/cron[4876]: (CRON) INFO (Skipping @reboot jobs -- not system startup)

(group/other writable) ???
I permessi di /etc/cron.d/htv sono: [ -rwxrwxrwx ]... Ho provato a cambiarli con i [ -rwxr--r-- ] e a riavviare cron ma stesso problema....
Ho rimosso le variabli PATH e SHELL e reso il root proprietario di /etc/cron.d/htv
Ho trovato questa pagina dice:
Codice: Seleziona tutto
       Come / etc / crontab , i file in / etc / cron.d directory sono monitorati
       per le modifiche. In generale, l'amministratore di sistema non deve utilizzare
       / Etc / cron.d / , ma utilizzare il crontab di sistema standard / etc / crontab.
darkstaring
Linux 2.4
Linux 2.4
 
Messaggi: 364
Iscritto il: mer ott 13, 2010 12:55
Slackware: Current
Desktop: xfce

Re: Usare CRON

Messaggioda ZeroUno » mer mar 27, 2013 17:07

root anche il gruppo? e i permessi di /etc/cron.d (la directory) come sono?

prova anche a ristoppare cron e lanciarlo in questo modo:

/usr/sbin/cron -f -d -l debug

questo non ti restituisce il prompt (con ctrl+c lo fermi) e ti da molte più informazioni


edit: prova anche a togliere 'root' dal file
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111
Avatar utente
ZeroUno
Staff
Staff
 
Messaggi: 4345
Iscritto il: ven giu 02, 2006 13:52
Località: Roma / Castelli
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current

Re: Usare CRON

Messaggioda ZeroUno » mer mar 27, 2013 17:24

abbiamo comunque versioni di cron diverse

redhat ha "ISC Cron V4.1" che accetta USER= ecc in cron.d/* e accetta l'utente.
slackware ha "dillon's lightweight cron" che evidentemente non accetta USER= e l'utente ma tuttavia accetta i permessi a 777 in cron.d

tu quale hai? lo vedi da 'man cron' prime righe. Per caso man cron corrisponde a questo?
http://manpages.ubuntu.com/manpages/pre ... ron.8.html

in tal caso il cron come te l'ho dato probabilmente fallisce. Prova con
/usr/sbin/cron -f -L 15 -l
poi startalo con la versione ufficiale e dai ps -ef|grep cron per vedere con che parametri viene lanciato.
Packages finder: slakfinder.org | Slackpkg+, per aggiungere repository a slackpkg
Codice: Seleziona tutto
1011010 1100101 1110010 1101111 - 0100000 - 1010101 1101110 1101111
Avatar utente
ZeroUno
Staff
Staff
 
Messaggi: 4345
Iscritto il: ven giu 02, 2006 13:52
Località: Roma / Castelli
Nome Cognome: Matteo Rossini
Slackware: current
Kernel: slack-current
Desktop: ktown-latest
Distribuzione: 01000000-current

Re: Usare CRON

Messaggioda darkstaring » mer mar 27, 2013 17:43

Bella ZeroUuuuuu :)...
Finalmente il file riesce in tmp lo trovo =D> ...
Cosa ne pensi di togliere i permessi di esecuzione dall'avvio a /etc/init.d/cron per aggiungere
in rc.local [ /usr/sbin/cron -f -d -l debug ] ???

muchas gracias ;)
darkstaring
Linux 2.4
Linux 2.4
 
Messaggi: 364
Iscritto il: mer ott 13, 2010 12:55
Slackware: Current
Desktop: xfce

Re: Usare CRON

Messaggioda targzeta » mer mar 27, 2013 19:56

ZeroUno ha scritto:no Manu. Le entry in cron.daily &co devono essere script, mentre quelli in cron.d devobo essere entry cron con in più (rispetto a crontab -e) l'utente con cui lanciare il comando

Bene, allora mi ero perso qualcosa :).

Grazie mille Matteo,
Emanuele
Linux Registered User #454438
Se pensi di essere troppo piccolo per fare la differenza, prova a dormire con una zanzara -- Dalai Lama
20/04/2013 - Io volevo Rodotà
Avatar utente
targzeta
Iper Master
Iper Master
 
Messaggi: 6155
Iscritto il: gio nov 03, 2005 14:05
Località: Carpignano Sal. (LE) <-> Pisa
Nome Cognome: Emanuele Tomasi
Slackware: current
Kernel: latest stable
Desktop: IceWM

Prossimo

Torna a Gnu/Linux in genere

Chi c’è in linea

Visitano il forum: Google [Bot] e 3 ospiti