線上訂房服務-台灣趴趴狗聯合訂房中心
發文 回覆 瀏覽次數:1641
推到 Plurk!
推到 Facebook!

FreeBSD下網路備份Net Backup System的實現

 
conundrum
尊榮會員


發表:893
回覆:1272
積分:643
註冊:2004-01-06

發送簡訊給我
#1 引用回覆 回覆 發表時間:2005-05-13 00:39:27 IP:218.175.xxx.xxx 未訂閱
 FreeBSD下網路備份Net Backup System的實現 
http://blog.tomxp.com/view/267.html    安裝、使用 Network Backup System
NBS是什??
------------
NBS 是 Network Backup System 的縮寫 , 這個系統主要是用來備份您的網路主機的資料 , 簡單來說 , NBS 是一 個 client/server 架構的系統 , 也就是說您必須提供一台機器來提供備份服務(安裝有磁帶機或其他備份設備 , 一旦您 的 nbsd (NBS DAEMON) 成功地跑起來 , 您就能提供網路上的每一台網路主機備份的服務 , 並且還能提供恢復的服 務 , 一旦主機資料毀損 ,即可利用此功能將資料恢復 .
NBS 原理
--------
NBS 使用 TCP/IP ?通訊協定 , 並採取 TCP 固定連接 , 資料安全性較高 , NBS採用 PORT 5000 ?其通訊埠 , 備份 主機可以同時提供多台網路主機同時備份 , NBS的運作狀況如下所示 :
1
┌───────┐ <-------- request ---------- ┌───────┐
│ Backup │ 2 │ Network │
│ Server │ ----------- OK ------------> │ Host │
│ │ 3 │ │
└───────┘ <--------- data ------------ └───────┘
運行 nbsd 提供備份服務 1. 利用 setnbs 設定環境
nbsd 讀取 /etc/backup.servers來 2. 編輯 備份描述檔(請參考
{ How_To_Use).
1.確認那台主機可以取得服務 3. 跑 nbs 來執行備份或回存
2.確認可取得服務的主機要將
資料備份到那個目錄.
3.確認可取得服務的主機的密碼.
}
一旦許可權確認成功 , 即可開始提供服務.
支援平臺
--------
目前該系統僅在 FreeBSD 和 Linux 上測試過 , 其他 Unix 系統如果提供 socket應能正常運行 .
如何取得
--------
ftp://weekend.3322.org/FreeBSD/NetBackupSystem-1.1.1r.tgz    Server 端的安裝
---------------
要安裝 Server 端程式 , 解包後,進入 server 目錄 , 編輯 Makefile 這個文件裏的一個叫 INSTALL_DIR 的變數 , 這個 變數用來設定編譯過後的程式該安裝在哪個目錄下 , 默認目錄? /usr/local/sbin , 改好後只要輸入
make
即可完成程式的安裝 , 如果默認的目錄沒變 , 在 /usr/local/sbin 下應該會有一個叫 nbsd 的 Daemon 程式 , 運行它 , 然 後 , 輸入
telnet (你的 ip address) 5000
如果出現如下的資訊的話 , 表示 nbsd 已經開始正常運作了 :
Trying 192.168.1.1...
Connected to polaris.
Escape character is '^]'.
Connection closed by foreign host.
然後 , 請將下面的腳本寫入你的系統初始文件裏 , 如 rc.local(FreeBSD下是建立/usr/local/etc/nbsd.sh,方法自己查 FAQ) , 讓每次系統一?動就能自動執行此 Daemon :
echo "Network Backup System Daemon ..."
/usr/local/sbin/nbsd
至此 , Server 端已經安裝完成 , 請參閱 How_To_Use 取得更詳細的使用說明 .
Client 端的安裝
---------------
安裝 client 端程式 , 解包後進入 client 這個目錄 ,然後編輯 Makefile 裏的一個叫作 INSTALL_DIR 的變數 , 這個變數 用來指定 client 端程式該放到那個目錄 ,如有需要請將其改成您所要安裝的目錄 , 默認的目錄? /usr/local/bin , 改好 後請打
make all
即可將程式編譯安裝完成 , 裝完後 , 如果沒有更改默認目錄 , 則你會在    /usr/local/bin 下看到兩個檔 nbs 和 setnbs , nbs 是該系統的 client 端程式 ,而 setnbs 則是用來設置環境用的 , 關於 client 端的詳細用法 , 請參閱 How_To_Use這個檔有關 client 端的說明 .
如何使用 NBS 系統 :
Server 端
------
如果您的機器是要做?備份主機的話 , 請按照安裝程式 , 將 server 端程式編譯完成, 然後您會在 /etc/ 這個目錄下發 現有一個叫做 backup.servers 的文件, 這個文件是用來設定那一台主機可以將資料備份到您的備份主機上 , 這個檔主 要有三個欄位 , 分別?: (每個欄位都須以“:”隔開)
主機IP:備份路徑:主機口令;
分述如下:
1. 主機 IP(or Domain Name) -> 即?要將資料備份到備份主機的 IP 位址或是Domain Name .
2. 備份路徑 -> 即當欲備份的主機將數據傳過來時要放置的目錄 .
3. 主機口令 -> 即欲備份主機欲取得備份服務時所需傳送過來的密碼 .
每一台欲備份主機都需在此文件內有一行描述 , 每行描述都須以『;』作?結尾 , 下面是一個例子 :    假設有一台主機 ip 位址? 192.168.1.4 , 其資料將備份至備份主機的 /backup/polaris
下 , 且其密碼被設定? test , 則此主機的描述行應該同下:
192.168.1.4:/backup/polaris:test;
當您將您網路上欲備份的主機的描述都寫入此檔後 , 這些主機就可以執行client 端的程式 ,開始將資料備份過來 . 至 此 Server 端的設定工作已經完成 , 需要注意的是 ,此描述文件內的『密碼欄位』並未編碼 , 因此管 理 Backup Server 的管理員需特別注意此檔案的許可權 , 請將其設?只有 root 可以讀寫 ,即 chmod 0600 /etc/ backup.servers, 否則一旦被一般 user 看見 , 則此 user 如果又在某一台主機擁有賬號 , 那?他就能將其資料備份到此 備份主機上 , 所以隨時保持此文件只有 root 能讀寫是很重要的 .
而密碼欄的設定可以包括除了『;』之外的可見字元和空格 , 也就是說您可以設定一長字串當作密碼 , 密碼的給定需 要在 Server 端設好 , 也就是說 Backup Server 的管理員必須將密碼設定好後 , 再告訴欲備份主機的管理員 , 讓其 在 client 端作設定 .
另外 , 密碼欄位的密碼至少需要 4 個字元 , 因?密碼是用來當作資料傳送時的 KEY ,所以一定要設定 , 且至少需 要 4 個字元 .
當您的備份系統開始運作後 , 一旦有 client 端一有 request , nbsd 會將 client端的訪問記錄放在 /var/log/nbsd 這個文件 內 , 備份主機管理員應隨時查看這個文件 .
Client 端
---------
如果您的機器是某台備份主機的 client 端 , 請按照安裝程式將 client 程式安裝完成, 在安裝完成 client 端程式後 , 請 向您的 備份主機 的管理員取得下面的資料 :
1 . 您的備份密碼 .
2 . 備份主機的 IP Address 或 Domain Name .
取得您所需的資料後 , 就可以開始設定 client 端了 , 請依照下面的步驟來做 :
Step 1 :    首先請打 setnbs , 此時會出現一個有四個選項的 menu , 您可以利用這個 menu來設定您的 nbs , 如果您選擇 1 , 就 可以設定您的備份密碼 , 這個密碼會存於/etc/config.nbs 裏 , 此檔只有 root 才能讀寫 , 如果您選擇 2 的話 , 就會設定 您的備份主機的位址 , 此位址可以是 ip 也可以 domain name , 1.0.1r版以前 , 備份主機的位址是利用系統變數去存取 的 , 也因此無法利用 crontab來定時備份 , 因此現在改用 檔案去存此變數 , 備份主機的位址也將存在/etc/ config.nbs 裏 , 如果你選擇 3 , 則可設定兩者 .
Step 2 :    設定完後 , 再來就是編寫『備份描述檔』, 這個描述檔主要是讓您設定那些目錄要備份 , 備份後的檔名?何 , 主 要的語法描述如下 :
#comment    package --> 一定要以 package 開頭 , 否則 { } 內的描述就會被忽略 .    {    what: /etc; --> 設定那個目錄要備份 , 需以 『;』做結尾 .
filename: etc.tgz; --> 設定備份到備份主機上的檔案名 , 也需以『;』做結 .    }    # another package     package    {    what: /user;    filename: user.tgz    ; 
}
......    注意: what: 之後的目錄不可以? symbol link 的目錄 , 否則會被略過不予備份.
ps . client 的目錄下有一個叫 example的目錄 , 其下有一個參考用的描述檔.
Step 3 :    寫好描述檔後 , 您就可以開始備份了 , 只要打 (描述檔? backup) :
nbs -backup backup 
即可將描述文件內所描述的目錄備份到備份主機上 .
如果您想將描述文件內的資料回存回來 , 您也只需打 :
nbs -restore backup /
第三 參數“/”表示資料從根目錄下恢復回來 , 如果您想將資料恢復到其他目錄只要更改這個參數即可 .
如果您想讓系統自動備份 , 請將您的描述檔寫好後 , 將備份指令寫入 crontab 裏 ,如此系統即可自動定時備份了 .
_________________
系統時間:2024-05-04 16:19:01
聯絡我們 | Delphi K.Top討論版
本站聲明
1. 本論壇為無營利行為之開放平台,所有文章都是由網友自行張貼,如牽涉到法律糾紛一切與本站無關。
2. 假如網友發表之內容涉及侵權,而損及您的利益,請立即通知版主刪除。
3. 請勿批評中華民國元首及政府或批評各政黨,是藍是綠本站無權干涉,但這裡不是政治性論壇!