J'ai toujours l' habitude d'utiliser 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 pouvais tout simplement le 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à de toute façon?
-i
option pour ssh ou rsync est-elle dans votre exemple? Et si c'est pour ssh, ça marche sans les guillemets simples autour de la commande?Vous n'avez pas besoin de -e ssh pour utiliser ssh. En fait, si vous spécifiez la cible en tant qu'utilisateur @ hôte: / chemin / vers / fichiers, vous utilisez ssh par défaut. Il est laissé dans a) pour des raisons de compatibilité et b) dans les cas marginaux où vous pourriez avoir une combinaison d'hôtes rsyncd et ssh.
la source
Cela dépend de ce qui a été spécifié pour l'
--with-rsh
option de configuration au moment de la compilation. La valeur par défaut est maintenant ssh si cette option n'a pas été spécifiée. Il avait été rsh à un moment donné dans le passé, mais même s'il est rsh, il pourrait ne pas être nécessaire car ssh pourrait être l'implémentation par défaut de rsh sur de nombreuses boîtes. Sur toutes mes machines, par exemple,readlink -f $(which rsh)
montre que rsh est vraiment juste un lien symbolique pointant vers / usr / sbin / sshla source