酷!學園
2010-09-03 13:19 *
歡迎光臨, 訪客. 請先 登入註冊一個帳號.
您忘了 啟用您的帳號嗎?

請輸入帳號, 密碼以及預計登入時間
新聞:
 
   首頁 | Study-Area | 鳥園 | 鳥哥的Linux私房菜   說明 搜尋 日曆 登入 註冊  
頁: [1]
  列印  
作者 主題: 用rsync做備份  (閱讀 52632 次)
0 會員 以及 2 訪客 正在閱讀本篇主題.
ericshei
全區板主
俺是博士!
*****
文章: 2256


檢視個人資料
« 於: 2003-04-15 09:11 »

用rsync做備份
會用rsync 是因為我用mirror去備份windows上的東西時,會有目錄結構上的問題.
且我要備份的檔案都上百MB用mirror去備份也不實際,基於這二點我就試了rsync.
http://phorum.study-area.org/viewtopic.php?p=75850#75850

關於rsync 的優點可以參考下面的連結,也是我實作時參考的資料.
http://linux.tnc.edu.tw/techdoc/rsync.htm
http://www.linux.org.tw/~pahud/rsync.html
http://www.fanqiang.com/a6/b7/20010908/1305001258_b.html



rsync on linux

檢查有沒有安裝rsync套件.

rpm -qa | grep rsync

若沒有,到
http://rpmfind.net/linux/rpm2html/search.php?query=rsync

http://rsync.samba.org/download.html
下載安裝.


設定Rsync Server.


vi /etc/xinetd.d/rsync

程式碼:
disable = no


service xinetd restart



[主機代號:自訂]
path = 備份資料放置的路徑
auth users = 定義援權的帳號
uid = 應是執行時的uid
gid = 應是執行時的gid
secrets file = 認證密碼檔的位置
read only = 是否唯讀

自行建立rsyncd.conf
vi /etc/rsyncd.conf

程式碼:
[apache]
path = /home/users/public/Studio
auth users = apache-admin
uid = root
gid = root
secrets file = /etc/rsyncd.secrets
read only = no

自行建立rsyncd.secrets
vi rsyncd.secrets

程式碼:
apache-admin:secret


chown root:root /etc/rsyncd.secrets
chmod 600 /etc/rsyncd.secrets



設定Rsync Client.

自行建立rsyncd.secrets
vi /etc/rsyncd.secrets

程式碼:
secret


chmod 600 /etc/rsyncd.secrets

執行
/usr/bin/rsync -vzrtopg --progress --delete --password-file=/etc/rsyncd.secrets /var/www/html apache-admin@172.16.7.253::apache

看看/home/users/public/Studio看看有沒有備份過來吧!!  ^^
另外若"/var/www/html apache-admin@172.16.7.253::apache"的位罝對調,則備份的方向也對調哦!


ps: /var/www/html 為client 端,欲備份的目錄,而172.16.7.253為server ip


參考資料
http://linux.tnc.edu.tw/techdoc/rsync.htm
http://www.linux.org.tw/~pahud/rsync.html
http://www.fanqiang.com/a6/b7/20010908/1305001258_b.html





RSync 實作紀錄於 Windows 2k pro

這是我參考下面這份文件做出來的.
http://www.numbski.net/rsync/

下載http://users.tseinc.com/~numbski/rsync.zip,並解壓至c:\rsync
複製 cygwin1.dll 到C:\WINNT\system32下.

接著進command line,執行下面三行.

cd c:\rsync
instsrv Rsync "c:\rsync\srvany.exe"
exit

按"開始","執行",下"regedit"

搜找下列機碼.
HKEY_LOCAL_MACHINE -> SYSTEM -> CurrentControlSet -> Services -> Rsync

在Rsync按右鍵,"新增"->"機碼",名稱改為Parameters
在Parameters按右鍵,"新增"->"字串值",名稱改為AppDirectory,執行它,並在"值的資料"輸入"c:\rsync"
在Parameters按右鍵,"新增"->"字串值",名稱改為Application,執行它,並在"值的資料"輸入"c:\rsync\rsync.exe"
在Parameters按右鍵,"新增"->"字串值",名稱改為AppParameters,執行它,並在"值的資料"輸入--config="c:\rsync\rsyncd.conf" --daemon

再來執行"控制台"->"系統管理工具"->"服務"找到Rsync按右鍵"啟動"

接著進command line執行:

telnet localhost 873

接著下quit

cd c:\rsync
rsync localhost::

您應該會看到"mame"出現在螢幕上.
若看到那表示,您的rsync己經是work的了.  ^^

接下來,在下將在linux及windows 2k pro上做測試,二個平台互為server及client,並使用不認證使用者的方式.
環境:
pc-a為linux
ip為172.16.7.253
欲備份的目錄為   /rsync_data/output
備份的目錄為   /rsync_data/input


pc-b為windows
ip為 172.16.4.4
欲備份的目錄為   c:\rsync_data\output
備份的目錄為   c:\rsync_data\input


先設定linux上的rsyncd.conf檔.

vi /etc/rsyncd.conf

程式碼:
[pc-a_output]
path = /rsync_data/output
readonly = yes


再設windows上的rsyncd.conf檔.

編輯 C:\rsync\rsyncd.conf

程式碼:
[pc-b_output]
path = c:\rsync_data\output
readonly = yes


這樣就設好了,分別執行看看(執行時別忘了,copy 些不同的資料到pc-a及pc-b的output目錄哦!).

從pc-1上把pc-b上的rsync server 備份回來.

/usr/bin/rsync -arv --delete   172.16.4.4::pc-b_output /rsync_data/input

從pc-2上把pc-a上的rsync server 備份回來.

c:\rsync\rsync.exe -arv --delete 172.16.7.253::pc-a_output c:\rsync_data\input

好啦!看看pc-a及pc-b的input目錄下,是不是有對方output目錄的東西呢?若看到了就成功囉!

另外,我在linux與linux加上AUTH皆沒問題,但一遇上windows就會 auth failed,不清楚為什麼,所以只好先用不認證的方式了.

在windows上使用sync2nas做client端.

算是下面這份文件的補充吧!
http://phorum.study-area.org/viewtopic.php?t=11220&highlight=rsync


到這下載安裝.
http://sourceforge.net/project/showfiles.php?group_id=48366&release_id=79188
執行.
從左上角選擇您欲備份的資料然後按">>"丟到右邊.

再來要設定左下角的項目.

Appliance or Virtual IP: 輸入您的server位址
Share Name:主機代號
Remote Forder:遠端目錄,若這裡有定義,則資料將置此目錄下.
User Name:帳號
Password:密碼
Rsync Options:參數

Appliance or Virtual IP: 172.16.7.253
Share Name:apache
Remote Forder:
User Name:apache-admin
Password:secret
Rsync Options:-vzrtopg --progress --delete

若要更改User Name及Rsync Options可從功能表的Advanced將其enable.

右下角設定定,執行的時間及執行身份
例如:
選Replicate Once Immediately就是馬上執行.

最後在按Apply執行吧!
已記錄
梁楓
俺是博士!
*****
文章: 6217



檢視個人資料
« 回覆文章 #1 於: 2003-04-18 00:17 »

我覺得
這份應該要放到精華區才對...
太精彩了!
不然就是放到“技術心得”區!
已記錄
lschang
懷疑的國中生
**
文章: 82


檢視個人資料
« 回覆文章 #2 於: 2003-12-02 10:40 »

您好:
看了文章後,再想若只要針對較新的檔案同步就好該如何設定?
已記錄
lschang
懷疑的國中生
**
文章: 82


檢視個人資料
« 回覆文章 #3 於: 2003-12-02 12:11 »

請問先進
我依上述步驟設定完畢,結果有下列錯誤該如何排除

# /usr/bin/rsync -rvlHpogDtS --password-file=/root/rsyncd.secrets /var/www/html/tccn linuxbakup@sys02.tccn.edu.tw::linuxweb
@ERROR: auth failed on module linuxweb
rsync: connection unexpectedly closed (92 bytes read so far)
rsync error: error in rsync protocol data stream (code 12) at io.c(151)
已記錄
ozakipw
憂鬱的高中生
***
文章: 189


檢視個人資料
« 回覆文章 #4 於: 2003-12-02 12:24 »

引用自: "lschang"
請問先進
我依上述步驟設定完畢,結果有下列錯誤該如何排除

# /usr/bin/rsync -rvlHpogDtS --password-file=/root/rsyncd.secrets /var/www/html/tccn linuxbakup@sys02.tccn.edu.tw::linuxweb
@ERROR: auth failed on module linuxweb
rsync: connection unexpectedly closed (92 bytes read so far)
rsync error: error in rsync protocol data stream (code 12) at io.c(151)


好像是認證失敗,看一下密碼檔屬性和密碼是否設定正確!
已記錄

img]http://61.222.212.236/~test1/sing.jpg[/img]
lschang
懷疑的國中生
**
文章: 82


檢視個人資料
« 回覆文章 #5 於: 2003-12-03 10:28 »

我有一再的檢查     密碼檔屬性和密碼是否設定正確  但實在都搞不定他
後來再到處找找,發現下面這個辦法,好像比較簡單明暸
http://www.adj.idv.tw/server/linux_rsync.php
大家參考看看
已記錄
ybao
可愛的小學生
*
文章: 5


檢視個人資料
« 回覆文章 #6 於: 2004-06-04 12:31 »

有關內容中所提 rsync.zip 是否還有
能否 mail : kclkcl@ms41.hinet.net
已記錄
初初學者
可愛的小學生
*
文章: 3


檢視個人資料
« 回覆文章 #7 於: 2005-02-21 18:39 »

各位前輩好:
 
           小弟不久前在研究rsync的功能,也是linux跟Windows之間的備份,
由Windows 2003 rsync 到linux 基本上沒有太大的問題,不過在由linux
rsync到Windows時,卻會遇到權限的問題....

        Linux 端是root身份,Windows端是Administrator 身份,但是不管
要傳的檔案所屬使用者改為誰,傳到Windows 端,其owner都會變成
SYSTEM,檔案無法儲存或刪除,必須手動把owner改為Administrator
才行;
       
           小弟在Windows端的rsyncd.conf 如下

          [Test]
        uid = Administrator
        gid = Administrator
        path= c:\test
        read only = false

不知道有哪位前輩有遇到同樣的問題,要如何才能在Rsync 到Windows
時,保有原本的owner呢?(Windows端必須是Administrator身份)
感謝前輩不吝指教!
已記錄
nnflame
可愛的小學生
*
文章: 2


檢視個人資料
« 回覆文章 #8 於: 2005-04-29 09:37 »

我昨天才開始研究rsync,目前是從win98 or winxp開始從client做起,將client內的資料備份到linux server.
環境設定:
1.winxp home
2.Sync2NAS之安裝(大致上已經設定好了,可以同步備份到linux server)

現在我有一個疑問,我必須要用ssh進入server ip,登入帳號和密碼,查詢我的資料是否被備份到server.

我用的ssh是putty軟體
然後我要輸入什麼指令,才可以查詢我的目錄(backup)是否備份起來?
[root@backup root]#  <--該輸入什麼指令?
已記錄
krab
憂鬱的高中生
***
文章: 153


檢視個人資料
« 回覆文章 #9 於: 2005-06-17 16:52 »

感謝ericshei大大的教學,讓小弟也能感受到rsync的無窮威力,同時也實現了”異地備份”,真是高興。

我整個須要備份的資料大約將近2G,雖然沒有實際計算,但是每天變動的檔案應該不是很大。

在區網裡利用secondcopy每天兩次自動備份到另一台電腦,然後下班時再備份到usb硬碟帶走,層層備份就只因為重要資料閃失不得。不過每天晚上下班還要等5分鐘來備份實在有點煩。現在利用rsync,可以提早5分鐘下班,還能異地備份,真是快樂。

辦公室:debian samba and rsync server- source(工作站都是使用w2k)

家:fedorca core2 rsync client(server)- destination

建立好了整個環境之後,先測試看看,確定能跑之後,用usb硬碟將2G的檔案帶回家放到destination上,再用crontab每天晚上由rsync透過網際網路自動更新備份,如此一來,雖然不算”狡兔有三窟”,但至少比較接近高枕無憂的地步了。

samba.org實在不簡單,都是重量級的東東。

再次感謝ericshei大大這麼棒的教學。
已記錄

totolung
活潑的大學生
***
文章: 370


檢視個人資料
« 回覆文章 #10 於: 2005-06-17 17:18 »

引用
下載http://users.tseinc.com/~numbski/rsync.zip,並解壓至c:\rsync


不好意思,上面的下載網址失聯了耶。

有哪位學長,有檔案的可以MAIL 給我。
totolung@gmail.com

OR 提供可下載的網址....


3Q.....
已記錄
krab
憂鬱的高中生
***
文章: 153


檢視個人資料
« 回覆文章 #11 於: 2005-06-17 17:38 »

http://www.brentnorris.net/rsync.zip
已記錄

victorjob
懷疑的國中生
**
文章: 40


檢視個人資料
« 回覆文章 #12 於: 2005-10-02 02:17 »

為什麼我在 window pro xp 安裝 sync2nax 做 Client 但不成功同步到
Linux sync server.

是不是不支援 window pro xp ??  Linux 做 client 是可以的

謝謝
已記錄
jaymsa
活潑的大學生
***
會員性別: 男
文章: 402


檢視個人資料 個人網站
« 回覆文章 #13 於: 2006-02-15 13:58 »

引用
cd c:\rsync
instsrv Rsync "c:\rsync\srvany.exe"
exit

按"開始","執行",下"regedit"

前輩我執行這些指令時,發生錯誤,系統說instsrv不是系統指令,另外就是由於檔案失連,我使用的是krab前輩提供的檔案,但裡面沒有srvany.exe他只有四個檔案!![/color]
已記錄

Linux真好玩...博大精深!!
RHCE
http://jayclub.no-ip.org/jayblog
hsiao_peter
憂鬱的高中生
***
文章: 104


檢視個人資料
« 回覆文章 #14 於: 2006-04-24 16:44 »

我要備份另一台 mysql 抓下來的檔案 路徑在/var/lib/mysql 可是要手動改
chown -R mysql:mysql /var/lib/mysql  
有沒有更好的方法可以保留
已記錄

hsiao_peter
憂鬱的高中生
***
文章: 104


檢視個人資料
« 回覆文章 #15 於: 2006-04-24 16:59 »

引用自: "hsiao_peter"
我要備份另一台 mysql 抓下來的檔案 路徑在/var/lib/mysql 可是要手動改
chown -R mysql:mysql /var/lib/mysql  
有沒有更好的方法可以保留


不好意思  用你的參數可就可以 :oops:
已記錄

頁: [1]
  列印  
 
前往:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006, Simple Machines LLC Valid XHTML 1.0! Valid CSS!
本頁花了 0.078 秒,以及 15 次的資料庫查詢。