歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
Linux教程網 >> Unix知識 >> 關於Unix >> Rsync在服務器間鏡像或者備份目錄

Rsync在服務器間鏡像或者備份目錄

日期:2017/3/6 15:50:09   编辑:關於Unix
簡介:rsync是個真正的鏡像工具,它能相應地刪除本地文件萬一 服務器 上的文件被刪除, 這一點比wget好,在鏡像目錄的同時也能排除某些目錄及文件。速度非常快 主頁:rsync.samba.org 環境: Redhat Linux 6.2 , rsync 2.4.3(下載源碼編譯最好), 兩台 linu
  簡介:rsync是個真正的鏡像工具,它能相應地刪除本地文件萬一服務器上的文件被刪除, 這一點比wget好,在鏡像目錄的同時也能排除某些目錄及文件。速度非常快
  主頁:rsync.samba.org
  環境: Redhat Linux 6.2 , rsync 2.4.3(下載源碼編譯最好), 兩台linux服務器192.168.11.7(test)(rsync server) , 192.168.11.2(proxy)(rsync client)
  
  步驟:
  1. 下載最新的rsync 2.4.3源文件編譯,看rsync.samba.org ,據我所知, 只有2.4.3才支持鏡像時的排除選項 --include and --exclude, 編譯後得到一個執行文件rsync,僅需這個執行文件即可
  
  2. 編輯配置文件/etc/rsyncd.conf 如下:
  log file = /var/log/rsyncd.log
  pid file = /var/run/rsyncd.pid
  lock file = /var/run/rsync.lock
  
  [test]
  path = /test
  comment = test folder
  uid = root
  ignore errors
  read only = yes
  list = no
  auth users = sun
  secrets file = /etc/test.scrt
  
  注釋: 定義了需要被鏡像的目錄為/test,需要密碼連接,文件在/etc/test.scrt, 注意該文件的屬性和權限 -rw------- 1 root root test.scrt
  
  [root@test /etc]# more /etc/test.scrt
  test:tset
  
  3.啟動服務器後台 rsync
  # rsync --daemon
  且加這一行到/etc/rc.d/rc.local
  # echo "rsync --daemon" >> /etc/rc.d/rc.local
  
  4. 在服務器192.168.11.2上設定客戶端cron job. 每晚自動作備份或者鏡像0 21 * * 1-5 /root/.test.sh
  note:每晚九點周一至周五自動運行/root/.test.sh作備份
  
  #more /root/.test.sh
  #!/bin/sh
  DATE=`date +%w`
  
  rsync -tvzrp -e ssh --progress --delete [email protected]::test /shopu/test/$DATE --password -file=/etc/test > /var/log/test/test.$DATE mail -s "test Backup is done" myemailaddress < /var/log/test/test.$DATE
  
  [root@proxy /root]# more /etc/test
  tset
  [root@proxy /root]# ls /etc/test -l
  -rw------- 1 root root 4 May 16 21:40 /etc/test
  
  注意: -e ssh表示用SSH加密連接,需要服務器test支持SSH
  
  5.可用於下列用途:
  a. 從另一台服務器備份主服務器上的某個整個目錄,且可排除某個子目錄及文件
  b. 鏡像主WEB服務器的主頁目錄,適合於像像網站,用--delete可刪除服務器上沒有的本地文件是真正的像像,不同於wget,wget僅根據網站的URL鏈接下載鏈接指向的每個文件,本地文件並不刪除.

Copyright © Linux教程網 All Rights Reserved