亞寵展、全球?qū)櫸锂a(chǎn)業(yè)風(fēng)向標(biāo)——亞洲寵物展覽會深度解析
1021
2022-05-29
rsync主要用于做備份,其工作方式如下
1.本地文件系統(tǒng)實(shí)現(xiàn)同步(類似于cp)
2.本地與遠(yuǎn)程主機(jī)實(shí)現(xiàn)同步(類似scp),兩臺主機(jī)都要安裝rsync
借用ssh加密
3.以守護(hù)進(jìn)程方式運(yùn)行。本地主機(jī)與遠(yuǎn)程主機(jī)通過網(wǎng)絡(luò)套接字進(jìn)行數(shù)據(jù)傳輸; 端口:873
部署rsync
首先服務(wù)端和客戶端均安裝rsync包:yum -y install rsync
在s端root家目錄下創(chuàng)建目錄dir1、dir2:mkdir dir1 dir2
在在dir1下放置1.txt文件,dir2下放置1.txt 2.txt 3.txt 4.txt四個文件。在客戶端根目錄下創(chuàng)建test目錄:mkdir /test
我們把服務(wù)端dir1目錄下的內(nèi)容傳到客戶端/test目錄下:rsync -r dir1/
root@192.168.1.21:/test
rsync選項:
-r 遞歸
-v 顯示信息信息
-P(大) 顯示傳輸進(jìn)度
-t ?保持mtime不變
-o 保持文件的用戶
-g 保持文件的用戶組
-p 保持文件權(quán)限
-l 如果文件是鏈接文件,則復(fù)制鏈接文件,而不復(fù)制源文件
-D 復(fù)制特殊的設(shè)備文件
主要記住 ?-avz(rsync -avz )
-a = -rtopgDl
-z 傳輸時進(jìn)行壓縮,提高傳輸效率
--delete ?無差異備份,刪除源位置沒有但目標(biāo)位置有的文件
--exclude ?排除,指定某個文件不進(jìn)行復(fù)制
如果我們想把dir1連同目錄都復(fù)制過來,我們需要去掉dir1后面的“/”:rsync -r dir1
root@192.168.1.21:/test
注意:rsync在復(fù)制時,目錄后有“/”代表的是復(fù)制目錄下的內(nèi)容,如果沒有,表示復(fù)制整個目錄
rsync的服務(wù)配置文件是/etc/rsyncd.conf,配置內(nèi)容如下
以守護(hù)進(jìn)程方式(一種后臺工作模式)運(yùn)行rsync:rsync --daemon
查看rsync監(jiān)聽端口號以及pid:ss -lnpt|grep rsync
將遠(yuǎn)端主機(jī)dir1目錄中的內(nèi)容(已在配置文件中設(shè)置標(biāo)簽為“test”)拉到本地主機(jī)/test目錄下,格式rsync -avz 源文件路徑 ?目標(biāo)文件路徑:rsync -avz ?root@192.168.1.20::test /test
如何實(shí)現(xiàn)本機(jī)文件推送到遠(yuǎn)程呢?首先修改遠(yuǎn)程主機(jī)配置文件:vim /etc/rsyncd.conf,修改內(nèi)容如下:
將用戶名backuper以及密碼,寫入rsync_passwd文件中:echo "backuper:123456" > /etc/rsync_passwd
修改rsync_passwd文件權(quán)限為600:chmod 600 /etc/rsync_passwd
重啟服務(wù)端rsync服務(wù):systemctl restart rsyncd
修改服務(wù)端(遠(yuǎn)端主機(jī))目錄dir1的用戶和屬組,使其與/etc/rsyncd.conf文件中UID、PID保持一致,此處我們以nobody為例:chown nobody:nobody dir1
客戶端(本地主機(jī))執(zhí)行命令:
rsync -avz /test/
backuper@192.168.1.20::test
完成客戶端(本地主機(jī))到服務(wù)端(遠(yuǎn)程主機(jī))的推送。
免密傳輸文件:客戶端執(zhí)行命令,生成pass文件存放密碼echo“123456”> /etc/server.pass
更改密碼文件權(quán)限:chmod 600 /etc/server.pass
客戶端執(zhí)行命令:
rsync -az --password-file=/etc/server.pass /test/
backuper@192.168.1.20::test
--password-file=:指定在傳輸過程中去/etc/server.pass文件中尋找密碼,自動填充
利用rsync+inotify實(shí)現(xiàn)數(shù)據(jù)的實(shí)時備份
結(jié)合周期性計劃任務(wù)可以做定時備份。假設(shè)每天晚上11點(diǎn)備份一次,在接近11點(diǎn)時,硬盤損壞;所以如果發(fā)現(xiàn)數(shù)據(jù)變化,就執(zhí)行一次rsync,rsync本身執(zhí)行不了此項操作,需要結(jié)合inotify(對目錄進(jìn)行一個持續(xù)的監(jiān)控)
上傳inotify-tools包到客戶端家目錄下。
解包:tar xf inotify-tools-3.14.tar.gz
cd進(jìn)解好的包中去
編譯安裝,執(zhí)行命令:./configure && make && make install
客戶端復(fù)制會話窗口,然后執(zhí)行命令inotifywait -mrq -e create /test(監(jiān)聽test目錄下創(chuàng)建文件的情況),然后再復(fù)制的另一個會話窗口中在test目錄下創(chuàng)建一個文件,則會有以下顯示:
inotify監(jiān)聽成功
inotifywait
-r ?遞歸
-q ?安靜模式,僅打印監(jiān)控事件的信息
-m ?處于始終監(jiān)聽狀態(tài)
-d ?放到后臺運(yùn)行
-e 指定監(jiān)聽的事件
常用組合:-mrqe
第二參數(shù):create,modify(調(diào)整,指對文件內(nèi)容進(jìn)行增刪改),move,delete,attrib(修改或顯示文件屬性)
監(jiān)控test目錄下創(chuàng)建、移動、刪除、調(diào)整(文件)的情況
inotifywait -mrq -e create,delete,move,modify, /test
附件: 利用rsync+inotifiy實(shí)現(xiàn)數(shù)據(jù)的實(shí)時備份.docx 139.59KB 下載次數(shù):4次
CentOS Linux 云計算 任務(wù)調(diào)度
版權(quán)聲明:本文內(nèi)容由網(wǎng)絡(luò)用戶投稿,版權(quán)歸原作者所有,本站不擁有其著作權(quán),亦不承擔(dān)相應(yīng)法律責(zé)任。如果您發(fā)現(xiàn)本站中有涉嫌抄襲或描述失實(shí)的內(nèi)容,請聯(lián)系我們jiasou666@gmail.com 處理,核實(shí)后本網(wǎng)站將在24小時內(nèi)刪除侵權(quán)內(nèi)容。