Questo non ha funzionato per me. Ho l'hosting di salto nel mio ~ / .ssh / config
Host 10.x.y.z
User cloud-user
HostName vm-pivot
IdentityFile /path_to_vm_key
Host 21ct-dev1-*
User cloud-user
HostName %h.example.com
ProxyCommand ssh 10.x.y.z -W %h:%p
IdentityFile /path_to_vm_key
rsync -e "ssh" local_path vm-app01:/remote_path
ssh: impossibile risolvere il nome host vm-app01 : nome nodo o nome servizio fornito o non noto rsync: connessione inaspettatamente chiusa (0 byte ricevuti finora) [mittente] errore rsync: errore inspiegabile (codice 255) in / SourceCache / rsync / rsync- 42 / rsync / io.c (452) [mittente = 2.6.9]
Tuttavia, questo funziona bene
[kbroughton@kbroughton:project + (develop)] ssh vm-app01
Last login: Thu Apr 17 12:10:37 2014 from 10.a.b.c
Modifica, sono stato in grado di superare la risoluzione dei nomi forzando rsync ssh a caricare un file di configurazione con -F sudo rsync -az -e "ssh -F /Users/kbroughton/.ssh/config"
Questo supera un errore ma su un altro. Autorizzazione negata (publickey, gssapi-keyex, gssapi-with-mic). ssh_exchange_identification: connessione chiusa dall'host remoto
Ho anche provato a impostare esplicitamente -i e l'utente @ nella connessione ma si verifica lo stesso errore.
MODIFICARE
Un altro punto dati. Se uso l'ip mobile del pivot vm (jump host) invece del suo nome vm-pivot rsync funziona. Ma scaricare esplicitamente tutto il mio ssh / config nel -e "ssh" non funziona. Dettagli: mac locale, aggiornato a rsync 3.1.0, centos remoto rsync 3.0.9.
[kbroughton@kbroughton:project + (develop)] sudo /usr/local/bin/rsync -az -e "ssh -F /Users/kbroughton/.ssh/config -i /Users/kbroughton/.ssh/identities/vm_key -W 10.x.y.z:22" /var/data/sources/data.tar.gz user@vm-pivot:/home/user
Permission denied (publickey,gssapi-keyex,gssapi-with-mic).
ssh_exchange_identification: Connection closed by remote host
rsync: connection unexpectedly closed (0 bytes received so far) [sender]
rsync error: unexplained error (code 255) at io.c(226) [sender=3.1.0]
[kbroughton@kbroughton:project + (develop)] sudo /usr/local/bin/rsync -az -e "ssh -F /Users/kbroughton/.ssh/config -i /Users/kbroughton/.ssh/identities/vm_key -W 10.x.y.z:22" /var/data/sources/data.tar.gz user@10.x.y.z:/home/user
protocol version mismatch -- is your shell clean?
(see the rsync man page for an explanation)
rsync error: protocol incompatibility (code 2) at compat.c(181) [sender=3.1.0]
Questo funziona
[kbroughton@kbroughton:project + (develop)] sudo /usr/local/bin/rsync -az -e "ssh -F /Users/kbroughton/.ssh/config -i /Users/kbroughton/.ssh/identities/vm_key" /var/data/sources/data.tar.gz user@10.x.y.z:/home/user