1.安裝:yum -y install rsync
2.vim /etc/xinetd.d/rsync
複製代碼 代碼如下:service rsync
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = –daemon
log_on_failure += USERID
}
3.vim /etc/rsyncd.conf(這個檔案是手動建立,預設沒有)
uid = nobody # 備份以什麼身份進行,使用者ID
gid = nobody # 備份以什麼身份進行,組ID
#注意這個使用者ID和組ID,如果要方便的話,可以設定成root,這樣rsync幾乎就可
#以讀取任何檔案和目錄了,但是也帶來安全隱患。建議設定成只能讀取你要備份的目錄和文
件即可。
use chroot = no
max connections = 0 #最大串連數,0代表沒有限制
#port = 873 #預設連接埠873
pid file = /var/log/rsync/rsyncd.pid #運行進程的ID寫到哪裡
lock file = /var/log/rsync/rsync.lock
log file = /var/log/rsync/rsyncd.log #日誌記錄檔案
motd file = /var/log/rsync/rsyncd.motd #歡迎訊息
strict modes =yes #是否檢查口令檔案的許可權
[www] # 指定認證的備份模組名
uid = www1
gid = www1
path = /www/ # 需要備份的目錄
comment = BACKUP attachment # 注釋
ignore errors # 忽略一些無關的IO錯誤
read only = false # 設定為非唯讀,即可以傳至伺服器的相應目錄。
list = false # 不允許列檔案
#exclude = test/ test.php #設定不同步的目錄或檔案用空格隔開
hosts allow = all #允許串連伺服器的主機IP地址,如果多個ip則用空格隔開
hosts deny = 172.25.0.0/24 #禁止串連伺服器的主機IP地址,也可為*,表示所有。
auth users = backup # 認證的使用者名稱,如果沒有這行,則表明是匿名
secrets file = /etc/rsyncd.passwd # 認證檔案名稱,用來存放密碼
[www1]
path = /www1/
ignore errors
read only = true
list = false
hosts allow = 202.99.11.121
hosts deny = 0.0.0.0/32
auth users = backup
secrets file = /etc/rsyncd.passwd
4./etc/rsyncd.passwd是儲存使用者帳號資訊的檔案
格式:backup:password,許可權必須是600
5.服務重啟:/usr/bin/rsync –daemon –config=/etc/rsyncd.conf
6.用戶端同步:
rsync -vzrtopg –delete –progress backup@192.168.18.200::www1 /backup/www1 –password-file=/etc/rsyncd.password
7.計劃任務
vim /opt/rsyncd.sh
rsync -vzrtopg –delete –progress backup@192.168.18.200::www1 /backup/www1 –password-file=/etc/rsyncd.password
chmod u+x /opt/rsyncd.sh
crontab -e
0 5 * * * sh /opt/rsyncd.sh#每5小時同步一次
以下是補充:
安裝系統:redhat linux as 4 2.6.9
rsync是類unix系統下的資料鏡像備份工具,從軟體的命名上就可以看出來了--remote sync。它的特性如下:
可以鏡像儲存整個分類樹和檔案系統。
可以很容易做到保持原來檔案的許可權、時間、軟永久連結等等。
無須特殊許可權即可安裝。
最佳化的流程,檔案傳輸效率高。
可以使用rcp、ssh等方式來傳輸檔案,當然也可以通過直接的socket串連。
支援匿名傳輸,以方便進行網站鏡象。
step
1.從原始網站下載:[url]http://rsync.samba.org/ftp/rsync/[/url]
2.[root@localhost bin]#./configure
[root@localhost bin]#make
[root@localhost bin]#make install
說明一點,客戶機和伺服器都要安裝rsync。客戶機以用戶端方式運行rsync,伺服器端以伺服器方式運行rsync,它監聽873連接埠。
3.運行rsync
/usr/local/bin/rsync --daemon
驗證啟動是否成功:
netstat -na|grep 873
4.配置rsync
簡單配置:編輯/etc/rsyncd.conf檔案如下:
#全域配置部分
secrets file = /etc/rsyncd.secrets 認證使用者名稱和密碼檔案的名稱和位置
motd file = /etc/rsyncd.motd 歡迎資訊檔名稱和存放位置(此檔案沒有,可以自行添加)
read only = yes
list = yes
uid = root
gid = root
#hosts allow = 10.4.5.213
#hosts deny = 10.4.5.0/24
use chroot = no
max connections = 5
log file = /var/log/rsyncd.log
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
#模組配置部分
[web]
comment = web 's directory
path = /home/test/software
auth users = rsync
#secrets file = /etc/rsyncd.secrets
5.產生驗證證檔案
echo "rsync:rsync_password" >> /etc/rsyncd.secrets
chmod 600 /etc/rsyncd.secrets
6.在用戶端伺服器同步伺服器上的檔案
rsync -vzrtopg --delete --progress rsync@10.4.5.161::web /china/
或加上--password-file=/etc/rsyncd.secrets選項
上面的命令把10.4.5.161伺服器上的web模組中的目錄的檔案傳送到本機/china目錄中,並刪除本機/china目錄中在161伺服器web模組指定目錄中沒有的檔案。以使兩台電腦的目錄檔案同步。