rsync結(jié)合 inotfiy 實(shí)現(xiàn)實(shí)時(shí)備份的問(wèn)題
1. 簡(jiǎn)介
rsync簡(jiǎn)介:
rsync是linux系統(tǒng)下的數(shù)據(jù)鏡像備份工具。使用快速增量備份工具Remote Sync可以遠(yuǎn)程同步,支持本地復(fù)制,或者與其他SSH、rsync主機(jī)同步
Inotify簡(jiǎn)介:
Inotify 是一種強(qiáng)大的、異步的文件系統(tǒng)事件監(jiān)控機(jī)制,通過(guò)Inotify可以監(jiān)控文件系統(tǒng)中添加、刪除,修改、移動(dòng)等各種細(xì)微事件,利用這個(gè)內(nèi)核接口,第三方軟件就可以監(jiān)控文件系統(tǒng)下文件的各種變化情況
2. 實(shí)驗(yàn)環(huán)境:
ip地址 | 角色 |
---|---|
192.168.153.180 | 備份源 sync client + inotify |
192.168.153.181 | 備份端 rsync server |
兩臺(tái)機(jī)器均關(guān)閉防火墻和selinux
關(guān)閉防火墻
systemctl stop firewalld
關(guān)閉selinux
setenforce 0
3. 配置備份端主機(jī)(181主機(jī))
3.1 安裝rsync工具
yum -y install rsync
3.2 修改rsync配置文件:
vim /etc/rsyncd.conf
修改后內(nèi)容如下:(!復(fù)制之后刪掉注釋才可使用,不然格式會(huì)有問(wèn)題)
uid=root gid=root use chroot = no max connections = 10 strict modes = yes pid file = /var/run/rsyncd.pid lock file = /var/run/rsyncd.lock log file = /var/log/rsyncd.log [rsync] path = /opt #備份路徑 comment = rsync ignore errors #跳過(guò)錯(cuò)誤 read only = no #讀 write only = no #寫 hosts allow = 192.168.153.180 #備份源ip list = false auth users = rsync_user #用戶
3.3 創(chuàng)建密碼文件并修改權(quán)限 創(chuàng)建文件
echo "rsync_user:123" > /etc/rsync.password
修改權(quán)限
chmod 600 /etc/rsync.password
3.4 啟動(dòng)rsync并查看端口驗(yàn)證
啟動(dòng)
rsync --daemon
驗(yàn)證
netstat -ntlp|grep 873 tcp 00 0.0.0.0:873 0.0.0.0:*LISTEN1583/rsync tcp6 00 :::873:::* LISTEN1583/rsync
4. 配置備份源端(180主機(jī))
4.1 安裝epel源和所需工具
先安裝epel源
yum -y install epel-release
再安裝所需工具
yum -y install inotify-tools rsync
4.2 只需要設(shè)置rsync同步密碼即可,不用重設(shè)用戶名 創(chuàng)建文件
echo "123" > /etc/rsync.password
修改權(quán)限
chmod 600 /etc/rsync.password
4.3 編寫inotify監(jiān)控腳本如下:
vim inotify.sh
#!/bin/bash ip=192.168.153.181 #備份端ip src=/opt/rsync_src #數(shù)據(jù)目錄 dst=rsync user=rsync_user # 用戶 /usr/bin/inotifywait -mrq --timefmt '%d/%m/%y %H:%M' --format '%T %w%f' -e modify,delete,create,attrib ${src} | while read file do rsync -vzrtopg --delete --progress $src $user@$ip::$dst --password-file=/etc/rsync.password > /dev/null && echo "$src was rsyncd" done
3.4 創(chuàng)建源目錄
mkdir /opt/rsync_src
3.5 執(zhí)行腳本檢測(cè)
sh inotify.sh
3.6 新開(kāi)窗口在源目錄下創(chuàng)建文件
cd /opt/rsync_src echo 111 > 1.txt echo 222 > 2.txt
3.7 在備份端查看新創(chuàng)建的兩個(gè)文件已經(jīng)同步過(guò)來(lái)
ls /opt/rsync_src/ 1.txt 2.txt
3.8 在備份源端刪除1.txt文件
cd /opt/rsync_src rm -f 1.txt
在備份端查看已經(jīng)同步刪除
ls /opt/rsync_src/ 2.txt
到此這篇關(guān)于rsync結(jié)合 inotfiy 實(shí)現(xiàn)實(shí)時(shí)備份的文章就介紹到這了,更多相關(guān)rsync結(jié)合 inotfiy 實(shí)現(xiàn)實(shí)時(shí)備份內(nèi)容請(qǐng)搜索本站以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持本站!
版權(quán)聲明:本站文章來(lái)源標(biāo)注為YINGSOO的內(nèi)容版權(quán)均為本站所有,歡迎引用、轉(zhuǎn)載,請(qǐng)保持原文完整并注明來(lái)源及原文鏈接。禁止復(fù)制或仿造本網(wǎng)站,禁止在非www.sddonglingsh.com所屬的服務(wù)器上建立鏡像,否則將依法追究法律責(zé)任。本站部分內(nèi)容來(lái)源于網(wǎng)友推薦、互聯(lián)網(wǎng)收集整理而來(lái),僅供學(xué)習(xí)參考,不代表本站立場(chǎng),如有內(nèi)容涉嫌侵權(quán),請(qǐng)聯(lián)系alex-e#qq.com處理。