linux/centos rsync安裝配置教程(實測通過(guò))
一(yī)、服務器端配置:
# yum -y install xinetd
# vi /etc/xinetd.d/rsync
將(jiāng)如下代(dài)碼
service rsync
{
disable = yes
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = –daemon
log_on_failure += USERID
}
中的(de) disable = yes 改(gǎi)成(chéng) disable = no
然後(hòu)啟動 xinetd
# /etc/init.d/xinetd start 或 service xinetd restart
注意:如(rú)果服務(wù)器(qì)上裝有防火牆記(jì)得要打(dǎ)開(kāi)端口,默認端口(kǒu)是873
# telnet 127.0.0.1 873
Trying 127.0.0.1...
telnet: connect to address 127.0.0.1: Connection refused
# iptables -A INPUT -s 192.168.0.0/255.255.255.0 -p tcp -m tcp --dport 873 -j ACCEPT
# iptables -A INPUT -p tcp -m tcp --dport 873 -j DROP
# vi /etc/rsyncd.conf (這個文件如果不(bú)存在自己創建)
#Global Settings
uid = root #以什麽(me)身份運行rsync
gid = root
use chroot = no #不使用chroot
max connections = 20 #最大連接數
secrets file = /etc/rsyncd.secrets #密碼(mǎ)文件位置,認證文件設置,設(shè)置用(yòng)戶名和密碼
log file = /var/log/rsyncd.log #指定rsync的日誌文件,而(ér)不(bú)將(jiāng)日誌發(fā)送給syslog
pid file = /var/run/rsyncd.pid #指(zhǐ)定(dìng)rsync的pid文(wén)件
lock file = /var/run/rsync.lock #指定支持max connections參數的鎖文件,默認值是/var/run/rsyncd.lock
comment = hello world
#motd file = /etc/rsyncd.motd #歡(huān)迎信息文件名稱(chēng)和存放位置(zhì)(此文件沒有,可以自行(háng)添加)
[backup] # 這裏是認證的模(mó)塊名(míng),在client端需要指定
path = /titan24/www/repos # 需要做鏡像的目錄
auth users = rsync # 授(shòu)權帳號。認證的(de)用(yòng)戶名,如果沒(méi)有這行,則表明是匿(nì)名(míng),多個用戶用,分隔
read only = no # yes隻讀 值為NO意思為可讀(dú)可寫(xiě)模(mó)式,數據恢複用NO
hosts allow = 192.168.3.128 #允許訪問的服(fú)務(wù)器(qì)IP
hosts deny = * #黑名單(dān)
list = true # 允許列文件(jiàn)
#ignore errors # 可以忽略一些(xiē)無關的IO錯誤
#exclude = cache/111/ cache/222/ #忽略的目(mù)錄(lù)
# vi /etc/rsyncd.secrets (設置訪(fǎng)問(認證)的用戶名(míng)密(mì)碼)
rsync:111111 #用(yòng)戶名:密碼
給文(wén)件正確的權限
# chown root:root /etc/rsyncd.secrets
# chmod 600 /etc/rsyncd.secrets
二、client 端進行同步
客戶端默(mò)認好像(xiàng)已經裝(zhuāng)了(le)rsync,沒有的話(huà)裝下:
# yum -y install rsync
執行異步(bù)同步操作:
/usr/bin/rsync -avz --progress
# crontab -e #(可以(yǐ)定時(shí)每(měi)三分鍾同步一次文件)
*/3
下(xià)麵這個命令完整一點:
#vi /etc/rsyncd.pas
加入密碼(mǎ)
rsyncofpass
注意(yì),客戶(hù)端的(de)密碼文(wén)件隻需(xū)要密碼,而不需要用戶名!
更改文(wén)件權限:
#chmod 0600 /etc/rsyncd.pas
#rsync -vzrtopgu --progress --delete --password-file=/etc/rsyncd.pas
這個命(mìng)令行中-vzrtopg裏的v是verbose,
z是壓縮傳輸,
r是recursive,
topg都是保持(chí)文(wén)件(jiàn)原有屬性如屬主、時間的參數。
u是隻同(tóng)步已經(jīng)更新的文件,避免沒有更(gèng)新的文件被(bèi)重複更新一次,不(bú)過要注意(yì)兩者機(jī)器的時(shí)鍾的同步(bù)。
–progress是(shì)指顯示出詳細的進度情況,
–delete是指(zhǐ)如果服(fú)務器端刪除(chú)了這一文件,那麽客戶端也相應把(bǎ)文件刪除(chú),保持(chí)真(zhēn)正的(de)一致。
後 麵的rsync_user@192.168.0.2::rsync_module_name1中,之後的(de)rsync_module_name1是模塊名(míng), 也就(jiù)是在/etc/rsyncd.conf中自定義的名稱,rsync_user是指定模塊中指定的(de)可以同步的用(yòng)戶名。
最後的(de)/www是(shì)備份到本地的目錄名(míng)。
在(zài)這裏(lǐ)麵(miàn),還可以用-e ssh的(de)參數建立起加密的連接。
可以用(yòng)–password-file=/password/path/file來指定密碼文件,這(zhè)樣(yàng)就可以在腳本中使用而無(wú)需交互式(shì)地輸入驗證密(mì)碼了,這裏需要注意的(de)是(shì)這份密碼文件權限屬性(xìng)要(yào)設得隻有屬主可讀。
#/usr/local/rsync/bin/rsync -vzrtopg –progress –delete rsync_user@192.168.0.2::rsync_module_name1/tmp/
Password:
或者你也可以製定password文件(jiàn)
由於需要係統crontab執行,所以這裏采用讀入密碼文件的(de)方式,
這個時(shí)候(hòu)就成功了。
請繼續瀏覽下一頁(yè):同步命令(lìng)說明
---------------------------------同步命令說明:---------------------------------
1 顯示(shì)目錄內(nèi)容
命令
——
a) rsync
b) rsync -r
c) rsync jack@192.168.0.1::
d) rsync ssh_user@192.168.0.1:
命令說明
———
a) 顯示目錄內容(第一層)
b) 遞歸顯示目錄內容(róng)
c) 顯示遠程主機目錄內容
*注1:端口模(mó)式, 基於rsync用(yòng)戶(hù)的身份驗證
*注2:rsync server上的目錄必(bì)須具有xx7的(de)權(quán)限(xiàn).
d) 查看遠程主機目錄內容
*注1:remote shell模(mó)式, 通過ssh連(lián)接的基於係統本地用戶(hù)的身份驗證
*注(zhù)2:這(zhè)裏(lǐ)隻(zhī)使(shǐ)用了一個冒號(:),同時(shí)用戶名(míng)是遠程主機的ssh 用戶,密碼也(yě)是(shì)ssh用戶對應的密碼。
*注3:使用””,則列(liè)出文件(jiàn)夾本身的信息。若要列出文件夾內容,應使用”/”。
參(cān)數說明
———
-r 對目錄進行遞歸操作
2 本地(dì)目錄之(zhī)間同步
命(mìng)令(lìng)
——
a) rsync -av –progress / *** 注意(/) ***
b) rsync -av –progress
c) rsync -avu –progress –delete /
d) rsync -av –progress –temp-dir=/tmp /
命(mìng)令說明(míng)
———
a) 同步src-dir目錄下所有文件到dst-dir目錄下(xià)
b) 同(tóng)步src-dir目錄下所有文件(jiàn)到dst-dir/src-dir目(mù)錄下
c) 對src-dir目(mù)錄內容向(xiàng)dst-dir目(mù)錄下進行差(chà)異更新,有增加/更新則(zé)添加替換(huàn),有減少則(zé)對(duì)其(qí)刪減
d) 比a)多了–temp-dir=/tmp,即指定/tmp為臨時(shí)交換區(qū),這樣可以避免因目標目錄空間不夠引起的無(wú)法同步文件的錯誤。
參數說明
———
-a 相當(dāng)於 -rlptgoD 的集合
-u 等同於(yú) –update,在目標文(wén)件比(bǐ)源文(wén)件新(xīn)的情(qíng)況下(xià)不更(gèng)新
-v 顯示同步的文(wén)件
–progress 顯示文件同步時的百分比進度、傳輸速率
–delete 刪除目標目錄中(zhōng)多於源目錄(lù)的文(wén)件
3 異地主(zhǔ)機(jī)之間同步
命令
——
a) rsync -avz –progress jack@192.168.0.1::/
b) rsync -avz –progress jack@192.168.0.1::/ –password-file=/home/jack/rsync.jack
c) rsync -avuz –progress –delete jack@192.168.0.1::/ –password-file=/home/jack/rsync.jack
d) rsync -avz –progress jack@192.168.0.1::/
命令說明(míng)
———
a) 同步(bù)本(běn)地目錄的內容到遠程(chéng)主機192.168.0.1的目錄下(xià),jack是(shì)rsync數(shù)據庫(kù)用戶(參見3. /etc/rsync.secrets)
b) 通過自動讀取用戶密碼而實現非交互登錄文件同步
c) 較b)多了-u和–delete
d) 同步遠程主機內容到本地目錄
關鍵詞:linux,centos
閱(yuè)讀本(běn)文後您有(yǒu)什麽(me)感想(xiǎng)? 已有 人給出評價!
- 0
- 0
- 0
- 0
- 0
- 0