歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Linux基礎 >> Linux教程 >> rsync+ssh用法

rsync+ssh用法

日期:2017/2/27 15:59:52   编辑:Linux教程
rsync是類unix系統下的數據鏡像備份工具,從軟件的命名上就可以看出來了——remote sync。它的特性如下:

1、可以鏡像保存整個目錄樹和文件系統。
2、可以很容易做到保持原來文件的權限、時間、軟硬鏈接等等。
3、無須特殊權限即可安裝。
4、優化的流程,文件傳輸效率高。
5、可以使用rcp、ssh等方式來傳輸文件,當然也可以通過直接的socket連接。
6、支持匿名傳輸。

在使用 rsync 進行遠程同步時,可以使用兩種方式:遠程 Shell 方式(建議使用 ssh,用戶驗證由 ssh 負責)和 C/S 方式(即客戶連接遠程 rsync 服務器,用戶驗證由 rsync 服務器負責)。
無論本地同步目錄還是遠程同步數據,首次運行時將會把全部文件拷貝一次,以後再運行時將只拷貝有變化的文件(對於新文件)或文件的變化部分(對於原有文件)。

rsync+ssh
在常駐模式(daemon mode)下,rsync默認監聽TCP端口873。SSH情況下,rsync用戶端執行程式必須同時在本地和遠程機器上安裝。

rsync 在首次復制時沒有速度優勢,速度不如 tar,因此當數據量很大時您可以考慮先使用 tar 進行首次復制,然後再使用 rsync 進行數據同步。

另外,無法實現實時更新,如果想實現實時更新rsync需要借助lsyncd工具


增量備份
rsync -av /src_dir/ user@IP_Addres:/dest_dir/
A-->B 同步 本地到遠端

rsync -av user@IP_Addres:/src_dir/ /dest_dir/
B-->A 同步 遠端到本地

鏡像備份
rsync -av --delete /src_dir/ user@IP_Addres:/dest_dir/
A-->B 同步 本地到遠端

rsync -av --delete user@IP_Addres:/src_dir/ /dest_dir/
B-->A 同步 遠端到本地

舉例:
-----------------------常規增量備份-------------------------
A:
[root@server www]# ls
a b c d
[root@server www]# rsync -av /www/ [email protected]:/www/
[email protected]'s password:
building file list ... done
./
a
b
c
d

sent 262 bytes received 114 bytes 107.43 bytes/sec
total size is 0 speedup is 0.00
[root@server www]#

B:
[root@localhost www]# ls //發現同步成功
a b c d
[root@localhost www]#
-----------------------常規增量備份-------------------------

-----------------------鏡像備份-------------------------
A:
[root@server www]# rm -rf *
[root@server www]# rsync -av /www/ [email protected]:/www/
[email protected]'s password:
building file list ... done

sent 52 bytes received 20 bytes 28.80 bytes/sec
total size is 0 speedup is 0.00
[root@server www]#

B:
[root@localhost www]# ls //刪除同步端的文件同步的另外一端在增量備份中不受影響
a b c d
[root@localhost www]#

A:
[root@server www]# rsync -av --delete /www/ [email protected]:/www/
[email protected]'s password:
building file list ... done
deleting d
deleting c
deleting b
deleting a
./

sent 62 bytes received 26 bytes 35.20 bytes/sec
total size is 0 speedup is 0.00
[root@server www]#

B:
[root@localhost www]# ls //使用增量備份後就會刪除同步另一端的文件保持兩者相同,即鏡像同步
-----------------------鏡像備份-------------------------
Copyright © Linux教程網 All Rights Reserved