ip地址 | 角色 |
---|---|
192.168.153.180 | 備份源 sync client + inotify |
192.168.153.181 | 備份端 rsync server |
兩臺機器均關閉防火墻和selinux
關閉防火墻
systemctl stop firewalld
關閉selinux
setenforce 0
3.1 安裝rsync工具
yum -y install rsync
3.2 修改rsync配置文件:
vim /etc/rsyncd.conf
修改后內容如下:(!復制之后刪掉注釋才可使用,不然格式會有問題)
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 #跳過錯誤 read only = no #讀 write only = no #寫 hosts allow = 192.168.153.180 #備份源ip list = false auth users = rsync_user #用戶
3.3 創建密碼文件并修改權限 創建文件
echo "rsync_user:123" > /etc/rsync.password
修改權限
chmod 600 /etc/rsync.password
3.4 啟動rsync并查看端口驗證
啟動
rsync --daemon
驗證
netstat -ntlp|grep 873 tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN 1583/rsync tcp6 0 0 :::873 :::* LISTEN 1583/rsync
4.1 安裝epel源和所需工具
先安裝epel源
yum -y install epel-release
再安裝所需工具
yum -y install inotify-tools rsync
4.2 只需要設置rsync同步密碼即可,不用重設用戶名 創建文件
echo "123" > /etc/rsync.password
修改權限
chmod 600 /etc/rsync.password
4.3 編寫inotify監控腳本如下:
vim inotify.sh
#!/bin/bash ip=192.168.153.181 #備份端ip src=/opt/rsync_src #數據目錄 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 創建源目錄
mkdir /opt/rsync_src
3.5 執行腳本檢測
sh inotify.sh
3.6 新開窗口在源目錄下創建文件
cd /opt/rsync_src echo 111 > 1.txt echo 222 > 2.txt
3.7 在備份端查看新創建的兩個文件已經同步過來
ls /opt/rsync_src/ 1.txt 2.txt
3.8 在備份源端刪除1.txt文件
cd /opt/rsync_src rm -f 1.txt
在備份端查看已經同步刪除
ls /opt/rsync_src/ 2.txt
到此這篇關于rsync結合 inotfiy 實現實時備份的文章就介紹到這了,更多相關rsync結合 inotfiy 實現實時備份內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章,希望大家以后多多支持腳本之家!