Pagina 1 di 1

[Risolto] Esecuzione unison con cron

Inviato: venerdì 29 ottobre 2010, 12:31
da davcom
Ciao a tutti,

ho queso problema, faccio eseguire uno script da cron per avviare unison.
in /etc/crontab ho inserito alla fine:

Codice: Seleziona tutto

30      22      * * *   utente       /usr/local/bin/lavoro
lo script lavoro è:

Codice: Seleziona tutto

#!/bin/bash
#Script sincronia utente

unison -batch lavoro
se eseguo manualmente:
utente@server:~$lavoro

anche se eseguo:
utente@server:~$unison -batch lavoro

funzionano ternima il lavoro sincronizzando.

Invece da cron lo script viene attivato, ho la conferma dal log di cron.
ma non porta a termine la sincronica.
Dal log di unison non risulta nulla.
Controllando i processi vedo che viene avviato ma dopo qualche secondo si chiude.

Come posso capire il problema?

Che differenza c'è dall'esecuzione manuale a quella automatica con cron se anche in quest'ultimo lo avvio come utente.

Grazie
Davide

Re: Esecuzione unison con cron

Inviato: venerdì 29 ottobre 2010, 13:36
da bingel
I permessi dello script sono a posto?:

Codice: Seleziona tutto

chmod 755 lavoro
Di solito si hanno problemi con cron quando si tratta di far funzionare programmi grafici in quanto l'output deve essere reindirizzato al giusto display anteponendo al comando da eseguire una stringa come questa:

Codice: Seleziona tutto

DISPLAY=:0.0
Altri problemi potrebbero esserci quando è necessario reindirizzare l'output di un determinato comando in un terminale in quanto cron, oltre a nessun display non ha neppure nessuna tty "associata".

Tuttavia non credo che unison abbia bisogno di una tty per funzionare e tantomeno di un display ...o invece si?

Re: Esecuzione unison con cron

Inviato: giovedì 4 novembre 2010, 22:16
da davcom
Grazie! Bingel avevi ragione ho inserito l'opzione -silent che visualizza solo gli errori.
Adesso funziona!!!
Adesso devo capire se in caso di errore me lo segnala nel log o si blocca.
Grazie ancora Davide

Re: [Risolto] Esecuzione unison con cron

Inviato: martedì 7 dicembre 2010, 19:28
da samiam1000
So che sono un po' off-topic,

ma vi chiedo: voglio mettere in rete i miei 2 PC. Uno ha un ip pubblico ed è quello che funziona da server.

Io riesco a connettermi senza problemi tramite ssh. Ma non riesco a connettermi tramite Unison. In pratica, perde la connessione.

Ma non ho capito il motivo.

Una domanda (magari stupida!): devo installare Unison anche su server o solo su client??

Re: [Risolto] Esecuzione unison con cron

Inviato: martedì 28 dicembre 2010, 10:12
da davcom
Ciao io ho due server e sincronizzo tramite la vpn, ma sostituendo l'indirizzo locale a quello pubblico statico lo fa ugualmente.
Unison deve essere installato su entrambi, della stessa versione, non ricordo dove ho letto che potrebbero esserci difficoltà se sono due versioni diverse.
Ho impostato che l'utente con il quale eseguo la sincronia non richieda la password per la connessione ssh.
Ho poi impostato il cron inserendo le opzioni -batch -silent e fa tutto da solo.

Davide