400-638-8808
|
微信公眾號




穩(wěn)定可靠 永不間斷

海外收發(fā) 暢通無阻

協同辦公 資源管理

超大郵件 超級功能

智能反垃圾郵件技術
易管理 免維護

一、rsync概述
rsync是linux系統下的數據鏡像備份工具,使用快速增量備份工具remote sync可以遠程同步,可以在不同主機之間進行同步,可以實現全量備份與增量備份,保持鏈接和權限,且采用優(yōu)化的同步算法,傳輸前執(zhí)行壓縮,因此非常適合用于架構集中式的備份或異地備份等應用。同時rsync支持本地復制,或者與其他ssh、rsync主機同步。
二、rsync特性和有點
1)可以鏡像保存整個目錄樹和文件系統
2)可以很容易做到保持原來文件的權限、時間、軟硬鏈接等等。
3)無須特殊權限即可安裝
4)快速:第一次同步時rsync復制全部內容,但在下一次值傳輸修改過的內容
5)壓縮傳輸:rysnc在傳輸的過程中可以實行壓縮及解壓縮操作,可以使用更少的帶寬
6)安全:可以使用scp、ssh等方式來進行文件傳輸
7)支持匿名傳輸,以方便進行網站鏡像
8)選擇性保持:符號鏈接、硬鏈接、文件屬性、權限、時間等
三、rync原理
1、運行模式和端口
1)采用C/S模式(實際上是一個點到點的傳輸,直接使用rsync命令即可完成)
2)rsync監(jiān)聽的端口是:873
2、四個名字的解釋
1)發(fā)起端:負責發(fā)起rsync同步操作的客戶端叫做發(fā)起端。通知服務器我要備份你的數據
2)備份源:負責響應來自客戶端rsync同步操作的服務器叫做備份源,需要備份的服務器
3)服務端:運行rsyncd服務,一般來說,需要備份的服務器
4)客戶端:存放備份數據。
3、數據同步方式
1)推push:一臺主機負責吧數據傳送給其他主機,服務器開銷很大,比較適合后端服務器少的情況
2)拉pull:所有主機定時去找一臺主機拉數據,可能就會導致數據緩慢
推:目的主機配置為rsync服務器,源主機周期性的使用rysnc命令把要同步的目錄推過去(需要備份的機器是客戶端,存儲備份的機器是服務端)
拉:源主機配置為rysnc服務器,目的主機周期性的使用rync命令把要同步的目錄拉過來(需要備份的機器是服務端,存儲備份的機器是客戶端)
四、rsync服務安裝
1、由于rsync服務依賴xinetd服務,是使用超級服務來管理的,因此需要在目標機器上安裝xined、rsync服務端
兩臺服務器都需要安裝:
xuegod200是源主機;xuegod210是目標主機
2、rsynv命令選項
(1) -a:–archive archive mode 權限保存模式,相當于 -rlptgoD 參數,存檔,遞歸,保持屬性等。
(2) -r:–recursive 復制所有下面的資料,遞歸處理。
(3) -p:–perms 保留檔案權限,文件原有屬性。
(4) -t:–times 保留時間點,文件原有時間。
(5) -g:–group 保留原有屬組。
(6) -o:–owner 保留檔案所有者(root only)。
(7) -D:–devices 保留device資訊(root only)。
(8) -l:–links 復制所有的連接,拷貝連接文件。
(9) -z:–compress 壓縮模式,當資料在傳送到目的端進行檔案壓縮。
(10) -H:–hard-links 保留硬鏈接文件。
(11) -A:–acls 保留ACL屬性文件,需要配合–perms。
(12) -P:-P參數和 --partial --progress 相同,只是為了把參數簡單化,表示傳進度。
(13) --version:輸出rsync版本。
(14) -v:–verbose 復雜的輸出信息。
(15) -u:–update 僅僅進行更新,也就是跳過已經存在的目標位置,并且文件時間要晚于要備份的文件,不覆蓋新的文件。
(16) --port=PORT:定義rsyncd(daemon)要運行的port(預設為tcp 873)。
(17) --delete:刪除那些目標位置有的文件而備份源沒有的文件。
(18) --password-file=FILE :從 指定密碼文件中獲取密碼。
(19) --bwlimit=KBPS:限制 I/O 帶寬。
(20) --filter “-filename”:需要過濾的文件。
(21) --exclude=filname:需要過濾的文件。
(22) --progress:顯示備份過程。
注釋:通常常用的選項 –avz
-z的命令一般用在小文件進行壓縮,數據量比較大的文件在傳輸的過程中就比較慢,如果再壓縮傳輸會更加慢。所以根據需求來選擇是否需要加這個參數
五、使用rsynv備份數據
例1:對xuegod63網站根目錄/var/www/html目錄備份到xuegod64的/web-back
服務器:xuegod63
客戶端:xuegod64
步驟:
1、建立測試用戶并增加密碼(兩臺主機都需要操作)
2、創(chuàng)建/var/www/html目錄,使用acl命令不修改原有屬組和屬主的情況下,給目錄增加rget1的rwx
3、cp備份數據
4、到xuegod64上創(chuàng)建備份目錄 并授權rget1用戶權限
5、使用rsync命令拷貝數據
使用rget1用戶來進行拷貝
6、使用虛擬用戶備份數據
1、rsync配置文件參數的詳解
注釋:centos7安裝命令后自動生成,centos6安裝命令后需要手動創(chuàng)建配置文件,不會自動生成
1)rsyncd.conf配置文件:
配置文件分為兩部分:全局參數、模塊參數。
全局參數:對rsync服務器生效,如果模塊參數和全局參數沖突,沖突的地方模塊參數最終生效。
模塊參數:定義需要通過rsync輸出的目錄定義的參數。
2)全局參數模塊:
port #指定后臺程序使用的端口號,默認為873。
uid #該選項指定當該模塊傳輸文件時守護進程應該具有的uid,配合gid選項使用可以確定哪些可以訪問怎么樣的文件權限,默認值是" nobody"。
gid #該選項指定當該模塊傳輸文件時守護進程應該具有的gid。默認值為" nobody"。
max connections #指定該模塊的最大并發(fā)連接數量以保護服務器,超過限制的連接請求將被告知隨后再試。默認值是0,也就是沒有限制。
lock file #指定支持max connections參數的鎖文件,默認值是/var/run/rsyncd.lock。
motd file #" motd file"參數用來指定一個消息文件,當客戶連接服務器時該文件的內容顯示給客戶,默認是沒有motd文件的。
log file #" log file"指定rsync的日志文件,而不將日志發(fā)送給syslog。
pid file #指定rsync的pid文件,通常指定為“/var/run/rsyncd.pid”,存放進程ID的文件位置。
hosts allow = #單個IP地址或網絡地址,允許訪問的客戶機地址。
3) 常見的模塊參數:
主要是定義服務器哪個要被同步輸出,其格式必須為“ [ 共享模塊名 ]” 形式,這個名字就是在 rsync 客戶端看到的名字,其實很像 samba 服務器提供的共享名。而服務器真正同步的數據是通過 path 來指定的。
|Comment| | #給模塊指定一個描述,該描述連同模塊名在客戶連接得到模塊列表時顯示給客戶。默認沒有描述定義。
path #指定該模塊的供備份的目錄樹路徑,該參數是必須指定的。
read only #yes為只允許下載,no為可以下載和上傳文件到服務器。
exclude #用來指定多個由空格隔開的多個文件或目錄(相對路徑),將其添加到exclude列表中。這等同于在客戶端命令中使用―exclude或----filter來指定某些文件或目錄不下載或上傳(既不可訪問)
exclude from #指定一個包含exclude模式的定義的文件名,服務器從該文件中讀取exclude列表定義,每個文件或目錄需要占用一行
include #用來指定不排除符合要求的文件或目錄。這等同于在客戶端命令中使用–include來指定模式,結合include和exclude可以定義復雜的exclude/include規(guī)則。
include from #指定一個包含include模式的定義的文件名,服務器從該文件中讀取include列表定義。
auth users #該選項指定由空格或逗號分隔的用戶名列表,只有這些用戶才允許連接該模塊。這里的用戶和系統用戶沒有任何關系。如果" auth users"被設置,那么客戶端發(fā)出對該模塊的連接請求以后會被rsync請求challenged進行驗證身份這里使用的challenge/response認證協議。用戶的名和密碼以明文方式存放在" secrets file"選項指定的文件中。默認情況下無需密碼就可以連接模塊(也就是匿名方式)。
secrets file #該選項指定一個包含定義用戶名:密碼對的文件。只有在" auth users"被定義時,該文件才有作用。文件每行包含一個username:passwd對。一般來說密碼最好不要超過8個字符。沒有默認的secures file名,注意:該文件的權限一定要是600,否則客戶端將不能連接服務器。
hosts allow #指定哪些IP的客戶允許連接該模塊。定義可以是以下形式:
單個IP地址,例如:192.167.0.1,多個IP或網段需要用空格隔開。
整個網段,例如:192.168.0.0/24,也可以書寫為192.168.0.0/255.255.255.0
“*”則表示所有,默認是允許所有主機連接。
hosts deny #指定不允許連接rsync服務器的機器,可以使用hosts allow的定義方式來進行定義。默認是沒有hosts deny定義。
list #該選項設定當客戶請求可以使用的模塊列表時,該模塊是否應該被列出。如果設置該選項為false,可以創(chuàng)建隱藏的模塊。默認值是true。
timeout #通過該選項可以覆蓋客戶指定的IP超時時間。通過該選項可以確保rsync服務器不會永遠等待一個崩潰的客戶端。超時單位為秒鐘,0表示沒有超時定義,這也是默認值。對于匿名rsync服務器來說,一個理想的數字是600
2、例:用配置文件定義目錄輸出
1)修改rsync配置文件
2)創(chuàng)建相關文件并修改文件權限
創(chuàng)建提示信息文件
創(chuàng)建密碼文件
3)啟動服務(啟動rsync和xinetd服務)
4)測試
語法:rsync 選項 用戶名@備份源服務器ip::共享模塊名 目標目錄
5)密碼處理
新建一個文件保存好密碼,然后在rsync命令中使用–password-file指定次文件即可
6)腳本實現定時自動備份
7)定義計劃任務實現定時備份
注釋:
1、address監(jiān)聽的地址,必須是rsync服務端的地址
2、創(chuàng)建的密碼文件和登錄提示文件的權限必須修改為600,不然執(zhí)行rsync命令會報錯
六、rsync+sersync實現數據實時同步
一臺裝sersync、一臺裝rsync服務
sersync服務器(數據源、源主機):192.168.11.200
sysnc客戶端(備份端、目標機器):192。168.11.210
1、安裝sersync安裝包(上傳rpm包到服務器,然后進行解壓縮)
注意:sersync是一個二進制安裝包,不需要進行安裝,直接tar解壓后,可以直接使用
2、配置sersync
2.1 修改配置文件中的24–28行,如下所示。
2.2 修改31–34行,認證部分(rsync密碼認證)
2.3 在服務端創(chuàng)建一個密碼文件,因為配置文件需要調用密碼文件
2.4 開啟serysnc守護進程同步數據
3、測試
在200的/var/www/html目錄下增加、刪除或修改目錄文件,查看210的/web-back/目錄的變化
4、設置sersync監(jiān)控開機自動執(zhí)行
5、添加腳本監(jiān)控sersync是否正常運行
6、將腳本添加到定時任務,定義檢查sersync是否正常
來源:https://blog.csdn.net/weixin_41843699/article/details/90246940
天下數據提供Rsync同步備份服務器數據解決方案,詳情咨詢客服400-638-8808,官網m.51huadong.com
天下數據手機站 關于天下數據 聯系我們 誠聘英才 付款方式 幫助中心 網站備案 解決方案 域名注冊 網站地圖
天下數據18年專注海外香港服務器、美國服務器、海外云主機、海外vps主機租用托管以及服務器解決方案-做天下最好的IDC服務商
《中華人民共和國增值電信業(yè)務經營許可證》 ISP證:粵ICP備07026347號
朗信天下發(fā)展有限公司(控股)深圳市朗玥科技有限公司(運營)聯合版權
深圳總部:中國.深圳市南山區(qū)深圳國際創(chuàng)新谷6棟B座10層 香港總部:香港上環(huán)蘇杭街49-51號建安商業(yè)大廈7樓
7×24小時服務熱線:4006388808香港服務電話:+852 67031102
本網站的域名注冊業(yè)務代理北京新網數碼信息技術有限公司的產品