一款快速增量備份工具
rsync+免密碼驗證+定時計劃任務/腳本 ————》 實時增量文件備份機制
Remote Sync 遠程同步
rsync 同步源 : 指備份操作的遠程服務器
也稱備份原
一: 同步源
1: 基於ssh 的同步源
在服務器端創建一個用戶,爲要備份的目錄設置acl 權限
setfacl
下行同步
將服務器的相關目錄裏的數據備份到另外的服務器
rsync -avz 用戶名@服務器地址:/ 服務器目錄 /本地目錄
上行同步
rsync -avz /本地目錄 用戶名@服務器地址:/服務器目錄
2: 基於RSYNC的同步源
vim /etc/rsyncd.conf
address = 監聽的端口號
port 873
pid file = /var/run/resyncd.pid
log file = /var/log/rsyncd.log
[share] ##共享區域
comment = soft ##說明
path = /server/rsync ##具體服務器共享目錄
read only =yes # 只讀
dont compress =*gz *gip *bz2 ##對以此結尾的壓縮文件不做處理
auth user =wang ##虛擬用戶
secrets file =/etc/rsyncd_users.db ##虛擬用戶存放密碼的文件 (必須以此文件名命名)
:wq
存放虛擬用戶的密碼文件 注: 必須賦予該文件600 權限 否則 ,備份會報錯,失敗
vim /etc/rsync_users.db
wang :123456 (密碼一般八位以內)用戶名必須頂頭書寫
:wq
/etc/rsyncd.conf
/etc/rsync_users.db
下行同步時報錯:auth faild on module share (認證模塊失敗)
問題原因:服務器端的報錯虛擬用戶的文件必須是600權限
rsync -avz 用戶名@服務器地址::共享模式塊名 /本地目錄
上行同步時,賦予nobody用戶寫入權限
rsync -avz /client/rsync/* [email protected]::share
或者
rsync -avz rsync://用戶名@服務器地址/共享模塊 /本地目錄
同步報錯:module is only (模塊爲只讀)
解決方法:修改/etc/rsyncd.conf 中read only =no
二 免密碼驗證
1: 基於ssh的同步源
通過密鑰對實現
在備份到的服務器端
#ssh-keygen -t rsa ##生成密鑰對
#ssh-copy-id [email protected] ##將本地密鑰對上傳至服務器端
2:基於rsync 的同步源
本地端:
#echo $RSYNC_PASSWORD
#export RSYNC_PASSWORD=123456 ##將虛擬用戶設置的密碼賦給全局變量