RSYNC ON FreeBSD 5.2 HOWTO V1.0
發表于:2007-05-26來源:作者:點擊數:
標簽:
前言 RSYNC是 Linux , UNIX 系統下的數據鏡像及備份工具,具有可使本地和遠程兩臺主機的文件,目錄之間,快速同步鏡像,遠程數據備份等功能.在同步過程中,可根據遠程 服務器 上的數據變動,相應的刪除或者更新本地機的數據,同步數據不用全部傳送,大大提高同步及備
前言
RSYNC是
Linux,
UNIX系統下的數據鏡像及備份工具,具有可使本地和遠程兩臺主機的文件,目錄之間,快速同步鏡像,遠程數據備份等功能.在同步過程中,可根據遠程
服務器上的數據變動,相應的刪除或者更新本地機的數據,同步數據不用全部傳送,大大提高同步及備份文件的速度.同時在
網絡安全方面,也可以設置為SSH傳輸模式. 遠程主機(Rsync Server)可為RSYNC daemon模式,開啟之后將開放tcp4 873 port,等待本地主機(Rsync client)的連接,連接時遠程主機會進行認證,確認合法用戶進入,便開始進行資料傳輸,在第一次傳輸時會把整個資料都備份同步到本地主機上,在下一次傳輸時,添加相應參數則可根據遠程主機的數據變動來相應調整同步操作. 本文只是 RSYNC 軟件的一個簡單應用操作文檔,主要是給初學者一個初步介紹,如果大家在應用中,有什么更好的意見和建議,請Mail 我.我將繼續更新此文檔,謝謝! :)
軟件及平臺
FreeBSD 5.2 (Server and Client)
Server IP:172.18.5.251 Hostname: freebsd-1
Client IP:172.18.5.247 Hostname: freebsd-2
apache_1.3.29
rsync-2.5.7
目的
備份Rsync Server(172.18.5.251)上的 /usr/local/www/data-dist 目錄下所有內容,到Rsync Client(172.18.5.247)的/backup/www 下
安裝及配置
一,Rsync Server
Step 1: 安裝
freebsd-1#cd /usr/ports
.net/rsync
freebsd-1#make install clean
Step 3: 配置rsyncd.conf
freebsd-1#vi /usr/local/etc/rsyncd.conf //加入以下內容
[www]
comment = web server backup
path = /usr/local/www/data-dist
auth users = tonny
uid = nobody
gid = nogroup
secrets file = /usr/local/etc/rsyncd.secrets
read only = no
Step 4: 配置rsyncd.secrets
freebsd-1#vi /usr/local/etc/rsyncd.secrets //加入以下內容
tonny:123456 // 認證所需的用戶名/密碼
freebsd-1#chmod 600 rsyncd.secrets
Step 5: 配置rc.conf
freebsd-1#vi /etc/rc.conf //加入以下內容
rsyncd_enable="YES"
Step 6: 啟動 Rsync daemon模式
freebsd-1#vi /usr/local/etc/rc.d/rsyncd.sh //加入以下內容
command_args="-4 --daemon" <<<--- 啟用ipv4 協議
freebsd-1#/usr/local/etc/rc.d/rsyncd.sh start
Step 7: 檢查Rsync daemon啟動狀態
freebsd-1# sockstat | grep rsync
root rsync 440 3 dgram -> /var/run/log
root rsync 440 4 tcp4 *:873 *:*
二,Rsync Client
Step 1: 安裝
freebsd-2#cd /usr/ports/net/rsync
freebsd-2#make install clean
Step 2: 建立備份目錄
freebsd-2#cd /
freebsd-2#mkdir -p backup/www
Step 3: 配置rsyncd.secrets
freebsd-2#vi /usr/local/etc/rsyncd.secrets //加入以下內容
123456 //Rsync Server上的認證密碼,不用輸入用戶名
freebsd-2#chmod 600 rsyncd.secrets
Step 4: 檢查備份同步狀態
freebsd-2#/usr/local/bin/rsync -avzP --delete
--password-file=/usr/local/etc/rsyncd.secrets tonny@172.18.5.251::www
/backup/www/
--->>> 將Rsync Server的Web頁面,備份或同步到了Rsync Client的/backup/www下
Step 5: Auto Rsync Shell:
freebsd-2#cd /usr/local/etc/rc.d/
freebsd-2#chmod a-x rsyncd.sh
freebsd-2#vi rsync.sh //加入以下內容
#!/bin/sh
/usr/local/bin/rsync -avzP --delete
--password-file=/usr/local/etc/rsyncd.secrets tonny@172.18.5.251::www
/backup/www/
freebsd-2#chmod a+x rsync.sh
freebsd-2#crontab -e //加入以下內容(每天下午5點半自動備份同步)
30 17 * * * /usr/local/etc/rc.d/rsync.sh
三,高級應用(Rsync With SSH)
Rsync Server
freebsd-1#/usr/bin/ssh-keygen -d
Rsync Client
freebsd-2#/usr/bin/ssh-keygen -d
freebsd-2#scp ~/.ssh/id_dsa.pub 172.18.5.251:/root/.ssh/authorized_keys
freebsd-2#ssh-agent csh 或 (ssh-agent bash) --->>> #echo $SHELL
查看當前SHELL
freebsd-2#ssh-add id_dsa --->>> 輸入 passphase
freebsd-2#/usr/local/bin/rsync -avzP --delete -e ssh
172.18.5.251:/usr/local/www/data-dist/ /backup/www/
PS: 參數說明
-a, --archive archive mode, equivalent to -rlptgoD
//檔案模式
-v, --verbose
//詳細模式
-z, --compress compress file data
//壓縮文件
-P equivalent to --partial --progress
//顯示進度
--delete
This tells rsync to delete any files on the receiving side
that
aren't on the sending side.
//保持遠程機器的文件同步性
-e ssh use SSH connection
//使用SSH連接,保證數據安全
參考
http://rsync.samba.org/ rsync 網站
http://www.freebsd.org/doc/en_US.ISO8859-1/books/handbook/openssh.html
freebsd handbook手冊
原文轉自:http://www.kjueaiud.com
老湿亚洲永久精品ww47香蕉图片_日韩欧美中文字幕北美法律_国产AV永久无码天堂影院_久久婷婷综合色丁香五月
|