1. 程式人生 > >Rsync遠程同步工具

Rsync遠程同步工具

use 無需 ffffff deb pre pid ets vsftpd 傳輸

Rsync遠程同步工具
1配置rsync源服務器(http://rsync.samba.org/)
(1)建立配置文件
vim /etc/rsyncd.conf
uid = nobody //指定運行程序的用戶
gid = nobody //指定運行程序的組
use chroot = yes //禁錮在源目錄,指只能訪問我指定的目錄不允許訪問其他目錄,類似以vsftpd的禁錮
address = 192.168.1.20 //指定監聽的地址
port 873 //指定監聽的端口
log file = /var/log/rsyncd.log //指定日誌文件存放的位置
pid file = /var/run/rsyncd.pid //指定進程文件的位置
hosts allow = 192.168.1.0/24 //指定可以訪問的地址,這裏如果需要實現異地災備的時候可以寫上公網的IP地址,通過路由器映射進來就可以了。
[www] //指定共享的名字
path = /var/www/html //源目錄的實際目錄
comment = Dcoument Root of web.lzg.com //這個模塊的描述信息
read only = yes(no) //目錄為只讀(可讀可寫)
dont compress = .gz .bz2 .zip .z .rar //在傳輸過程中不在進行二次壓縮的文件類型。
auth users = backuper //授權備份的用戶
secrets file = /etc/rsyncdusers.db //指定賬戶信息的數據文件位置
技術分享圖片
(2)為備份賬戶創建數據文件
vim /etc/rsyncdusers.db
backuper:123.com //用戶和密碼,無需建立同名系統用戶
技術分享圖片
chmod 600 /etc/rsyncd_users.db
rsync –daemon
netstat –anput | grep rsync
技術分享圖片
2配置客戶端進行驗證
rsync -avz [email protected]::www /myweb****
技術分享圖片
3創建密碼文件自動同步
vim /etc/server.pass
123.com
chmod 600 /etc/server.pass
rsync –avz –delete --password-file=/etc/server.pass [email protected]::www /myweb
技術分享圖片
4配置inotify+rsync 實時同步
調整inotify內核參數:
vim /etc/sysctl.conf
fs.inotify.max_queued_events = 16384
fs.inotify.max_user_instances = 1024
fs.inotify.max_user_watches = 1048576
技術分享圖片
sysctl –p
安裝inotify-tools
編寫觸發時啟動腳本
Mkdir /sh
Vim /sh/inotify_rsync.sh
#!/bin/bash
INOTIFY="inotifywait -mrq -e modify,create,move,delete,attrib /myweb/"
RSYNC="rsync -azH --delete --password-file=/etc/server.pass /myweb/ [email protected]::www"
$INOTIFY | while read DIRECTORY EVENT FILE
do
$RSYNC
Done
技術分享圖片
運行腳本
在服務器上
Chmod –R 777 /var/www/html
驗證

Rsync遠程同步工具