rsync 安裝使用詳解
RSYNC軟件介紹:
rsync是類unix系統(tǒng)下的數(shù)據(jù)鏡像備份工具,從軟件的命名上就可以看出來了——remote sync。它的特性如下:
可以鏡像保存整個目錄樹和文件系統(tǒng)。
可以很容易做到保持原來文件的權(quán)限、時間、軟硬鏈接等等。
無須特殊權(quán)限即可安裝。
優(yōu)化的流程,文件傳輸效率高。
可以使用rcp、ssh等方式來傳輸文件,當(dāng)然也可以通過直接的socket連接。
支持匿名傳輸,以方便進行網(wǎng)站鏡象。
軟件下載
rysnc的主頁地址為:
http://rsync.samba.org/
目前最新版本為2.4.6。可以選擇從原始網(wǎng)站下載:
http://rsync.samba.org/ftp/rsync/
。也可以選擇從本站下載:rsync 2.4.6
一、下載、安裝rsync
#tar zxvf rsync-2.6.9.tar.gz
#cd rsync-2.6.9
#./configure --prefix=/usr/local/rsync
#make
#make install
**** 正常安裝RH的時候是帶RSYNC的,運行文件放在/usr/bin/rsync
二、配置rsync server
1、啟動RSYNC
#vi /etc/xinetd.d/rsync
把原來的YES改成NO
service rsync
{
disable = no
socket_type = stream
wait = no
user = root
server = /usr/bin/rsync
server_args = --daemon
log_on_failure += USERID
}
隨系統(tǒng)啟動RSYNC
#chkconfig rsync on
2、配置/etc/rsyncd.conf(需要手動生成)
rsyncd.conf的參數(shù)寫在上邊就是全局參數(shù)和寫在模塊里的就是模塊參數(shù)
#vi /etc/rsyncd.conf
全局參數(shù)
uid = root //運行RSYNC守護進程的用戶
gid = root //運行RSYNC守護進程的組
use chroot = no //不使用chroot
max connections = 4 // 最大連接數(shù)為4
strict modes =yes //是否檢查口令文件的權(quán)限
port = 873 //默認(rèn)端口873
模塊參數(shù)
[backup] //這里是認(rèn)證的模塊名,在client端需要指定
path = /home/backup/ //需要做鏡像的目錄,不可缺少!
comment = This is a test //這個模塊的注釋信息
ignore errors //可以忽略一些無關(guān)的IO錯誤
read only = yes // 只讀
list = no //不允許列文件
auth users = hening //認(rèn)證的用戶名,如果沒有這行則表明是匿名,此用戶與系統(tǒng)無關(guān)
secrets file = /etc/rsync.pas //密碼和用戶名對比表,密碼文件自己生成
hosts allow = 192.168.1.1,10.10.10.10 //允許主機
hosts deny = 0.0.0.0/0 //禁止主機
#transfer logging = yes
注釋:下面這些綠色文件是安裝完RSYNC服務(wù)后自動生成的文件
pid file = /var/run/rsyncd.pid //pid文件的存放位置
lock file = /var/run/rsync.lock //鎖文件的存放位置
log file = /var/log/rsyncd.log //日志記錄文件的存放位置
3、配置rsync密碼(在上邊的配置文件中已經(jīng)寫好路徑) /etc/rsync.pas(名字隨便寫,只要和上邊配置文件里的一致即可),格式(一行一個用戶)
賬號:密碼
#vi /etc/rsync.pas
例子:
Hening:111111
權(quán)限:因為rsync.pas存儲了rsync服務(wù)的用戶名和密碼,所以非常重要。要將rsync.pas設(shè)置為root擁有, 且權(quán)限為600。
#cd /etc
#chown root.root rsync.pas
#chmod 600 rsync.pas
3.rsyncd.motd(配置歡迎信息,可有可無)
# vi /etc/rsyncd.motd
rsyncd.motd記錄了rsync服務(wù)的歡迎信息,你可以在其中輸入任何文本信息,如:
Welcome to use the rsync services!
4、讓配置生效
#service xinetd restart
三、啟動rsync server
RSYNC服務(wù)端啟動的兩種方法
1、啟動rsync服務(wù)端(獨立啟動)
#/usr/bin/rsync –daemon
2、啟動rsync服務(wù)端 (有xinetd超級進程啟動)
# /etc/rc.d/init.d/xinetd reload
四:加入rc.local
在各種操作系統(tǒng)中,rc文件存放位置不盡相同,可以修改使系統(tǒng)啟動時把rsync --daemon加載進去。
#vi /etc/rc.local
加入一行/usr/bin/rsync --daemon
五.檢查rsync
#netstat -a | grep rsync
tcp 0 0 0.0.0.0:873 0.0.0.0:* LISTEN
六.配置rsync client
1、設(shè)定密碼
#vi /etc/rsync.pas
111111
修改權(quán)限
#cd /etc
#chown root.root rsync.pas
#chmod 600 rsync.pas
2、client連接SERVER
從SERVER端取文件
/usr/bin/rsync -vzrtopg --progress --delete hening@192.168.0.217::backup /home/backup --password-file=/etc/rsync.pas
向SERVER端上傳文件
/usr/bin/rsync -vzrtopg --progress --password-file=/root/rsync.pas /home/backup hening@192.168.0.217::backup
這個命令將把本地機器/home/backup目錄下的所有文件(含子目錄)全部備份到RSYNC SERVER(172.20.0.6)的backup模塊的設(shè)定的備份目錄下。
請注意如果路徑結(jié)束后面帶有"/",表示備份該目錄下的東東,但不會創(chuàng)建該目錄,如不帶"/"則創(chuàng)建該目錄。
RSYNC用法:
rsync [OPTION]... [USER@]HOST::SRC [DEST] #從RSYNC SERVER備份文件到本地機器
rsync [OPTION]... SRC [SRC]... [USER@]HOST::DEST #從本地機器備份文件到RSYNC SERVER
3、自動運行
1)vi /usr/local/rsync/time.sh //制作腳本文件
把下邊的內(nèi)容復(fù)制進去
#!/bin/bash
/usr/bin/rsync -vzrtopg --progress --delete hening@192.168.0.217::backup /home/backup --password-file=/etc/rsync.pas
2) crontab -e
加入55 * * * * /usr/local/rsync/time.sh //每55分運行一次time.sh腳本文件
五 iptables
iptables -A INPUT -p tcp -s ! 11.22.33.44 --dport 873 -j DROP
如此, 只有 11.22.33.44 這個 client IP 能進入這臺 rsync server.
命令介紹:-rvlHpogDtS
rsync命令參數(shù)
-v表示verbose詳細顯示
-z表示壓縮
-r表示recursive遞歸
-t表示保持原文件創(chuàng)建時間
-o表示保持原文件屬主
-p表示保持原文件的參數(shù)
-g表示保持原文件的所屬組
-a存檔模式
-P表示代替-partial和-progress兩者的選項功能
-e ssh建立起加密的連接。
--partial阻止rsync在傳輸中斷時刪除已拷貝的部分(如果在拷貝文件的過程中,傳輸被中斷,rsync的默認(rèn)操作是撤消前操作,即從目標(biāo)機上
刪除已拷貝的部分文件。)
--progress是指顯示出詳細的進度情況
--delete是指如果服務(wù)器端刪除了這一文件,那么客戶端也相應(yīng)把文件刪除,保持真正的一致。
--exclude不包含/ins目錄
--size-only 這個參數(shù)用在兩個文件夾中的差別僅是源文件夾中有一些新文件,不存在重名且被修改過的文件,因為這種文件有可能會因為內(nèi)容被修改可大小一樣,而被略過。這個參數(shù)可以大大地提高同步的效率,因為它不需要檢查同名文件的內(nèi)容是否相同。
--password-file來指定密碼文件,內(nèi)容包含server端指定認(rèn)證用戶的密碼。
這樣就可以在腳本中使用而無需交互式地輸入驗證密碼了,這里需要注意的是這份密碼文件權(quán)限屬性要設(shè)得只有屬主可讀。
hening@192.168.0.217::backup
hening是指server端指定認(rèn)證的用戶
192.168.0.217是指服務(wù)器端的ip
::backup 表示服務(wù)器端需要同步的模塊名稱;
/home/quack/backup/$DATE是同步后的文件指存放在本機的目錄地址。
/var/log/rsync.$DATE是同步后的日志文件存放在本機的目錄地址。
注意
不放/ 則目錄名也包含mirror,放 / 則只有目錄里面的東西mirror了
實例總結(jié)流程:
1.配置主控端
# vim /etc/rsyncd.conf
###################################
uid = nobody
gid = nobody
use chroot = no
max connections = 4
stirict modes = yes
port = 873
[backup]
path = /usr/local/test/
comment = This is a test
ignore errors
read only = false
list = no
hosts allow = 192.168.0.11
hosts deny = 0.0.0.0/0
auth users = bakweb
secrets file =/etc/rsyncd.pw
pid file = /var/run/rsyncd.pid
lock file = /var/run/rsync.lock
log file = /var/log/rsyncd.log
###################################
# vim /etc/rsyncd.pw
###################################
bakweb:123456
###################################
# cd /etc
# chown root.root rsyncd.pw
# chmod 600 rsyncd.pw
啟動rsync server
# rsync --daemon
查看端口873是否打開
加入啟動
# echo "rsync --daemon" >>/etc/rc.local
給/usr/local/test目錄寫權(quán)限
# chown -R nobody.nobody /usr/local/test
# chmod -R 770 /usr/local/test
主控配置完成
2.客戶端配置
# vim /etc/rsyncd.pw
####################################
123456
####################################
# chown root.root /etc/rsyncd.pw
# chmod 600 /etc/rsyncd.pw
再使用命令直接更新到服務(wù)器數(shù)據(jù)文件就不需要密碼
rsync -vzrtopg --progress --password-file=/etc/rsyncd.pw /usr/local/bin/ bakweb@192.168.0.10::backup
注意:
1.這里的backup名字為主控conf配置里面的[backup],一定要同名
2.bakweb為主控conf配置里面的bakweb,可以隨意命名,不是系統(tǒng)用戶
相關(guān)文章
windows+apache+mod_python配置django運行環(huán)境
環(huán)境:windows2008, apache2.2, python2.5, mod_python-3.3.1.win32-py2.5-Apache2.2, django-1.0.2_final2012-06-06CentOS與Ubuntu哪個更適合做服務(wù)器系統(tǒng)
對于服務(wù)器而言,有兩個主流的 Linux 發(fā)行版,那就是 CentOS 和 Ubuntu。但如何從這兩個之中選擇,這是擺在管理員、初學(xué)者和專業(yè)人士面前的主要問題。在對這兩個(和更多)發(fā)行版有了一定的經(jīng)驗之后,我們決定對這兩個發(fā)行版用于服務(wù)器時做個比較2017-04-04DNS、DHCP的備份恢復(fù)bat(批處理自動實現(xiàn))
現(xiàn)在的服務(wù)器上運行了很多系統(tǒng)服務(wù),雖然中間沒有出過什么問題,但是還是怕,要是出了問題,就是好幾天的時間沒有了,累4人的事情啊。所以要把什么東西都backup一下2016-01-01Hadoop計數(shù)器的應(yīng)用以及數(shù)據(jù)清洗
今天小編就為大家分享一篇關(guān)于Hadoop計數(shù)器的應(yīng)用以及數(shù)據(jù)清洗,小編覺得內(nèi)容挺不錯的,現(xiàn)在分享給大家,具有很好的參考價值,需要的朋友一起跟隨小編來看看吧2019-01-01服務(wù)器錯誤碼500 501 502 503 504 505 詳解
這篇文章主要介紹了服務(wù)器錯誤碼500 501 502 503 504 505 詳解,需要的朋友可以參考下2015-07-07git沖突解決_動力節(jié)點Java學(xué)院整理
這篇文章主要介紹了git沖突解決,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2017-08-08基于 ZooKeeper 搭建 Hadoop 高可用集群 的教程圖解
Hadoop 高可用 (High Availability) 分為 HDFS 高可用和 YARN 高可用,兩者的實現(xiàn)基本類似,但 HDFS NameNode 對數(shù)據(jù)存儲及其一致性的要求比 YARN ResourceManger 高得多,所以它的實現(xiàn)也更加復(fù)雜,下面給大家詳細介紹,感興趣的一起看看吧2019-06-06keepalived安裝配置(服務(wù)器主備、負(fù)載均衡)詳解
這篇文章主要介紹了keepalived安裝配置(服務(wù)器主備、負(fù)載均衡),本文給大家介紹的非常詳細,對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友可以參考下2023-11-11