[分享]rsync遠端備份

常言道:『飲水思源』,在 Open Source 的世界裡,我們常常需要別人的幫助,但是在您有所心得的時候請記得分享給大家,『幫助人是快樂的喔』。歡迎您在使用 debian 的過程中的任何心得分享給大家。

[分享]rsync遠端備份

文章rostin » 週四 6月 02, 2005 3:34 pm

話說重頭

當有一次放學生資料的硬碟壞掉後,學生辛辛苦苦做的電腦作業毀於一旦時(還好我前天才把資料抓下來準備改作業)
如果不是運氣好,我大概已經被學生們海K一頓了

所以我就在想要如何備份資料
聽說rsync很方便
就上網找資料,找到了這一篇以及這一期的Linux guide有介紹
自己就實做了一次
下面是我做的筆記
---------------------------------------------------------------
電腦分成兩台(server:192.168.0.100 Client:192.168.0.200)
**放備份資料的主機(Server) ip:192.168.0.100**
1.安裝rsync
代碼: 選擇全部
apt-get install rsync


2.修改/etc/default/rsync
代碼: 選擇全部
將  RSYNC_ENABLE=false
  改成RSYNC_ENABLE=true


3.rsync client 主機的設定
代碼: 選擇全部
#vi /etc/rsyncd.conf
     
[Home]
#允許使用rsync的ip
hosts allow = 192.168.0.200
#將其他的都檔掉
hosts deny = *
#要存放備份的地方
path = /back
#隨便你填
auth users = home_back
uid = root
gid = root
#rsync的帳號密碼的位置
secrets file = /etc/rsyncd.secrets
#是否唯讀--不要
read only = no


4.設定密碼 rsyncd.secrets
代碼: 選擇全部
#vi /etc/rsyncd.secrets
帳號:密碼
例如
rostin:ILoveRostin

接著修改權限和擁有者
#chown root:root /etc/rsyncd.secrets
基本上我用root建立的/etc/rsyncd.secrets所以這一步是多餘的
#chmod 600 /etc/rsyncd.secrets


5.啟動rsync
代碼: 選擇全部
#/etc/init.d/rsync start
可以連到自己的電腦看看有沒有成功
#telnet localhost 873
如果出現
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
@RSYNCD: 29
代表已經成功了



**要備份的主機(Client)ip:192.168.0.200
1.安裝rsync
代碼: 選擇全部
#apt-get install rsync


2.設定密碼
代碼: 選擇全部
#vi /etc/rsyncd.passwd
這裡要填上你剛剛在server端所建立的密碼ILoveRostin
更改權限與擁有者
chmod 600 /etc/rsyncd.passwd
基本上我用root建立的/etc/rsyncd.secrets所以這一步是多餘的
chown root:root /etc/rsyncd.passwd


3.開始備份
代碼: 選擇全部
rsync -arHz --progress --delete --password-file=/etc/rsyncd.passwd /home/ rostin@192.168.0.100::Home/home

-a:保留權限,除了Hard Link
-r:遞迴地複製目錄中的所有目錄
-H:保留 Hard Link
-z:資料備份前先壓縮
--progress:顯示進度
--delete:如果要備份的主機上刪除了某個檔案,備份的主機也刪除某個檔案
--password-file:密碼檔的位置
這一行rostin@92.168.0.100::Home/home[/color]的意思是
帳號@server的ip::在server端/etc/rsyncd.conf中的名字/建立一個home來放資料


這樣就大功告成了

4.最後當然要讓他自動化
代碼: 選擇全部
#vi /etc/crontab
加入
0 5 * * * root /usr/bin/rsync -arHz --progress --delete --password-file=/etc/rsyncd.passwd /home/ rostin@192.168.0.100::Home/home
這樣每天早上五點就會自動備份了


**資料的還原
1.到要被還原資料的電腦(Client 192.168.0.200那一台)

2.執行rsync還原
代碼: 選擇全部
#rsync -arHz --progress --delete --password-file=/etc/rsyncd.passwd rostin@192.168.0.100::Home/home /home

這樣就可以把/back/home裡的資料還原到你的/home裡面了
歡迎大家來參觀我的Blog
http://www.rostin.idv.tw/blog/index.php?blogId=2
頭像
rostin
懵懂的國中生
懵懂的國中生
 
文章: 185
註冊時間: 週一 3月 08, 2004 10:31 pm

回到 share

誰在線上

正在瀏覽這個版面的使用者:沒有註冊會員 和 1 位訪客