Rsync實(shí)現(xiàn)文件定時(shí)同步技巧
使用背景:
2005年5月,商務(wù)網(wǎng)處于上線階段。但,由于總總原因一直遲遲不能上線。系統(tǒng)基本功能都已經(jīng)實(shí)現(xiàn)了,但是作為一個(gè)商務(wù)網(wǎng)整體來說,文件同步這塊還沒有完成。正好自己這段時(shí)間不是很忙。對(duì)這塊也有些興趣,所以決定摸摸看。
萬事開頭難,從沒接觸過什么同步之類的,怎么開始呢?幸好以前做郵件系統(tǒng)的時(shí)候,認(rèn)識(shí)了Eyou的小熊,請(qǐng)教了他,于是推薦了Rsync這個(gè)好工具給我。在此,特別感謝小熊的幫助。
Rsync的優(yōu)點(diǎn)是部署方便,使用方便,效率高,并且它是開源的。目前在某些Linux服務(wù)器版中已經(jīng)將其捆綁進(jìn)來,可見其功能已經(jīng)得到了較高的認(rèn)可。
關(guān)于Rsync的介紹,大家可以去google里面搜索,相信能找到更多,在此,我就不再浪費(fèi)大家時(shí)間了(魯迅先生說過:浪費(fèi)別人時(shí)間等于謀財(cái)害命,浪費(fèi)自己的時(shí)間等于慢性自殺。知道后果的嚴(yán)重性了吧,呵呵)。還是來看看我的實(shí)現(xiàn)步驟吧。
操作系統(tǒng):
文件服務(wù)器端: Red Hat Linux Advanced Server release 2.1AS/i686 (Pensacola)
客戶端:Red Hat Linux release 7.2 (Enigma)
其中,服務(wù)器端的Linux已經(jīng)捆綁了 Rsync。我在AIX下也實(shí)現(xiàn)了客戶端.
[注意事項(xiàng)]:
1、要確定系統(tǒng)本身是否已經(jīng)綁定(安裝)了Rsync,可以到/usr/bin ,/usr/local/bin/ 或者 /usr/sbin/ 等目錄下查找 Rsync是否存在,或者使用 whereis rsync,也行。
2、已綁定了Rsync的系統(tǒng),在 /etc/xinetd.d/rsync 中,默認(rèn)是關(guān)閉的??梢詫⑵浯蜷_,然后 重起服務(wù) service xinted restart
3、如果系統(tǒng)本身已安裝了,那就不需要再安裝,如果需要升級(jí)Rsync版本,只需按照正常的安裝步驟安裝即可。
4、rsync默認(rèn)綁定的是873端口,如果rsync已經(jīng)作為后臺(tái)進(jìn)程啟動(dòng)了,那么通過netstat –nap|grep 873 應(yīng)該可以查看到有rsync 進(jìn)程。
1、安裝rsync
第一步:從 http://rsync.samba.org/ 下載rsync包(本文配置使用Rsync 2.6.5 released)
第二步:將rsync包上傳到作為服務(wù)器的機(jī)器上(例如:128.128.6.168)
第三步:轉(zhuǎn)到root身份登錄,解壓rsync-2.6.5pre2.tar.gz包,到指定目錄(例如: /home/zuohao/rsync/),并且將rsync目錄分配給某個(gè)用戶(例如:zuohao)。
第四步:進(jìn)入rsync 目錄。 鍵入:./configure。
Rsync將檢測(cè)系統(tǒng)信息,并且生成相關(guān)文件。
第五步:鍵入make,編譯 C文件。(注意:運(yùn)行該命令前先確定是否安裝C編譯器,例如gcc,cc等。)
第六步:鍵入 make install 安轉(zhuǎn)rsync。(注意:運(yùn)行該命令前先確定是否安裝C編譯器,例如gcc,cc等。)
第七步:如果以上編譯都沒有問題,rsync安裝完成。
2、 配置rsync服務(wù)端
服務(wù)端的主要配置文件是 /etc/rsyncd.conf(該文件可能不存在,可以自己新建一個(gè)。) ,通過該文件可以配置全局訪問的參數(shù),需要備份的模塊參數(shù)。以下面的配置為例:
uid = root
gid = root
use chroot = no
max connections = 4
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
hosts allow = 128.128.6.38
[inburst]
path = /usr/shr
comment = BACKUP CLIENT IS REDHAT ADVANCE SERVER 3.0
read only = yes
list = no
auth users = root
secrets file = /etc/inburst.pass
[file0]
path = /home/zuohao/www
comment = my rsync site
exclude = configfile

rsyncd.conf 可以有更多的配置,例如密碼的驗(yàn)證,模塊的設(shè)置等。
[注意事項(xiàng)]
rsyncd.conf 以及密碼文件的權(quán)限必須是600,即只有root可讀\寫
更多rsyncd.conf屬性請(qǐng)參考. http://rsync.samba.org/ftp/rsync/rsyncd conf.html
3、 配置rsync 客戶端
第一步:安裝rsync:在客戶端上要實(shí)現(xiàn)同步,同樣需要安轉(zhuǎn)rsync服務(wù),(安裝方法參考上面)。
第二步:測(cè)試是否安裝成功。
在命令行輸入:
rsync -vzrtopg --progress --delete zuohao@128.128.6.38::file0 /home/zuohao/backup/
查看本地目錄/home/zuohao/backup/ 是否與服務(wù)器中的需要備份目錄文件已經(jīng)同步。

更多參數(shù)說明,參考rsync網(wǎng)站說明文檔:
http://rsync.samba.org/ftp/rsync/preview/rsync.html
第三步:編制定時(shí)運(yùn)行shell,運(yùn)行以上命令,實(shí)現(xiàn)文件的定時(shí)同步。
通過編輯crontab ,增加相應(yīng)的腳本,實(shí)現(xiàn)文件的定時(shí)同步.本例腳本如下:
*/30 * * * * zuohao /usr/local/bin/rsync.sh
在每個(gè)30分鐘的時(shí)候運(yùn)行一次.
4、安裝完成
完成以上配置后, rsync的服務(wù)器端和客戶端的配置就已經(jīng)完成,簡(jiǎn)單的文件定時(shí)同步基本能夠?qū)崿F(xiàn)了.在 rsync 的官方網(wǎng)站上 http://rsync.samba.org/ 有更多的例子和文檔可以參考.希望大家能通過本例,對(duì)rsync有大至的了解后,能夠去看那些文檔,這樣能夠更全面的使用rsync.
注意事項(xiàng)
1、 一般情況下 Linux 服務(wù)器版都已經(jīng)安裝了rsync。
2、 安裝rsync之前務(wù)必確定系統(tǒng)是否已安裝了C編譯器。否則安裝無法繼續(xù)。
3、 rsync的安裝必須是root用戶。
4、 rsyncd.conf文件的權(quán)限必須只有root能讀、寫,即 chmod 600 rsyncd.conf
5、 如果使用密碼文件,密碼文件的權(quán)限屬性也只能是600
6、 一個(gè)rsyncd.conf 文件可以配置多個(gè)備份模塊,每個(gè)模塊可以定義允許訪問的ip(hosts allow)地址以及不能訪問的ip(hosts deny)具體參考rsync網(wǎng)站的rsyncd.conf說明文檔。
- 使用cwRsync實(shí)現(xiàn)windows下服務(wù)器文件定時(shí)同步備份(附錯(cuò)誤處理方法)
- Linux 用cp和rsync同步文件時(shí)跳過指定目錄的方法
- inotify-tools+rsync實(shí)時(shí)同步文件的配置方法
- rsync 同步錯(cuò)誤 cwrsync rsync error rsync error: some files/attrs were not transferred 解決方法
- RSync實(shí)現(xiàn)文件同步備份配置詳解
- rsync相對(duì)于其他同步工具的優(yōu)缺點(diǎn)介紹
- 在Windows中配置Rsync同步文件的方法
- windows下文件同步工具 CwRsync 4.0.2 安裝配置方法(圖文)
- rsync 只同步目錄結(jié)構(gòu)不同步文件的方法
- 無需密碼通過ssh執(zhí)行rsync來同步文件的方法
相關(guān)文章
基于 ZooKeeper 搭建 Hadoop 高可用集群 的教程圖解
Hadoop 高可用 (High Availability) 分為 HDFS 高可用和 YARN 高可用,兩者的實(shí)現(xiàn)基本類似,但 HDFS NameNode 對(duì)數(shù)據(jù)存儲(chǔ)及其一致性的要求比 YARN ResourceManger 高得多,所以它的實(shí)現(xiàn)也更加復(fù)雜,下面給大家詳細(xì)介紹,感興趣的一起看看吧2019-06-06
常見數(shù)據(jù)庫安全加固及測(cè)評(píng)(MySQL|MongoDB|Oracle)
數(shù)據(jù)庫安全加固是確保數(shù)據(jù)庫安全性的關(guān)鍵步驟,它遵循一系列原則和實(shí)施方法,以防止未授權(quán)訪問、數(shù)據(jù)泄露和其他安全威脅,這篇文章主要介紹了常見數(shù)據(jù)庫安全加固及測(cè)評(píng)(MySQL|MongoDB|Oracle),需要的朋友可以參考下2024-07-07
iptables如何配置NAT實(shí)現(xiàn)端口轉(zhuǎn)發(fā)
這篇文章主要介紹了iptables如何配置NAT實(shí)現(xiàn)端口轉(zhuǎn)發(fā),本文給大家介紹的非常詳細(xì),感興趣的朋友跟隨小編一起看看吧2024-06-06

