rsync是類unix系統(tǒng)下的數(shù)據(jù)鏡像備份工具——remote sync。一款快速增量備份工具 Remote Sync,遠(yuǎn)程同步 支持本地復(fù)制,或者與其他SSH、rsync主機(jī)同步。我們先來了解下rsync的語(yǔ)法吧,然后在配置rsync+ssh+crontab,實(shí)現(xiàn)自動(dòng)化備份。
創(chuàng)新互聯(lián)公司是專業(yè)的西湖網(wǎng)站建設(shè)公司,西湖接單;提供做網(wǎng)站、網(wǎng)站設(shè)計(jì),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行西湖網(wǎng)站開發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專業(yè)做搜索引擎喜愛的網(wǎng)站,專業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來合作!
yum install rsync -y #安裝服務(wù)
本地目錄同步(個(gè)人認(rèn)為本地同步還是cp實(shí)用)
rsync -avz /tang /home #將/tang目錄下的文件復(fù)制到/home中,參數(shù)說明看下面。
實(shí)驗(yàn)環(huán)境:
由于我想把實(shí)驗(yàn)錄成gif效果,所以裝了個(gè)圖像界面,左邊是主服務(wù)器,右邊是ssh遠(yuǎn)程備份服務(wù)器。
把主服務(wù)器的 /tang/ 目錄 備份到備份服務(wù)器的 /home中,備份服務(wù)器的IP為:192.168.23.35
rsync -avz /tang/ root@192.168.23.35:/home/ #把本地/tang/目錄備份到遠(yuǎn)程備份服務(wù)器的/home目錄下
假如主服務(wù)器和備份服務(wù)器都想保持一致,可以加上 --delete,讓備份服務(wù)器同步主服務(wù)器,有多余的就刪除。 左邊是主服務(wù)器,右邊是ssh遠(yuǎn)程備份服務(wù)器。
rsync --delete -avz /tang/ root@192.168.23.35:/home/
同步指定的文件夾名。這里是以b開頭的文件夾都匹配
rsync -avz --include 'b*' --exclude '*' /tang root@192.168.23.35:/home
解釋:--include是包括的意思。 --exclude是排除的意思,*代表前面的(左鄰)字符有0個(gè)或0個(gè)以上。
如果想要準(zhǔn)確的同步一個(gè)文件夾,--include ‘這里是文件夾的名字,后面不加*號(hào)鍵’。
左邊是主服務(wù)器,右邊是ssh遠(yuǎn)程備份服務(wù)器。
-a, -權(quán)限的屬性不變
-v, -詳細(xì)模式輸出
-z, -傳輸時(shí)進(jìn)行壓縮處理
-e, --rsh=COMMAND 指定使用rsh、ssh方式進(jìn)行數(shù)據(jù)同步
基本的操作上面應(yīng)該都演示了,相信你應(yīng)該知道每次同步都要輸入備份服務(wù)器的密碼,現(xiàn)在來配置ssh免密碼登錄,然后在 crontab -e 中 寫個(gè)腳本就可以自動(dòng)化執(zhí)行了。實(shí)驗(yàn)如下:
在主服務(wù)器上生成密鑰
ssh-keygen #(直接選擇回車,都選擇默認(rèn)就行)
使用ssh-copy-id將公匙發(fā)送到備份服務(wù)器
ssh-copy-id 192.168.23.35
然后再測(cè)試下,遠(yuǎn)程登錄是否要密碼,不用就OK!
手動(dòng)測(cè)試同步是否需要輸入密碼
rsync -avz -e ssh /tang root@192.168.23.35:/home
ssh 免密碼登錄OK,現(xiàn)在我們把這句寫入一個(gè)腳本里面
echo "rsync -avz -e ssh /tang root@192.168.23.35:/home " > /etc/tang.sh
crontab -e #編寫定時(shí)執(zhí)行任務(wù),每個(gè)小時(shí)的第五分鐘執(zhí)行一次。
5 * * * * sh /etc/tang.sh
* * * * * sh /etc/tang.sh
解釋:
第1列表示分鐘1~59 每分鐘用*或者 */1表示
第2列表示小時(shí)1~23(0表示0點(diǎn))
第3列表示日期1~31
第4列表示月份1~12
第5列標(biāo)識(shí)號(hào)星期0~6(0表示星期天)
以上實(shí)驗(yàn)配置完畢,