Previous Article Next Article 使用 mondo 線上備份linux centos 系統
Posted in Linux

使用 mondo 線上備份linux centos 系統

使用 mondo 線上備份linux centos 系統 Posted on 2011 年 05 月 09 日Leave a comment

http://ssorc.tw/?p=170 ,在 CentOS 5.4作測試

跳過 OS  安裝

直接來到怎麼安裝、使用 mondo (2.2.9.4)

在mondo官網 http://www.mondorescue.org/downloads.shtml 

是找不到 CentOS的套件,不過有 RedHat Enterprise Linux 2.1, 3, 4, 5.

但我不是拿它來裝

執行

   這串是到 http://dag.wieers.com/rpm/FAQ.php#BB2. How to configure to use RPMforge ?  拿的

yum一下就裝好了

yum install mondo

mondo雖然有GUI介面可以操作備份,不過這裡我要用指令執行

且我先掛載一個 nfs 連結,我要把檔案放在遠端,不放在local,

因為mondo備份時會產生暫存檔,不一定local都是有足夠空間讓我存放的

掛載到 /nfs

mount -t nfs -o nolock 10.1.1.12:/home/nfs /nfs

開始執行備份

mondoarchive -Oi -d /nfs -E '/nfs' -p 'mondorescue' -s 5000m  -S /nfs -T /nfs

參數說明

-p : 前置字元名稱 ,長這樣子 mondorescue-1.iso,第二個就是mondorescue-2.iso (如果超過 -s 所定義的大小)
-i : 將檔案壓成 ISO
-n : nfs://10.1.1.12:/home/nfs
-D : 差異備份 (還沒試過)
-E : 忽略不備的路徑 (空白區隔)
-I : 指定要被備的路徑 (空白區隔),預設是 / ,這些會自動忽略 /mnt/floppy,  /mnt/cdrom, /proc, /sys, /tmp
-d : ISO放置路徑
-s : 定義每個iso檔的大小,預設是 700m
-3 : 最大壓縮比,預設是3,可以0 ~9,0是不壓
-A : iso檔作完後可以指定某個指令執行
-B : iso檔在作前可以指定某個指令執行
-G : 指定 gzip 壓縮
-S : 指定一個路徑,放暫存的東西,預設在 /mondo.scratch.XXX 底下,如果不改也要 / 空間夠大才行
-T : 指定一個路徑,放暫存的東西,預設在 /mondo.tmp.XXX 底下,如果不改也要 / 空間夠大才行
-f : 如果是 RAID 環境,可以試試這個

ps: 別用它的 -n,因為我怎麼試,最後還是手動 mount -t nfs ,它才能夠讓我執行如下

mondoarchive -On 10.1.1.12:/home/nfs

   這樣子不就多此一舉嗎

備份的過程,會提示作到百分之幾,還有多久作完等等

—progress-form—4— TASK:  [***********………]  53% done;  5:19 to go
—progress-form—1— I am backing up your live filesystem now.
—progress-form—2— ISO 1: [**………………] 10% used
—progress-form—3— Please wait. This may take a couple of hours.
—progress-form—E—
—progress-form—4— TASK:  [***********………]  54% done;  5:13 to go
—progress-form—1— I am backing up your live filesystem now.
—progress-form—2— ISO 1: [**………………] 10% used
—progress-form—3— Please wait. This may take a couple of hours.
—progress-form—E—
—progress-form—4— TASK:  [***********………]  54% done;  5:03 to go

再來會把檔案放入 ISO裡

—evalcall—1—    Running mkisofs to make ISO #1
—evalcall—2— TASK:  [*……………….]   3% done;  2:09 to go
—evalcall—E—
—evalcall—1—    Running mkisofs to make ISO #1
—evalcall—2— TASK:  [*……………….]   4% done;  2:00 to go
—evalcall—E—
—evalcall—1—    Running mkisofs to make ISO #1
—evalcall—2— TASK:  [*……………….]   5% done;  1:54 to go
—evalcall—E—
—evalcall—1—    Running mkisofs to make ISO #1
—evalcall—2— TASK:  [**………………]   6% done;  1:49 to go
—evalcall—E—
—evalcall—1—    Running mkisofs to make ISO #1
—evalcall—2— TASK:  [**………………]   7% done;  1:46 to go
—evalcall—E—
—evalcall—1—    Running mkisofs to make ISO #1
—evalcall—2— TASK:  [**………………]   8% done;  1:55 to

製作完成

Call to mkisofs to make ISO (ISO #1) …OK
Done.
Done.
Backup and/or verify ran to completion. Everything appears to be fine.
/var/cache/mindi/mondorescue.iso, a boot/utility CD, is available if you want it
Data archived OK.
Mondoarchive ran OK.
See /var/log/mondoarchive.log for details of backup run.
Execution run ended; result=0
Type 'less /var/log/mondoarchive.log' to see the output log

再來準備另一新的硬碟測試還原,看備份是否OK

把作出來的ISO檔 (mondorescue-1.iso) 拿來開機

下圖是iso檔開機的畫面
。最上面顯示我的主機名稱、CentOS、及 Kernel
。中間的地方有 nuke (自動的還原)、interactive (互動式的還原)、expert (專業模式的還原) 、compare (我不知要比較什麼),可以輸入其它一模式名稱後enter
。底下有 donteject (不退光碟) 、noresize (不重新分割硬碟)、textonly,可以跟著上面的參數一起輸入

我先選擇 nuke + enter

來到這,它跟我說新的硬碟比較大,多出了2m,要我切換成互動模式,我按了yes

我也沒切割什麼,就直接按ok了

它要我save,就save吧

它會先清除硬碟

它怕你會後悔,所以按排了幾秒倒數時間,後悔就ctrl + alt + del 重開機

分割硬碟

按yes開始restore

進行中

編輯不知道是什麼的conf,我直接 :q 離開了

按yes初始 boot

它要我編輯 /etc/fstab 、grub.conf 等等,我是覺得不需要,所以 No

這邊按Yes,我曾試按no時結果kernel panic了

restore完成

可以輸入 exit 重開機

成功開機

PS: 目前試不出來怎麼透過 NFS 還原

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *