close

Windows系統備份可以用ghost工具軟件完成,Linux系統不能完全依賴於ghost工具,一則是ghost本身是有版權的軟件,二則ghost只支持ext2、ext3文件系統的Linux分區,不支持reiserfs、xfs等比較高級的文件系統,ghost本身並不備份mbr,因此常造成恢復後的系統grub出錯的問題。   linux本身自帶有著優秀的備份工具,傳統如:tar、cpio、dd,新的有:bzip2、afio等。這裡介紹兩款備份整個Linux系統,類似於ghost的工具:ghost for linux和partition image for linux。
  g4l和partition image軟件都有光盤映像版。

1。g4l
http://sourceforge.net/project/showfiles.php?group_id=119810
下載ISO文件刻錄成光盤或者在VM中加載啟動。
放入g4l光盤,啟動畫面顯示:
  F1 選擇核心版本  F2  準備映像   F3 啟動   F4 條款說明
g4l要求有一塊空閒的硬盤或者分區以保存映像文件,g4l原理是利用dd命令備份硬盤分區信息及存有數據的扇區,空閒的扇區並不被保存。g4l提供了fg4l控制台圖形前端,採用ncures GUI庫編寫,初次用g4l可以用fg4l熟悉操作。
  選擇一個核心啟動進入g4l系統,出現sh#提示符時,輸入fg4l命令進入操作界面,或者執行g4l命令,格式如下:
g4l FTP服務器IP 映像文件全名 用戶名:口令  dhcp  目錄
以指定的帳號備份linux系統到指定FTP服務器的指定目錄下的映像文件。
像:g4l 192.168.0.1 test.lzo user:pass dhcp /img

 

 

 

 

 



2。partition image
該軟件易用性比g4l好一些,全圖形界面,帶嚮導。採用它備份一台安裝好的Linux系統,再將映像恢復到其他有著相同硬件配置的電腦上,則可以快速克隆一套一模一樣的Linux系統。此軟件速度上比g4l快,建議使用此款軟件作linux系統備份。
   可能是由於晚上上網的原因,partition image官方網站一直上不去,沒有下載,在此不繼續做使用討論,以屏幕截圖來看,此款軟件好於g4l。

 
 
 



3.
以上兩款軟件都要求有FTP服務器,以存放備份映像文件。





**************************************************************************

G4L備份CENTOS5系統過程(幾乎和操作GHOST一樣)。
                                    200705

環境:
WINXP+VM+CENTOS5 


目標:DISK TO DISK備份CENTOS。
1.1.下載G4L iso。刻錄成光盤或者用VM加載都行。
1.2. 為CENTOS4。3增加一個虛擬硬盤(目標盤),大小和系統盤一樣(母盤)。
1.3。啟動CENTOS4。3,把目標盤分成一個區,建立EXT3文件系統。不掛載。重啟。
1.4。用G4L ISO啟動系統。用其默認核心系統啟動。
1.5。#sh g4l,啟動G4L系統
   選擇「RAW MODE 」
   選擇」CLICK N CLONE「 整盤克隆。
   選擇母盤 SELECT SOURCE
   選擇目標盤 SELECT TARGET
   選擇」CLICK N CLONE「
   確認。
1.6。完成後,退出G4L,關機,把母盤刪除,目標盤掛載到母盤位置,從硬盤啟動。
   順利啟動,檢查,一切和原來一樣。


恢復測試:新加一個虛擬磁盤,用G4L把CENTOS系統從子盤恢復到子子盤。
   過程略,和上面一樣。


備註:
如果目標盤容量》母盤,DISK TO DISK後,目標盤默認能用的容量和母盤一樣大。
解決方法:
-------------------------------
5.1檢查母盤的分區情況並記錄:
              # df –h
              /dev/sda2        3.4G              /
              /dev/sda1        99M              /boot
              /dev/sda5        3.6G              /var
              /dev/sda6        494M            /tmp
       5.2檢查母盤的分區表並記錄
# fdisk /dev/sda
              Command (m for help ) : p
              Disk /dev/sda: 9105M,9105018880 bytes
              255 heads,63 sectors/track,1106 cylinders
              Units=cylinders of 16065*512=8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2   14 459 3582495 83 Linux
/dev/sda3   460 524 522112+ 82 Linux swap
/dev/sda4   525 1106 4674915 5 Extended
/dev/sda5   525 1041 4152771 83 Linux
/dev/sda6   1042 1106 522081 83 Linux

       5.3關機,將母盤下掉,然後將子盤設置成啟動:
       5.4順利啟動進入了系統,看來G4L確實能夠解決所擔心的啟動問題。^_^
5.5檢查子盤的分區情況並記錄:
              # df –h
              /dev/sda2        3.4G              /
              /dev/sda1        99M              /boot
              /dev/sda5        3.6G              /var
              /dev/sda6        494M            /tmp
這裡可以看到G4L是按照母盤的分區情況來進行克隆的,可是多餘的容量去哪了呢?
       5.5查看子系統分區表:
              # fdisk /dev/sda
              Command (m for help ) : p
              Disk /dev/sda: 73.4G,73402398720 bytes
              255 heads,63 sectors/track,8924 cylinders
              Units=cylinders of 16065*512=8225280 bytes

#### 這裡的73402398720 bytes=8924*16065*512 #######

Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2   14 459 3582495 83 Linux
/dev/sda3   460 524 522112+ 82 Linux swap
/dev/sda4   525 1106 4674915 5 Extended
/dev/sda5   525 1041 4152771 83 Linux
/dev/sda6   1042 1106 522081 83 Linux


分區表上顯示的與母盤一致。

嘗試著在最後增加新的分區:
              Command (m for help ) : n
No free sectors available
沒有多餘的空間???
              Command (m for help ) : v
顯示還有60G左右的空間沒有使用,怎麼可能沒有多餘的空間呢?有點奇怪~~

嘗試著將最後一個分區刪掉,然後新增分區,以為可能會找回丟失的容量
Command (m for help ) : d
Partition number (1-6): 6
Command (m for help ) : n
First cylinder (1042-1106,default 1042):
這裡讓我有點擔心了,剩餘的空間怎麼會是:1042-1106呢?這個空間就是剛才刪除的那個分區的空間啊,

看來什麼地方有點問題。
繼續查看分區表,發現:
/dev/sda4   525 1106 4674915 5 Extended


原來是這裡的Extended 已經將最後的結束柱面指定為1106了,只要修改成8924應該就可以找回丟失的容量
,原因找到了,馬上動手。
Command (m for help ) :d      (刪除分區)
Partition number (1-5) :4       (這裡的4是sda4,Extended)
Command (m for help ) : p
              Disk /dev/sda: 73.4G,73402398720 bytes
              255 heads,63 sectors/track,8924 cylinders
              Units=cylinders of 16065*512=8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2   14 459 3582495 83 Linux
/dev/sda3   460 524 522112+ 82 Linux swap



Command (m for help ) :n        (新建Extended分區)
Command action
e  extended
       p  Primary partion (1-4)
e      (輸入e ,創建Extended分區)
Select partion 4
First cylinder (525-8924,default 525):回車(終於看到8924了,^_^)
Last Cylinder or +size or +sizeM or +sizeX (525-8924,default 8924): 回車
Command (m for help ) :p
              Disk /dev/sda: 73.4G,73402398720 bytes
              255 heads,63 sectors/track,8924 cylinders
              Units=cylinders of 16065*512=8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2   14 459 3582495 83 Linux
/dev/sda3   460 524 522112+ 82 Linux swap
/dev/sda4   525 8924 67473000 5 Extended


Command (m for help ) :n(新建原來的sda5分區,注意一定要與原來的起始與結束的柱面一致)
First cylinder (525-8924,default 525):回車
Last Cylinder or +size or +sizeM or +sizeX (525-8924,default 8924): 1041
Command (m for help ) :n(新建原來的sda6分區,同樣注意一定要與原來的起始與結束的柱面一致)
First cylinder (1042-8924,default 1042):回車
Last Cylinder or +size or +sizeM or +sizeX (1042-8924,default 8924): 1106
Command (m for help ) :n(新建多餘空間的分區)
First cylinder (1107-8924,default 1107):回車
Last Cylinder or +size or +sizeM or +sizeX (1107-8924,default 8924):回車 (全部做為新的分區

,也可以繼續進行細分,看個人需要了)
#### 查看所有的分區情況 ####
Command (m for help ) :p
Disk /dev/sda: 73.4G,73402398720 bytes
              255 heads,63 sectors/track,8924 cylinders
              Units=cylinders of 16065*512=8225280 bytes

Device Boot Start End Blocks Id System
/dev/sda1 * 1 13 104391 83 Linux
/dev/sda2   14 459 3582495 83 Linux
/dev/sda3   460 524 522112+ 82 Linux swap
/dev/sda4   525 8924 67473000 5 Extended
/dev/sda5   525 1041 4152771 83 Linux
/dev/sda6   1042 1106 522081 83 Linux
/dev/sda7   1107 8924 62798053+ 83 Linux


注意對應的Blocks的大小是否與母盤一致!!
Command (m for help ) :w             (保存並退出)

5.6建立新分區的文件系統:
       mkfs –t ext3 /dev/sda7     (小心操作,一定要注意是不是你所要建立的分區)
5.7建立新分區卷標:
       tune2fs –L/store /dev/sda7  (卷標自己根據需要定)
5.8加載新分區
       mkdir /store
       mount –t ext3 /dev/sda7 /store

-------------------------------

arrow
arrow
    全站熱搜
    創作者介紹
    創作者 安德森 的頭像
    安德森

    安德森技術備忘板

    安德森 發表在 痞客邦 留言(1) 人氣()