異地自動備份INSTALL資料夾

mi_zy發表於2021-02-19

1、備份shell指令碼:backup.sh

#!/bin/bash

BAKDATE='date +%y%m%d'

cd /home/atc/zzzz/dpr

tar -xvzf  /home/atc /backup/INSTALL_$BAKDATE.tat.gz INSTALL

rsync -vzrtopg   /home/atc/ backup/INSTALL_$BAKDATE.tat.gz root@168.192.13.51:/home/atc/ backup

指令碼中不要採用相對路徑,全部改為絕對路徑

#chmod 755 backup.sh

2、crontab定時任務,每天凌晨03:30自動執行備份

#crontab -e

    30 03 * * * /home/atc/backup.sh

設定crond開機自啟動:chkconfig --level 35 crond on

如更改後不起效果,重新載入或重啟cron:
方法1:   /etc/init.d/cron reload 

方法2:  /etc/init.d/cron restart

3、自動執行需設定無密碼登入

把DPR主機的公鑰傳到DARD主機

#scp /root/.ssh/id_rsa.pub  root@168.192.13.51:/root/.ssh/

登入DARD主機

#cat  /root/.ssh/ id_rsa.pub >/root/.ssh/authorized_keys

4、 rsync的目的是實現本地主機和遠端主機上的檔案同步(包括本地推到遠端,遠端拉到本地兩種同步方式),也可以實現本地不同路徑下檔案的同步,但不能實現遠端路徑1到遠端路徑2之間的同步(scp可以實現)。 無論本地同步目錄還是遠端同步資料,首次執行時將會把全部檔案拷貝一次,以後再執行時將只拷貝有 變化的檔案(對於新檔案)或檔案的變化部分(對於原有檔案)

rsync -vzrtopg  SRC DEST

rsync 常用引數的具體解釋如下:

-v, --verbose 詳細模式輸出
-q, --quiet 精簡輸出模式
-c, --checksum 開啟校驗開關,強制對檔案傳輸進行校驗
-a, --archive 歸檔模式,表示以遞迴方式傳輸檔案,並保持所有檔案屬性,等於-rlptgoD
-r, --recursive 對子目錄以遞迴模式處理
-b, --backup 建立備份,也就是對於目的已經存在有同樣的檔名時,將老的檔案重新命名為~filename。可以使用--suffix選項來指定不同的備份檔案字首。
-suffix=SUFFIX 定義備份檔案字首
-u, --update 僅僅進行更新,也就是跳過所有已經存在於DST,並且檔案時間晚於要備份的檔案。(不覆蓋更新的檔案)
-l, --links 保留軟鏈結
-p, --perms 保持檔案許可權
-o, --owner 保持檔案屬主資訊
-g, --group 保持檔案屬組資訊
-t, --times 保持檔案時間資訊
-e, --rsh=COMMAND 指定使用rsh、ssh方式進行資料同步
--delete 刪除那些DST中SRC沒有的檔案
--delete-excluded 同樣刪除接收端那些被該選項指定排除的檔案
--delete-after 傳輸結束以後再刪除
--ignore-errors 及時出現IO錯誤也進行刪除
--force 強制刪除目錄,即使不為空
--timeout=TIME IP超時時間,單位為秒
--progress 顯示備份過程
-z, --compress 對備份的檔案在傳輸時進行壓縮處理
--exclude=PATTERN 指定排除不需要傳輸的檔案模式
--include=PATTERN 指定不排除而需要傳輸的檔案模式
--exclude-from=FILE 排除FILE中指定模式的檔案
--include-from=FILE 不排除FILE指定模式匹配的檔案

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/7970627/viewspace-2757819/,如需轉載,請註明出處,否則將追究法律責任。

相關文章