1. 程式人生 > >rsync檔案同步使用記錄

rsync檔案同步使用記錄

這裡記錄一個在工作中需要使用的rsync進行儲存檔案備份的方法。

需求:
在伺服器端進行錄音檔案儲存,不但檔案要儲存到伺服器上,還需定時備份到儲存上。

一. 檔案備份源端配置

1、在 /etc/路徑下建立rsyncd.conf 檔案,檔案內容如下:

uid = root
gid = root
use chroot = no
max connections = 4
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsyncd.lock
log file = /var/log/rsyncd.log
[web]
path = /var/ftp/file               #需要備份的路徑,按需求更改
ignore errors
read only = true
list = false
hosts allow = 192.168.0.0         # 允許的IP地址,* 為全部允許
auth users = root             # 認證使用者名稱
secrets file = /etc/rsync.passwd   # 認證使用者的密碼檔案

2、在 /etc/路徑下建立密碼檔案rsync.passwd檔案,檔案內容如下:

root:skyfans                        # 認證使用者名稱密碼,按需求更改

二. 檔案備份目標端配置

1、在 /etc/路徑下建立密碼檔案rsync.passwd檔案,檔案內容如下:

root:skyfans                 # 認證使用者名稱密碼,必須與源端配置相同

三. 配置檔案賦權

rsyncd.conf和rsync.passwd檔案需要賦予600許可權,許可權過大可能會報錯,
賦權命令為:

chmod 600 rsyncd.conf rsync.passwd

四. 檢視是否存在rsync命令

rsync 
rpm -qa|grep rsync

如果該伺服器不存在命令則需安裝。

五. 啟動rsync服務

啟動命令為:

/usr/bin/rsync --daemon --config=/etc/rsyncd.conf

僅備份檔案源端需要啟動服務, 通過ps -ef|grep rsync 檢視程序

ps -ef|grep rsync

六. rsync引數及用法舉例

rsync -a --password-file=/etc/rsync.passwd --delete --bwlimit=10240 [email protected]

源端IP::web /home/file

rsync -a --password-file=/etc/rsync.passwd  --delete --bwlimit=10240 [email protected]源端IP::web /home/file

引數說明:
/home/file為目標端檔案備份路徑;
web =rsyncd.conf 檔案中[web];
-a: -archive 歸檔模式,表示以遞迴方式傳輸檔案,並保持所有檔案屬性,等於-rlptgoD;
–password-file=FILE 從FILE中得到密碼;
–bwlimit=KBPS 限制I/O頻寬,KBytes per second;
–delete 刪除那些DST中SRC沒有的檔案。

以下為指令碼舉例,僅作為參考:

#!/bin/bash
DATE=`date`

starttime=`date +%s`
rsync   -a --password-file=/etc/rsync.passwd  --delete  [email protected]::web1  /home/file
endtime=`date +%s`
baktime=`expr $endtime - $starttime`
echo "rsync OK at  $DATE">>/tmp/rsync.log
echo "rsync timeused $baktime  second" >>/tmp/rsync.log
if [ $? -eq 0 ]
then 
echo "rsync failed  at $DATE" >/tmp/rsync_failed.log
exit 1
fi
sleep  86400
done