J'ai toujours utilisé l'utilisation de la commande suivante lors de la copie d'un serveur: rsync --progress -avze ssh user@Host:/path/to/files ./here
. Cependant, un ami d'esprit m'a montré que je peux simplement faire rsync --progress -avz user@Host:/path/to/files ./here
. Donc, la question est, si vous n'avez pas besoin -e ssh
Pourquoi est-il là-bas de toute façon?
Chaque fois que vous avez besoin d'options supplémentaires sur la commande SSH en dehors de l'utilisateur et de l'hôte, vous avez besoin du drapeau -E. Peut-être le serveur que vous connectez à SSH écoute sur le port 2222.
rsync -e 'ssh -p 2222' /source usr@Host:/dest
Une alternative à la déplacement de cela, il y a 2 fichiers que vous pouvez utiliser. /etc/ssh/ssh_config
ou ~/.ssh/config
Le fichier de configuration utilise le même format que ssh_config
. Il est simplement capable d'être configuré sur une base d'utilisateur!
Vous auriez également besoin de -e
Si vous utilisez un emplacement de clé privée non par défaut, c'est-à-dire spécifier la clé privée via -e 'ssh -i /path/to/private/key/file.pem'
. Pour cette affaire, des ports d'écoute non par défaut pour SSHD, également. Fondamentalement, utilisez -e
Si vous utilisez simplement ssh user@Host
ne fonctionne pas.
Vous n'avez pas besoin de SSH pour utiliser SSH. En fait, si vous spécifiez la cible comme utilisateur @ host:/chemin/vers/fichiers, vous utilisez SSH par défaut. Il est laissé dans a) pour des raisons de compatibilité et b) des cas de franges où vous pourriez avoir une combinaison d'hôtes RSYNCD et SSH.