一、前言
使用rsync可以進行FTP, SSH進行備份同步資料,安裝設定簡單,安全性都不錯。在centos中很多都已經配備了rsync,只需要進行簡單設定就可以使用。
以下進行舉例說明安裝設定方法
系統:centos 5.4
A為伺服器端(210.0.128.111)
B為備份主機(192.168.0.10)
A 需要備份的目錄為
/home/html/public_html (網頁資料夾)
/var/lib/mysql/home (數據庫資料夾)
備份端B 要進行設定以下項目:
建立備份的資料夾
設定/etc/xinetd.d/rsync
設定/etc/rsyncd.conf
設定密碼檔或public/privacy key
目標伺服器端A進行設定:
1.密碼檔/etc/rsyncd.conf
2.rsync指令
3.加入定期執行指令(crontab)
二、安裝方法
1. 在B為備份主機(192.168.0.10)建立備份資料夾,本例將資料備份在
網頁:/home/backup
數據庫 /var/lib/mysql/backup
這樣做原因是可以即時測試備份後的數據是否能正常運作,可以在伺服器中建立backup用戶和其數據庫backup
2.在B為備份主機(192.168.0.10) centos 中用以下指令
yum -y install rsync xinetd
系統會判斷是否已經安裝rsync 和 xinetd,
設定/etc/xinetd.d/rsync,將disable=yes 改為no,簡單設定如下
service rsync
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = –daemon
log_on_failure += USERID
}
保存後執行service xinetd restart, 確保沒有錯誤
3.設定/etc/rsyncd.conf (不存在請自行創建)
根據以下範例創建
log file = /var/log/rsyncd.log #記錄檔
[webdata] #可以自行命名
path = /home/backup #備份主機B備份的目錄
auth users = backup #備份主機B 創建的用戶backup
uid = root #執行用戶
gid = root
secrets file = /etc/rsyncd.secrets #備份主機B中的密碼檔
read only = no #是否唯讀
[mysql] #可以自行命名
path = /var/lib/mysql/backup #備份主機B備份的目錄
auth users = backup #備份主機B 創建的用戶backup
uid = root #執行用戶
gid = root
secrets file = /etc/rsyncd.secrets #備份主機B中的密碼檔
read only = no #是否唯讀
4.設定密碼檔
vi /etc/rsyncd.secrets 密碼檔密碼格式:username:password 如下例:
backup:123pass
保存後,要確保密碼檔權限為root 擁有,因此執行以下指令
chown root:root /etc/rsyncd.secrets
chmod 600 /etc/rsyncd.secrets
完成後執行service xinetd restart
三、目標伺服器A設定
1.設定密碼檔
vi /etc/rsyncd.secrets ,輸入備份端B中用戶backup的密碼123pass,然後儲存
同樣執行指令
chown root:root /etc/rsyncd.secrets
chmod 600 /etc/rsyncd.secrets
2. 測試指令是否成功,輸入下指令
/usr/bin/rsync -vzrtopg –progress –delete –password-file=/etc/rsyncd.secrets /home/html/public_html/ backup@192.168.0.10::webdata
上面file後是密碼檔案,密碼檔案後是你想要備份的資料夾/home/html/public_html/
資料夾後,@前是用戶名,然後@後是備份伺服器B的ip地址,然後::後是備份伺服器B中rsyncd.conf設定檔的設定項目webdata
成功的話會提示:
Build file list…
(一些檔案名)
Send xxxx bytes received xxx bytes xxx bytes/sec
Total size is xxx speedup is xx.xxx
這樣就表示成功備份,可以到備份伺服器B上瀏覽一下資料是否已經複製過去了
3.設定cronab定期工作
可以用指令,假如有webmin可以在webmin中設定,建議凌晨時分進行
crontab -e0 0 * * * /usr/bin/rsync -vzrtopg –progress –delete –password-file=/etc/rsyncd.secrets /home/html/public_html/ backup@192.168.0.10::webdata
crontab -e0 0 * * * /usr/bin/rsync -vzrtopg –progress –delete –password-file=/etc/rsyncd.secrets /var/lib/mysql/home/ backup@192.168.0.10::mysql
完成,當然要注意本例只是用內部主機進行備份,假如是共同在線主機,要注意在防火牆設定rsync 端的連線範圍
以下是參考網址:
http://www.backup.idv.tw/good_doc/linux/backup/20030726/rsync.htm
public/privacy key
http://dz.adj.idv.tw/thread-48-1-4.html
詳細的設定:
http://fanqiang.chinaunix.net/a6/b7/20010908/1305001258_b.html
One thought on “Centos 安裝使用rsync 進行備份”
評論已被關閉。