rsync命令簡單用法介紹
阿新 • • 發佈:2019-03-02
復制 command mman 高級 host 題解 net pass man
rsync有兩種常用的認證方式,一種為rsync-daemon方式,另外一種則是ssh。
在一些場合,使用rsync-daemon方式會比較缺乏靈活性,ssh方式則成為首選。但是今天實際操作的時候發現當遠端服務器的ssh默認端口被修改後,rsync時找不到一個合適的方法來輸入對方ssh服務端口號。
在查看官方文檔後,找到一種方法,即使用-e參數。
-e參數的作用是可以使用戶自由選擇欲使用的shell程序來連接遠端服務器,當然也可以設置成使用默認的ssh來連接,但是這樣我們就可以加入ssh的參數了。
假如對方機器的sshd端口改成1234 那麽再次使用rsync的傳輸文件時候如下使用
rsync -e ‘ssh -p 1234‘ username@hostname:SourceFile DestFile
用法如下,下面由於ssh端口是默認的22的話,可以吧-e " ssh -p 22"去掉
[root@linux-node1 tools]# rsync -avz -e " ssh -p 22" * [email protected]:/tools/ [email protected]‘s password: sending incremental file list sent 145 bytes received 12 bytes 44.86 bytes/sec total size is 228404490 speedup is 1454805.67 [root@linux-node1 tools]# touch 1 [root@linux-node1 tools]# rsync -avz -e " ssh -p 22" * [email protected]:/tools/ [email protected]‘s password: sending incremental file list 1 sent 191 bytes received 31 bytes 88.80 bytes/sec total size is 228404490 speedup is 1028849.05 [root@linux-node1 tools]#
rsync命令可以當成是高級版的cp+scp
它可以跨機器復制(同步)文件,下面的參數自行百度即可。
# 執行“推”復制同步 [osmond@soho ~]$ rsync -avz --delete /var/www [email protected]:/var/www # 執行“拉”復制同步 [osmond@cnetos5 ~]$ rsync -avz --delete [email protected]:/var/www /var/www
另外註意下,使用rsync命令的時候,自己的主機和對方的主機都需要安裝它,否則會報錯
[root@linux-node1 tools]# rsync -avz -e " ssh -p 22" * [email protected]:/tools/ [email protected]‘s password: bash: rsync: command not found rsync: connection unexpectedly closed (0 bytes received so far) [sender] rsync error: remote command not found (code 127) at io.c(600) [sender=3.0.6]
新服務器(目標服務器)執行命令 yum install rsync -y 問題解決
rsync命令簡單用法介紹