Cela n'a pas fonctionné pour moi. J'ai un hébergement de saut dans mon ~ / .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: impossible de résoudre le nom d'hôte vm-app01 : nom de noeud ni nom de serveur fourni, ou inconnu rsync: connexion inopinément fermée (0 octet reçu jusqu'à présent) [expéditeur] erreur rsync: erreur inexpliquée (code 255) dans / SourceCache / rsync / rsync- 42 / rsync / io.c (452) [expéditeur = 2.6.9]
Cependant, cela fonctionne très bien
[kbroughton@kbroughton:project + (develop)] ssh vm-app01
Last login: Thu Apr 17 12:10:37 2014 from 10.a.b.c
Modifier, j'ai pu dépasser la résolution de nom en forçant rsync ssh à charger un fichier de configuration avec -F sudo rsync -az -e "ssh -F /Users/kbroughton/.ssh/config"
Cela passe une erreur mais une autre. Autorisation refusée (publickey, gssapi-keyex, gssapi-with-mic). ssh_exchange_identification: Connexion fermée par l'hôte distant
A également essayé de définir explicitement -i et user @ dans la connexion, mais la même erreur se produit.
ÉDITER
Un autre point de données. Si j'utilise l'ip flottante du pivot vm (hôte de saut) au lieu de son nom, vm-pivot rsync fonctionne. Mais vider explicitement tous mes ssh / config dans le -e "ssh" ne fonctionne pas. Détails: mac local, mis à niveau vers rsync 3.1.0, centos distant 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]
Cela marche
[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