[RISOLTO] crontab capriccioso... diventa bastardo!!!

Linguaggi di programmazione: php, perl, python, C, bash e tutti gli altri.
Scrivi risposta
nulele
Prode Principiante
Messaggi: 129
Iscrizione: lunedì 30 aprile 2007, 10:44

[RISOLTO] crontab capriccioso... diventa bastardo!!!

Messaggio da nulele »

Perchè cavolo non riesco ad eseguire uno script con crontab, mentre se lancio forzatamente il crontab dall'interfaccia di webmin, va???
lo script viene eseguito, sono 10 righe, funzionano tutte, tranne una che richiama un altro script con ./nome_script
cosa sbaglio???  >:( >:( >:(
Ultima modifica di nulele il venerdì 28 settembre 2007, 16:10, modificato 1 volta in totale.
Avatar utente
paper0k
Rampante Reduce
Rampante Reduce
Messaggi: 7220
Iscrizione: lunedì 2 ottobre 2006, 13:39
Contatti:

Re: crontab capriccioso

Messaggio da paper0k »

Prova a postare lo script, così possiamo farci un' idea ;)
Chiunque può essere ragionevole, ma esser sani di mente è raro (Oscar Wilde)
Wiki|Blog|Twitter|Identi.ca|last.fm
Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: crontab capriccioso

Messaggio da difesaparcosempione »

./nome-script ...
Non vorrei che fosse lì il problema!
Con . si intende la direttori corrente del task (processo). Potrebbe essere che la directory corrente sia diversa da quella dove è presente lo script.
ciao
nulele
Prode Principiante
Messaggi: 129
Iscrizione: lunedì 30 aprile 2007, 10:44

Re: crontab capriccioso

Messaggio da nulele »

ecco qua lo script:

Codice: Seleziona tutto

#!/bin/bash

#mi sposto nella directory dello script
cd /var/www/dir1/dir2/file1

#lancio lo script
./file1

#svuoto il file dello script
cat /dev/null >file1

#scrivo (append) in smb.conf il codice
cat /var/www/dir1/dir2/file2 >>/etc/samba/smb.conf

#svuoto il file dello script
cat /dev/null >file2

#riavvio samba
/etc/init.d/samba restart

exit 0
questo script è nella stessa directory dove risiede lo script che qui ho chiamato file1
io proprio non capisco... :'(
Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: crontab capriccioso

Messaggio da difesaparcosempione »

cron non sa allora dove deve essere attivato il tuo script ..
Prova a mettere tutto il path .... /home/utente/script
ciao
8)
nulele
Prode Principiante
Messaggi: 129
Iscrizione: lunedì 30 aprile 2007, 10:44

Re: crontab capriccioso

Messaggio da nulele »

mi sembrava di averlo già provato... ma proverò di nuovo.
rimane comunque il dubbio di perchè in automatico non va, mentre se forzo crontab, funziona!!!
Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: crontab capriccioso

Messaggio da difesaparcosempione »

Quando forzi crontab, probabilmente sarai nella stessa dir di dove è presente lo script.
8)
nulele
Prode Principiante
Messaggi: 129
Iscrizione: lunedì 30 aprile 2007, 10:44

Re: crontab capriccioso

Messaggio da nulele »

infatti avevo già provato e non funziona anche con ./directory_script/file_scrip  >:(

DOMANDA: ma allora il punto (.) lo devo mettere o no???
Quando forzi crontab, probabilmente sarai nella stessa dir di dove è presente lo script.
mmm... non credo perchè lo faccio da webmin che risiede in /etc, quindi da tutt'altra parte... poi non so che giri faccia lui per lanciare il mio script...
nulele
Prode Principiante
Messaggi: 129
Iscrizione: lunedì 30 aprile 2007, 10:44

Re: crontab capriccioso

Messaggio da nulele »

... allora, non avevo capito che non ci andava il punto per lanciare il file nello script.
ora file1 viene lanciato, ma il problema è un altro: dentro a file1 ci sono una serie di comandi per creare un utente, la sua cartella ed abilitare i permessi: tipo adduser, mkdir, chown, chmod...
Il bello è che questi comandi, TRANNE mkdir, non vengono considerati.
è ormai 2 ore che con un mio amico sistemista linux (cioè uno che ne sa a pacchi e lo fa di mestiere  8)) cerchiamo di capire perchè non va.

Nessun errore sui log, nemmeno se si redirige lo standard out o err in un file, i permessi sono ok e non ci sono errori di codice!!!
A detta sua: "ci fosse qualcosa di sbagliato!!!"... tutti gli script girano perfettamente se lanciati manualmente, ma appena lo si fa fare al cron, i comandi dentro file1 non vengono eseguiti!!!  :-\

Io non so più cosa fare ed il mio amico nemmeno...
Se qualcuno mi può aiutare gliene sarò grato a vita  :(
Grazie!!!
Avatar utente
paper0k
Rampante Reduce
Rampante Reduce
Messaggi: 7220
Iscrizione: lunedì 2 ottobre 2006, 13:39
Contatti:

Re: crontab capriccioso... diventa bastardo!!!

Messaggio da paper0k »

Se fai un mkdir di una directory dentro un'altra ma questa'ultima non esiste ti va in errore, ad esempio

Codice: Seleziona tutto

mkdir /dir1/dir2
se dir1 non esiste allora non ti crea la dir2, per risolvere basta fare

Codice: Seleziona tutto

mkdir -p /dir1/dir2
;)
Chiunque può essere ragionevole, ma esser sani di mente è raro (Oscar Wilde)
Wiki|Blog|Twitter|Identi.ca|last.fm
Avatar utente
difesaparcosempione
Rampante Reduce
Rampante Reduce
Messaggi: 6031
Iscrizione: giovedì 27 luglio 2006, 19:06
Località: Torino
Contatti:

Re: crontab capriccioso... diventa bastardo!!!

Messaggio da difesaparcosempione »

Potresti scrivere le operazioni che esegui da bash, ogni qualvolta esegui una modifica ai tuoi 2 script ...

ciao
;D
nulele
Prode Principiante
Messaggi: 129
Iscrizione: lunedì 30 aprile 2007, 10:44

Re: crontab capriccioso... diventa bastardo!!!

Messaggio da nulele »

Se fai un mkdir di una directory dentro un'altra ma questa'ultima non esiste ti va in errore, ad esempio
forse non mi sono spigato bene... mkdir è L'UNICA OPERAZIONE CHE VA!!! sono le altre a non andare.
Potresti scrivere le operazioni che esegui da bash, ogni qualvolta esegui una modifica ai tuoi 2 script ...
cioè???  ???
Avatar utente
paper0k
Rampante Reduce
Rampante Reduce
Messaggi: 7220
Iscrizione: lunedì 2 ottobre 2006, 13:39
Contatti:

Re: crontab capriccioso... diventa bastardo!!!

Messaggio da paper0k »

Ops! Avevo capito il contrario..... :o
MMM.... lo script viene lanciato da un utente normale o sulla crontab di root?
Chiunque può essere ragionevole, ma esser sani di mente è raro (Oscar Wilde)
Wiki|Blog|Twitter|Identi.ca|last.fm
nulele
Prode Principiante
Messaggi: 129
Iscrizione: lunedì 30 aprile 2007, 10:44

Re: crontab capriccioso... diventa bastardo!!!

Messaggio da nulele »

eh eh nessun problema  ;)
... lo script viene eseguito ogni minuto da un crontab di root!!!
Avatar utente
paper0k
Rampante Reduce
Rampante Reduce
Messaggi: 7220
Iscrizione: lunedì 2 ottobre 2006, 13:39
Contatti:

Re: crontab capriccioso... diventa bastardo!!!

Messaggio da paper0k »

Invece di

Codice: Seleziona tutto

#! /bin/bash
metti

Codice: Seleziona tutto

#! /bin/bash -vx
nel secondo script e quindi reindirizza l'output su un file per capire meglio cosa succede ;)
Chiunque può essere ragionevole, ma esser sani di mente è raro (Oscar Wilde)
Wiki|Blog|Twitter|Identi.ca|last.fm
nulele
Prode Principiante
Messaggi: 129
Iscrizione: lunedì 30 aprile 2007, 10:44

Re: crontab capriccioso... diventa bastardo!!!

Messaggio da nulele »

ho fatto come hai detto:
nel file che viene lanciato dal cron ho cambiato la riga che lancia l'altro script in /percorso/file1 >prova.log
in file1 ho messo #! /bin/bash -vx
risultato? prova.log è vuoto!!!

spero di avere fatto bene  :-[
nulele
Prode Principiante
Messaggi: 129
Iscrizione: lunedì 30 aprile 2007, 10:44

Re: crontab capriccioso... diventa bastardo!!!

Messaggio da nulele »

ci ho messo anche lo standard error ed è saltato fuori questo

/percorso/file1: line 2: groupadd: command not found
mkdir: cannot create directory `/home/pippo': File exists      ---> esisteva già dalle prove precedenti (se ricordi è l'unico che va!!!)
/percorso/file1: line 5: useradd: command not found
chown: `pippo:pippo': invalid user

questo è quello che c'è in file1

#!/bin/bash
groupadd pippo
mkdir /home/pippo
chmod 777 /home/pippo
useradd pippo -c 'PIPOOOO' -d /home/pippo -p 6qDBt5Yh -g pippo -s /bin/bash
chown pippo:pippo /home/pippo
exit 0
Avatar utente
paper0k
Rampante Reduce
Rampante Reduce
Messaggi: 7220
Iscrizione: lunedì 2 ottobre 2006, 13:39
Contatti:

Re: crontab capriccioso... diventa bastardo!!!

Messaggio da paper0k »

Prova ad aggiungere /usr/sbin/ davanti i comandi groupadd e useradd ;)
Chiunque può essere ragionevole, ma esser sani di mente è raro (Oscar Wilde)
Wiki|Blog|Twitter|Identi.ca|last.fm
nulele
Prode Principiante
Messaggi: 129
Iscrizione: lunedì 30 aprile 2007, 10:44

Re: crontab capriccioso... diventa bastardo!!!

Messaggio da nulele »

FUNZIONAAAAAAAAAAAAAA!!!

Sono in ufficio e non posso urlare dalla gioia, ma ti assicuro che mi hai risolto un problema grossissimo!!!  (good) (good) (good) ;D

GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE GRAZIE
Scrivi risposta

Ritorna a “Programmazione”

Chi c’è in linea

Visualizzano questa sezione: 0 utenti iscritti e 3 ospiti