当通过 ssh 调用 rsync 程序时,rsync 和 ssh 之间的交互是什么样的?rsync 使用 ssh 的什么功能?我对 rsync 和 ssh 之间的交互感兴趣。
roa*_*ima 14
ssh提供从运行您的本地系统rsync到在远程服务器上运行的另一个实例的连接流。当地rsync开始它作为的一部分ssh连接过程-这是不相同的实例rsync,可能使用的是该远程服务器上的后台。
什么是ssh 流?
一个SSH流是你用你什么时候ssh到远程系统。您可能更喜欢将其称为ssh session。没关系。例如,ssh snow@grumpy.example.net将您连接到该远程系统并为您提供交互式会话。您在本地输入的任何内容都将被远程接收和操作,而远程生成的任何内容都将在本地呈现给您。
同样,ssh -t snow@doc.example.net vi /etc/hosts将建立一个连接以vi /etc/hosts在远程系统上运行,就像您在本地使用它一样。(该-t标志告诉ssh要确保远程命令 ,vi是在伪终端上运行的;否则它将跳过那层复杂性。)
现在,对于rsync,连接是由本地实例建立的,类似于ssh snow@bashful.example.net rsync --server -nlogDtpre.iLsf {local_path} {remote_path}. 这允许本地通过连接rsync与远程通信rsync,就像您用来访问同一个远程服务器一样。的远程实例rsync知道它是一个服务器,因为它在本地实例启动时提供了标志。
您可以看到rsync已通过运行这样远程调用ssh snow@dopey.example.net 'ps -ef | grep [r]sync',而rsync正在进行中。
为什么不rsync直接说没有ssh呢?
使用的好处ssh是双重的
rsync,要么必须实现自己的加密,要么忽略这个问题。在当今的互联网连接世界中,两者都是危险的。| 归档时间: |
|
| 查看次数: |
3296 次 |
| 最近记录: |