[color=darkred][size=large][b]* rsync軟體介紹[/b][/size][/color]
rsync是類unix系統下的資料映象備份工具,它的特性如下:
- 可以映象儲存整個目錄樹和檔案系統。
- 可以很容易做到保持原來檔案的許可權、時間、軟硬鏈結等等。
- 無須特殊許可權即可安裝。
- 優化的流程,檔案傳輸效率高。
- 可以使用rcp、ssh等方式來傳輸檔案,當然也可以通過直接的socket連線。
- 支援匿名傳輸,以方便進行**鏡象。
tar zxvf rsync-3.0.8.tar.gz
cd rsync-3.0.8
./configure --prefix=/usr/local/rsync
make
make install
注:其實centos5.5預設都會安裝該軟體,如果不是特定版本需求,不必自行安裝。
[b][color=darkred][size=large]* rsync服務端配置[/size][/color][/b]
[size=medium][b]二、配置rsync server[/b][/size]
[b]1. 配置/etc/rsyncd.conf(需要手動建立乙個)[/b]
#全域性引數
uid = root #執行rsync守護程序的使用者
gid = root #執行rsync守護程序的組
use chroot = no #不使用chroot
max connections = 4 #最大連線數為4
strict modes =yes #是否檢查口令檔案的許可權
port = 873 #預設埠873
#模組引數 : 要同步的目錄等相關項說明。
[releases] #這裡是認證的模組名,在client端需要指定
path = /usr/local/releases/ #需要做映象的目錄,不可缺少!
comment = this is a test #這個模組的注釋資訊
ignore errors #可以忽略一些無關的io錯誤
read only = yes # 唯讀
list = no #不允許列檔案
auth users = coco #認證的使用者名稱,如果沒有這行則表明是匿名,此使用者與系統無關
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
[b]2、配置rsync密碼[/b]
上面配置如果說明了auth users和secrets file兩個選項,則需要配置scretes file項指定的檔案,內容如下(一行乙個使用者):
coco:2011
因為rsync.pas儲存了rsync服務的使用者名稱和密碼,所以非常重要。要將rsync.pas設定為root擁有, 且許可權為600。
cd /etc
chown root.root rsync.pas
chmod 600 rsync.pas
[size=medium][b]三、啟動rsync伺服器[/b][/size]
#/usr/local/rsync/bin/rsync --daemon
[size=medium][b]四.檢查rsync[/b][/size]
netstat -a | grep rsync
tcp 0 0 *:rsync *:* listen
tcp 0 0 *:rsync *:* listen
[b][color=darkred][size=large]* rsync客戶端配置[/size][/color][/b]
[size=medium][b]一.配置rsync client [/b][/size]
2011
修改檔案許可權(必須地,否則每次訪問都要求輸入密碼)
cd /etc
chown root.root rsync.pas
chmod 600 rsync.pas
[size=medium][b]二. 連線伺服器[/b][/size]
/usr/local/rsync/bin/rsync -vzrtopg --progress --delete [email protected]::releases /usr/releases --password-file=/etc/rsync.pas
2. 上傳客戶端檔案到伺服器
/usr/local/rsync/bin/rsync -vzrtopg --progress --password-file=/etc/rsync.pas /usr/releases [email protected]::releases
[size=medium][b]三. 自動執行(可選)[/b][/size]
1. vi /usr/local/rsync/time.sh //製作指令碼檔案內容如下
#!/bin/bash
/usr/local/rsync/bin/rsync -vzrtopg --progress --delete [email protected]::releases /usr/releases --password-file=/etc/rsync.pass
2 crontab -e
加入55 * * * * /usr/local/rsync/time.sh //每55分執行一次time.sh指令碼檔案
[color=darkred][size=large][b]* 其他[/b][/size][/color]
[size=medium][b]i. iptables[/b][/size]
把下列命令應用到伺服器
iptables -a input -p tcp -s ! 11.22.33.44 --dport 873 -j drop
如此, 只有 11.22.33.44 這個 client ip 能進入這台 rsync server.
命令介紹:-rvlhpogdts
rsync命令引數
-v表示verbose詳細顯示
-z表示壓縮
-r表示recursive遞迴
-t表示保持原檔案建立時間
-o表示保持原檔案屬主
-p表示保持原檔案的引數
-g表示保持原檔案的所屬組
-a存檔模式
-p表示代替-partial和-progress兩者的選項功能
-e ssh建立起加密的連線。
--partial阻止rsync在傳輸中斷時刪除已拷貝的部分(如果在拷貝檔案的過程中,傳輸被中斷,rsync的預設操作是撤消前操作,即從目標機上
刪除已拷貝的部分檔案。)
--progress是指顯示出詳細的進度情況
--delete是指如果伺服器端刪除了這一檔案,那麼客戶端也相應把檔案刪除,保持真正的一致。
--exclude不包含/ins目錄
--size-only 這個引數用在兩個資料夾中的差別僅是源資料夾中有一些新檔案,不存在重名且被修改過的檔案,因為這種檔案有可能會因為內容被修改可大小一樣,而被略過。這個引數可以大大地提高同步的效率,因為它不需要檢查同名檔案的內容是否相同。
--password-file來指定密碼檔案,內容包含server端指定認證使用者的密碼。
這樣就可以在指令碼中使用而無需互動式地輸入驗證密碼了,這裡需要注意的是這份密碼檔案許可權屬性要設得只有屬主可讀。
[email protected]::releases
coco是指server端指定認證的使用者
192.168.2.100是指伺服器端的ip
::backup 表示伺服器端需要同步的模組名稱;
/home/quack/backup/$date是同步後的檔案指存放在本機的目錄位址。
/var/log/rsync.$date是同步後的日誌檔案存放在本機的目錄位址。
注意不放/ 則目錄名也包含mirror,放 / 則只有目錄裡面的東西mirror了
RSYNC安裝使用詳解
這個命令將把本地機器 home backup目錄下的所有檔案 含子目錄 全部備份到rsync server 172.20.0.6 的backup模組的設定的備份目錄下。請注意如果路徑結束後面帶有 表示備份該目錄下的東東,但不會建立該目錄,如不帶 則建立該目錄。rsync用法 rsync option...
RSYNC安裝使用詳解
1 啟動rsync vi etc xinetd.d rsync 把原來的yes改成no service rsync 隨系統啟動rsync chkconfig rsync on 2 配置 etc rsyncd.conf 需要手動生成 rsyncd.conf的引數寫在上邊就是全域性引數和寫在模組裡的就是...
Rsync 安裝與使用
分享一下我老師大神的人工智慧教程!零基礎,通俗易懂!rsync是乙個遠端資料同步工具,可以通過 lan wan 快速同步多台主機間的檔案。rsync 使用 rsync演演算法 來使本地和遠端兩個主機之間的檔案同步。這個演算法只傳送兩個檔案的不同部分,而不是每次都整份傳送,因此速度相當快。乙個rsyn...