亚洲最大看欧美片,亚洲图揄拍自拍另类图片,欧美精品v国产精品v呦,日本在线精品视频免费

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

    通過rsync實現(xiàn)遠程同步

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

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

    rsync簡介

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

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

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

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

    配置rsync源

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

    (1)建立rsync配置文件

    在CentOS 7系統(tǒng)之前/etc/rsyncd.conf文件默認不存在,CentOS 7開始已經(jīng)有這樣的文件,并且其中放置了模板參考信息(根據(jù)實際情況編寫需要的內(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                                      //存放進程ID的文件位置  hosts allow = 192.168.1.0/24                                    //允許訪問的客戶機地址  [wwwroot]                                                                  //共享模塊名稱          path = /var/www/html                                        //源目錄的實際路徑          comment = aaa                                                 //描述(可以省略)          read only = no                                                   //是否為只讀          dont compress = *.gz *.bz2 *.rar *.zip               //同步時不再壓縮的文件類型          auth users = backuper                                      //授權賬戶          secrets file = /etc/rsyncd_users.db                   //存放賬戶信息的數(shù)據(jù)文件

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

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

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

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

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

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

    備份用戶應對源目錄具有讀取權限。

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

    (3)啟動rsync服務

    [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服務,需要:

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

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

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

    使用rsync備份工具

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

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

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

    (1)本地復制
    [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主機同步
    [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)換順序即可(確保對上傳的目錄具有寫入權限)!
    在同步源端輸入以下命令,方可執(zhí)行寫入權限

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

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

    [root@localhost ~]# vim /root/123.pass  123456  //任意創(chuàng)建一個文件用于存放rsync授權用戶的密碼信息  [root@localhost ~]# chmod 600 /root/123.pass  //必須設定600權限,否則執(zhí)行時將會報錯  [root@localhost ~]# crontab -e  //創(chuàng)建計劃任務  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  //重新啟動crond服務

    關于crond計劃任務配置文件的格式(從上到下):
    通過rsync實現(xiàn)遠程同步

    贊(0)
    分享到: 更多 (0)
    網(wǎng)站地圖   滬ICP備18035694號-2    滬公網(wǎng)安備31011702889846號