站長資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

通過rsync實(shí)現(xiàn)遠(yuǎn)程同步

正確、有效的備份方案是保障系統(tǒng)及數(shù)據(jù)安全的重要手段,在服務(wù)器中,通常會(huì)結(jié)合計(jì)劃任務(wù)、Shell腳本來執(zhí)行本地備份,為了進(jìn)一步提高備份的可靠性,使用異地備份也是非常有必要的。

比如針對web站點(diǎn)的同步備份,如果想要實(shí)現(xiàn)快速、安全、高效的異地備份,就需要使用到——rsync。

rsync簡介

rsync(Remote Sync,遠(yuǎn)程同步)是一個(gè)開源的快速備份工具,可以在不同主機(jī)之間鏡像同步整個(gè)目錄樹,支持增量備份,保持鏈接和權(quán)限,且采用優(yōu)化的同步算法,傳輸前執(zhí)行壓縮,因此非常適用于異地備份、鏡像服務(wù)器等應(yīng)用。

rsync的官方站點(diǎn):http://rsync.samba.org/ ,目前最新版本是3.1.3,由Wayne Davison.進(jìn)行維護(hù),作為一種最常用的文件備份工具,rsync往往是Linux和UNIX系統(tǒng)默認(rèn)安裝的基本組件之一。

rsync是一款快速增量備份工具,支持:  (1)本地復(fù)制;  (2)與其他SSH同步;  (3)與rsync主機(jī)同步。

在遠(yuǎn)程同步任務(wù)中,負(fù)責(zé)發(fā)起rsync同步操作的客戶機(jī)稱為發(fā)起端,而負(fù)責(zé)相應(yīng)來自客戶機(jī)的rsync同步操作的服務(wù)器稱為同步源。在同步過程中,同步源負(fù)責(zé)提供文檔的原始位置,發(fā)起端應(yīng)對該位置有讀取權(quán)限。如圖:
通過rsync實(shí)現(xiàn)遠(yuǎn)程同步

配置rsync源

配置rsync源服務(wù)器大致分為三步:  (1)建立rsync配置文件;  (2)為備份賬戶創(chuàng)建數(shù)據(jù)文件;  (3)啟動(dòng)rsync服務(wù)。

(1)建立rsync配置文件

在CentOS 7系統(tǒng)之前/etc/rsyncd.conf文件默認(rèn)不存在,CentOS 7開始已經(jīng)有這樣的文件,并且其中放置了模板參考信息(根據(jù)實(shí)際情況編寫需要的內(nèi)容,注意格式)。

[root@localhost ~]# vim /etc/rsyncd.conf   uid = nobody                                                                //啟用匿名用戶  gid = nobody                                                                 use chroot = yes                                                          //禁錮在源目錄  address = 192.168.1.1                                                //監(jiān)聽地址  port 873                                                                      //監(jiān)聽端口  log file = /var/log/rsyncd.log                                       //日志文件存放位置  pid file = /var/run/rsyncd.pid                                      //存放進(jìn)程ID的文件位置  hosts allow = 192.168.1.0/24                                    //允許訪問的客戶機(jī)地址  [wwwroot]                                                                  //共享模塊名稱          path = /var/www/html                                        //源目錄的實(shí)際路徑          comment = aaa                                                 //描述(可以省略)          read only = no                                                   //是否為只讀          dont compress = *.gz *.bz2 *.rar *.zip               //同步時(shí)不再壓縮的文件類型          auth users = backuper                                      //授權(quán)賬戶          secrets file = /etc/rsyncd_users.db                   //存放賬戶信息的數(shù)據(jù)文件

基于安全性考慮,對于rsync的同步源最好僅允許以只讀方式做同步。另外,同步可以采用匿名的方式,只要將其中的“auth users”和“secrets file”配置項(xiàng)去除即可!

(2)為備份賬號創(chuàng)建數(shù)據(jù)文件

根據(jù)rsync的配置文件內(nèi)容,創(chuàng)建賬號數(shù)據(jù)文件。每行一個(gè)用戶,用戶和密碼之間用冒號進(jìn)行分隔。

[root@localhost ~]# vim /etc/rsyncd_users.db  backuper:123456

由于賬號信息采用明文存放,因此需要調(diào)整文件權(quán)限,避免賬號信息泄露。

[root@localhost ~]# chmod 600 /etc/rsyncd_users.db

備份用戶應(yīng)對源目錄具有讀取權(quán)限。

[root@localhost ~]# ls -ld /var/www/html  drwxr-xr-x. 2 root root 6 11月 15 2016 /var/www/html

(3)啟動(dòng)rsync服務(wù)

[root@localhost ~]# rsync --daemon  [root@localhost ~]# netstat -anpt | grep rsync  tcp        0      0 192.168.1.1:873         0.0.0.0:*               LISTEN      44001/rsync

如果需要重啟rsync服務(wù),需要:

[root@localhost ~]# kill  $(cat /var/run/rsyncd.pid)  //停止服務(wù)  [root@localhost ~]# rsync --daemon  //啟動(dòng)服務(wù)
[root@localhost ~]# kill -9 $(cat /var/run/rsyncd.pid)

或者直接使用“netstat -anpt | grep rsync”命令查出進(jìn)程號,使用“kill 進(jìn)程號”一樣。
使用第一種方法停止rsync服務(wù)必須刪除存放rsync服務(wù)進(jìn)程的文件:

[root@localhost ~]# rm -rf /var/run/rsyncd.pid

使用rsync備份工具

配置好rsync同步源服務(wù)器之后,客戶端就可以使用rsync工具來執(zhí)行遠(yuǎn)程同步了。

rsync命令的選項(xiàng):  -r:遞歸模式,包含目錄及子目錄中所有文件  -l:對于符號鏈接文件仍然復(fù)制為符號鏈接文件  -p:保留文件的權(quán)限標(biāo)記  -t:保留文件的時(shí)間標(biāo)記  -g:保留文件的屬組標(biāo)記(僅超級用戶使用)  -o:保留文件的屬主標(biāo)記(僅超級用戶使用)  -D:保留設(shè)備文件及其他特殊文件  -a:歸檔模式,遞歸并保留對象屬性,等同于 -rlptgoD  -v:顯示同步過程的詳細(xì)(verbose)信息  -z:在傳輸文件時(shí)進(jìn)行壓縮(compress)  -H:保留硬連接文件  -A:保留ACL屬性信息  --delete:刪除目標(biāo)位置有而原始位置沒有的文件  --checksum:根據(jù)對象的校驗(yàn)和來決定是否跳過文件

rsync是一款快速增量備份工具,支持:
(1)本地復(fù)制;
(2)與其他SSH同步;
(3)與rsync主機(jī)同步。

(1)本地復(fù)制
[root@localhost ~]# rsync /etc/passwd 123.txt  //類似于cp命令
(2)與其他SSH同步
[root@localhost ~]# rsync -av root@192.168.1.2:/root/123.txt .  root@192.168.1.2's password: 
(3)與rsync主機(jī)同步
[root@localhost ~]# rsync -avz backuper@192.168.1.1::wwwroot /root  或者  [root@localhost ~]# rsync -avz rsync://backuper@192.168.1.1/wwwroot /root

這兩種命令效果是一樣!
上傳只需將目錄調(diào)換順序即可(確保對上傳的目錄具有寫入權(quán)限)
在同步源端輸入以下命令,方可執(zhí)行寫入權(quán)限

[root@localhost ~]#chmod 777  /var/www/html  [root@localhost ~]# rsync -avz /root backuper@192.168.1.1::wwwroot 

但是在現(xiàn)實(shí)工作環(huán)境中,備份工作通常是按計(jì)劃重復(fù)執(zhí)行的,比如:

[root@localhost ~]# vim /root/123.pass  123456  //任意創(chuàng)建一個(gè)文件用于存放rsync授權(quán)用戶的密碼信息  [root@localhost ~]# chmod 600 /root/123.pass  //必須設(shè)定600權(quán)限,否則執(zhí)行時(shí)將會(huì)報(bào)錯(cuò)  [root@localhost ~]# crontab -e  //創(chuàng)建計(jì)劃任務(wù)  30 22 * * * /usr/bin/rsync -az --delete --password-file=/root/123.pass backuper@192.168.1.1::wwwroot /a  //每天晚上22:30執(zhí)行腳本  [root@localhost ~]# systemctl restart crond  //重新啟動(dòng)crond服務(wù)

關(guān)于crond計(jì)劃任務(wù)配置文件的格式(從上到下):
通過rsync實(shí)現(xiàn)遠(yuǎn)程同步

贊(0)
分享到: 更多 (0)
網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號
亚洲精品成人a在线观看| 国产伦精品一区二区三区四区 | 国产精品福利午夜在线观看| 精品久久久无码21p发布| 久久这里只有精品首页| 精品国内自产拍在线观看| 亚洲区日韩精品中文字幕| 国产精品伦理一二三区伦理| 亚洲高清国产拍精品熟女| 国产精品免费观看| 666精品国产精品亚洲| 亚洲AV第一页国产精品| 精品综合久久久久久97超人| 国产精品片在线观看手机版| 乱人伦精品视频在线观看| 日韩在线观看第一页| 国产午夜久久精品| 国产精品第44页| 国产精品露脸国语对白河北| 久久99热久久99精品| 国产精品大全国产精品| 国产成人精品视频在放| 91精品国产成人网在线观看| 久久精品99久久香蕉国产色戒| 久久99精品久久久久麻豆| 久久精品一区二区东京热| 久久精品国产精品亚洲蜜月| 老司机国内精品久久久久| 国产精品无码AV一区二区三区| 国内大量偷窥精品视频| 日韩精品无码视频一区二区蜜桃| 国产精品综合专区中文字幕免费播放 | 在线观看亚洲精品福利片| 国产免费久久精品丫丫| 500av导航大全精品| 亚洲国产精品毛片av不卡在线| 亚洲综合国产精品第一页 | 久久中文精品无码中文字幕| 精品一区二区三区在线观看| 精品人妻少妇嫩草AV无码专区 | 精品熟女少妇av免费久久|