[CentOS 7系列]遠程數據同步
Rsync命令是一個遠程數據同步工具,可通過網絡快速同步多臺主機間的文件。它在同步文件的同時,可以保持原來文件的權限、時間、軟硬鏈接等附加信息,也可以做增量的拷貝。支持通過ssh方式來傳輸文件,這樣其保密性會非常好。rsync備份主要分為三種方式,一是本地到本地的備份,二是本地到網絡的備份,三是網絡到本地的備份。
▎命令格式:
Local: rsync [OPTION...] SRC... [DEST] ##拷貝本地文件。當SRC和DES路徑信息都不包含有單個冒號":"分隔符時就啟動這種工作模式。如:rsync -a /data /backup Access via remote shell: Pull: rsync [OPTION...] [USER@]HOST:SRC... [DEST] Push: rsync [OPTION...] SRC... [USER@]HOST:DEST ##使用一個遠程shell程序(如rsh、ssh)來實現將遠程機器的內容拷貝到本地機器。當SRC地址路徑包含單個冒號":"分隔符時啟動該模式。如:rsync -avz foo:src/bar /data ##使用一個遠程shell程序(如rsh、ssh)來實現將本地機器的內容拷貝到遠程機器。當DST路徑地址包含單個冒號":"分隔符時啟動該模式。如:rsync -avz *.c foo:src Access via rsync daemon: Pull: rsync [OPTION...] [USER@]HOST::SRC... [DEST] rsync [OPTION...] rsync://[USER@]HOST[:PORT]/SRC... [DEST] Push: rsync [OPTION...] SRC... [USER@]HOST::DEST rsync [OPTION...] SRC... rsync://[USER@]HOST[:PORT]/DEST ##從遠程rsync服務器中拷貝文件到本地機。當SRC路徑信息包含"::"分隔符時啟動該模式。如:rsync -av [email protected]
▎常用選項:
選項 | 作用 |
-a | 包含-rtplgoD |
-r | 同步目錄時要加上,類似cp時的-r選項 |
-v | 同步時顯示一些信息,讓我們知道同步的過程 |
-l | 保留軟連接 |
-L | 加上該選項後,同步軟鏈接時會把源文件給同步 |
-p | 保持文件的權限屬性 |
-o | 保持文件的屬主 |
-g | 保持文件的屬組 |
-D | 保持設備文件信息 |
-t | 保持文件的時間屬性 |
--delete | 刪除DEST中SRC沒有的文件 |
--exclude | 過濾指定文件不同步 |
-P | 顯示同步過程,比如速率,比-v更加詳細 |
-u | 加上該選項後,如果DEST中的文件比SRC新,則不同步 |
-z | 傳輸時壓縮 |
測試示例:
本地到本地備份: [[email protected] ~]# rsync -aP /tmp/bigfile /usr/local/ sending incremental file list bigfile 106070960 100% 30.24MB/s 0:00:03 (xfer#1, to-check=0/1) sent 106083984 bytes received 31 bytes 30309718.57 bytes/sec total size is 106070960 speedup is 1.00 本地到網絡備份: [[email protected]