2018.1.30 8周2次課
10.28 rsync工具介紹
10.29/10.30 rsync常用選項
10.31 rsync通過ssh同步
10.28 rsync工具介紹
作為一個系統管理員,數據備份是非常重要的。在以後的系統維護工作中,你一定要時刻牢記給數據做備份。在Linux系統下數據備份的工具很多,有一種是rsync,從字面意思上可以理解為 remote sync(遠程同步)。rsync不僅可以遠程同步數據(類似於SCP),而且可以本地同步數據(類似於cp),但不同於cp或scp的一點是,它不會覆蓋以前的數據(如果數據已經存在),而是先判斷已經存在的數據和新數據的差異,只有數據不同時才會把不相同的部分覆蓋。如果你的Linux沒有rsync命令,請使用命令yum install -y rsync安裝
上例將會把/etc/passwd同步到/tmp/目錄下,並改名為l.txt。如果是遠程復制,數據備份就是這樣的形式—用戶名@IP:path,比如[email protected]:/tmp/1.txt。具體用法如下:
首次連接時會提示是否要繼續連接,我們輸人yes繼續。當建立連接後,需要輸人密碼 如果手動執行這些操作比較簡單,但若是寫在腳本中該怎麽辦呢? 這就涉及添加信任關系了,該部分內容稍後會詳細介紹。
rsync格式:
rsync [OPTION] … SRC DEST
rsync [OPTION] … SRC [user@]host:DEST
rsync [OPTION] … [user@]host:SRC DEST
rsync [OPTION] … SRC [user@]host::DEST
rsync [OPTION] … [user@]host::SRC DEST
10.29/10.30 rsync常用選項
前面舉的兩個例子中,第一個例子為第一種格式。第二種格式如不加user@host,默認指的是root。第二個例子為第三種格式,第三種格式是從遠程目錄同步數據到本地。第四種和第五種格式使用了兩個冒號,這種格式和其他格式的驗證方式不同。
10.29/10.30 rsync常用選項
rsync常用選項
-a :包含-rtplgoD。這是歸檔模式,表示以遞歸方式傳輸文件,並保持所有屬性,它等同於-rlptgoD。-a選項後面可以跟一個--no-OPTION, 表示關閉-rlptgoD中的某一個, 比如-a--no-l等同於-rptgoD。
-r :同步目錄時要加上,類似cp時的-r選項。表示以遞歸模式處理子目錄。它主要是針對目錄來說的,如果單獨傳一個文件不需要加寸選項,但是傳輸目錄時必須加。
-v :同步時顯示一些信息,讓我們知道同步的過程。表示打印一些信息,比如文件列表、文件數量等。
-l :保留軟連接
-L :加上該選項後,同步軟鏈接時會把源文件給同步。表示像對待常規文件一樣處理軟連接。 如果是SRC中有軟連接文件,則加上該選項後,將會把軟連接指向的目標文件復制到DST
-p :保持文件的權限屬性
-o :保持文件的屬主信息
-g :保持文件的屬組信息
-D :保持設備文件信息信息
-t :保持文件的時間屬性
--delete :刪除DEST中SRC沒有的文件
--exclude=PATTERN :過濾指定文件,表示指定排除不需要傳輸的文件,等號後面跟文件名,可以是萬用字符模式(如*.txt)。如--exclude “logs”會把文件名包含logs的文件或者目錄過濾掉,不同步
-P :顯示同步過程,表示在同步的過程中可以看到同步的過程狀態,比如統計要同步的文件數量、同步的文件傳輸速度等。比-v更加詳細。
-u :加上該選項後,如果DEST中的文件比SRC新,則不同步
-z :傳輸時壓縮
舉例
使用-a選項
使用-L選項
在使用-a時加L選項,會把-a裏面l選項含義覆蓋掉。就是沒有l選擇,只有L選項。
會報錯,軟連接失效了。
修復軟連接
同步:原來的軟連接指向的源文件同步成了以軟連接命名的文件。
aming3裏面的內容就是aming2的內容
使用--delete選項
DST中增加了新文件,SRC中沒有這些文件,同步時加上--delete選項後會刪除新增的文件
使用--exclude選項:
支持寫多個--exclude選項
使用-P選項
使用-u選項
10.31 rsync通過ssh同步
在之前介紹的rsync的5種命令格式中,第二種和第三種(一個冒號)就屬於通過ssh的方式備份數據。這種方式其實就是讓用戶登錄到遠程機器,然後執行rsync的任務
推同步:從本機到遠程機器
拉同步:從遠程機器到本機
指定端口:rsync -av -e "ssh -p 端口號"
直接連遠程機器
2018.1.30 8周2次課