rsync(remote synchronize) 是乙個遠端資料同步工具,可以使用「rsync演算法」同步本地和遠端主機之間的檔案。rsync的好處是只同步兩個檔案不同的部分,相同的部分不在傳遞。類似於增量備份,這使的在伺服器傳遞備份檔案或者同步檔案,比起scp工具要省好多時間。
sudo apt-get install rsync xinetd
啟動開啟rsync服務,修改如下的檔案vim /etc/default/rsync
rsync_enable=true #false改true
修改配置檔案sudo cp /usr/share/doc/rsync/examples/rsyncd.conf /etc #已預設安裝的軟體,預設不啟動的似乎都要這麼做
sudo vim /etc/rsyncd.conf
配置問價如下:# sample rsyncd.conf configuration file
# global options
#motd file=/etc/motd #登入歡迎資訊
#log file=/var/log/rsyncd #日誌檔案
# for pid file, do not use /var/run/rsync.pid if
# you are going to run rsync out of the init.d script.
pid file=/var/run/rsyncd.pid
#指定rsync傳送日誌訊息給syslog時的訊息級別,常見的訊息級別是:uth, authpriv, cron, daemon, ftp, kern, lpr, mail, news, security, sys-log, user, uucp, local0, local1, local2, local3,local4, local5, local6和local7。預設值是daemon。
#syslog facility=daemon
#自定義tcp選項,預設是關閉的
#socket options=
#以下是模組資訊,我們可以建立多個模組
# module options
[ftp]
comment = public archive #模組描述
path = /var/www/pub #需要同步的路徑
use chroot = yes #預設是yes|true,如果為true,那麼在rsync在傳輸檔案以前首先chroot到path引數指定的目錄下。這樣做的原因是實現額外的安全防護,但是缺點是需要root許可權,並且不能備份指向外部的符號連線指向的目錄檔案。
# max connections=10 #最大連線數
lock file = /var/lock/rsyncd #指定支援max connections引數的鎖檔案。
# the default for read only is yes...
read only = yes #唯讀選項
list = yes #客戶請求時可用模組時是否列出該模組
uid = nobody #設定該模組傳輸檔案時守護程序應該具有的uid
gid = nogroup #設定該模組傳輸檔案時守護程序應具有的gid,此項與uid配合可以確定檔案的訪問許可權
# exclude = #用來指定多個由空格隔開的多個模式列表,並將其新增到exclude列表中。這等同於在客戶端命令中使用--exclude來指定模式,不過配置檔案中指定的exlude模式不會傳遞給客戶端,而僅僅應用於伺服器。乙個模組只能指定乙個exlude選項,但是可以在模式前面使用"-"和"+"來指定是exclude還是include #這個我的理解是排除目錄中不需同步的檔案
# exclude from = #可以指定乙個包含exclude模式定義的檔名
# include = #與exclude相似
# include from = #可以指定乙個包含include模式定義的檔名
# auth users = #該選項指定由空格或逗號分隔的使用者名稱列表,只有這些使用者才允許連線該模組。這裡的使用者和系統使用者沒有任何關係。如果"auth users"被設定,那麼客戶端發出對該模組的連線請求以後會被rsync請求challenged進行驗證身份這裡使用的 challenge/response認證協議。使用者的名和密碼以明文方式存放在"secrets file"選項指定的檔案中。預設情況下無需密碼就可以連線模組(也就是匿名方式)
# secrets file = /etc/rsyncd.secrets #該檔案每行包含乙個username:password對,以明文方式儲存,只有在auth users被定義時,此選項才生效。同時我們需要將此檔案許可權設定為0600
strict modes = yes #該選項指定是否監測密碼檔案的許可權,如果該選項值為true那麼密碼檔案只能被rsync伺服器執行身份的使用者訪問,其他任何使用者不可以訪問該檔案。預設值為true
# hosts allow = #允許的主機
# hosts deny = #拒絕訪問的主機
ignore errors = no #設定rsync伺服器在執行delete操作時是否忽略i/o錯誤
ignore nonreadable = yes #設定rysnc伺服器忽略那些沒有訪問檔案許可權的使用者
# log format = %t: host %h (%a) %o %f (%l bytes). total %b bytes. #設定日誌格式
timeout = 600 #超時設定(秒)
refuse options = checksum dry-run #定義一些不允許客戶對該模組使用的命令選項列表
dont compress = *.gz *.tgz *.zip *.z *.rpm *.deb *.iso *.bz2 *.tbz #告訴rysnc那些檔案在傳輸前不用壓縮,預設已設定壓縮包不再進行壓縮
日誌格式選項列表:
%h: 遠端主機名
%a: 遠端ip位址
%l: 檔案長度字元數
%p: 該次rsync會話的程序id
%o: 操作型別:"send"或"recv"、」del.」
%f: 檔名
%p: 模組路徑
%m: 模組名
%t: 當前時間
%u: 認證的使用者名稱(匿名時是null)
%b: 實際傳輸的位元組數
%c: 當傳送檔案時,該欄位記錄該檔案的校驗碼
建立乙個密碼檔案
sudo vim /etc/rsyncd.secrets
內容為:liu_rsync:123
加許可權sudo chmod 0600 /etc/rsyncd.secrets
啟動rsyncsudo /etc/init.d/rsync start
然後執行如下命令rsync -vzrtopg --progress [email protected]::ftp . #.為當前目錄,在服務端touch乙個檔案,同步後就會出現,當然你也可以指定乙個位置比如/databk,需注意所建立的許可權!
rsync 遠端資料同步工具使用
rsync linux 安裝 emerge pv rsync rsync是乙個遠端資料同步工具,可通過lan wan快速同步多台主機間的檔案。rsync本來是用以取代rcp的乙個工具,它當前由 rsync.samba.org維護。1。伺服器安裝 一般系統自動安裝好,把它加入自動啟動。rc updat...
使用rsync支援遠端同步
很多時候,我們需要將一些大的檔案進行跨網傳輸,乙個檔案動不動幾十g,當你的頻寬資源緊張的時候,傳輸這樣幾個檔案會花10小時,甚至幾天。nc傳輸檔案,通過以下方法,將加快檔案傳輸,希望對大家有所幫助。環境 server1 源位址 server2 目標位址 需求 將server1上的某個目錄檔案拷貝到s...
rsync同步工具
linux rsync同步工具 1 rsync介紹 rsync是一款開源的 快速的 多功能的 可實現全量及增量的本地或遠端資料同步備份的優秀工具。rsync軟體適用於unix linux windows等多種作業系統平台。rsync和ssh帶的scp命令比較相似,但又優於scp命令的功能,scp每次...