[Linuxtrent] Re: rsync problema

  • From: as <andrea.sommavilla@xxxxxxx>
  • To: linuxtrent@xxxxxxxxxxxxx
  • Date: Tue, 30 Nov 2010 16:44:26 +0100

On 11/30/2010 11:34 AM, Aimar Marco wrote:
Salve a tutti,
ho già girato in lungo e in largo ma non ne vengo a capo.
Se lancio questo comando direttamente dalla shell tutto funziona
correttamente:
/usr/bin/rsync -avz  --delete -e "ssh -p 2299" root@IP_REMOTO:/dati/* /dati/

mentre se provo a fare uno script cosi
#!/bin/bash
cmd="/usr/bin/rsync -avz  --delete -e \"ssh -p 2299\" root@IP_REMOTO:/dati/*
/dati/"
$cmd

alla sua esecuzione mi ritorna questo errore
Unexpected remote arg: root@IP_REMOTO:/dati/*
rsync error: syntax or usage error (code 1) at main.c(1205) [sender=3.0.2]

Ho già provato a usare singoli/doppi apici, a togliere l'asterisco ma

Nel comando (con $cmd) che hai postato vedo quattro DOPPI APICI che 
interferiscono tra loro...


nulla...mi dà sempre il problema e non riesco a capire come "debuggarlo".
Se non erro si interrompe ancora prima di fare la connessione all'host
remoto.

Grazie per l'aiuto, Marco




- per fare il controllo che QUELL'rsync non stia già girando,
    brutalmente:

      ps -edafw|grep "\/usr\/bin\/rsync .*IP_REMOTO" |grep -v grep|wc -l

   ti "dovrebbe" restituire quanti rsync stanno girando sull'IP_REMOTO (o una 
stringa che comparirà al ps -edafw sulla tua macchina),
    quindi con 0 puoi lanciare il comando
     /usr/bin/rsync -avz  --delete -e "ssh -p 2299" root@IP_REMOTO:/dati/* 
/dati/
    senza apici.


- mi sfugge comunque il come gli passerai la password "via crontab", visto che invochi 
esplicitamente "root@"...
      in alternativa:        -e "ssh -p 2299 -i /root/NOMESERVER-key"   ("How To 
rsync without prompting for password"...  )



Suggerimenti:

-  alza il livello di verbosità -vvvvv...vvvvvvv

-  redirigi STDOUT E STDERR del lancio rsync su file così da non perdere il prodotto del 
log e del "lordo" :
             rsync ...   1>/tmp/rsync.log 2>/tmp/rsync.logerr



Ciao...
Andrea


--
Per iscriversi  (o disiscriversi), basta spedire un  messaggio con OGGETTO
"subscribe" (o "unsubscribe") a mailto:linuxtrent-request@xxxxxxxxxxxxx


Other related posts: