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
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。
该软件易用性比g4l好一些,全图形界面,带向导。采用它备份一台安装好的Linux系统,再将映象恢复到其他有着相同硬件配置的电脑上,则可以快速克隆一套一模一样的Linux系统。此软件速度上比g4l快,建议使用此款软件作linux系统备份。
可能是由于晚上上网的原因,partition image官方网站一直上不去,没有下载,在此不继续做使用讨论,以屏幕截图来看,此款软件好于g4l。
![](http://linux.chinaitlab.com/UploadFiles_7565/200710/20071005112030250.jpg)
![]() ![]() |
![]() ![]() |
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
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
出处: http://blog.csdn.net/cai066/archive/2007/10/12/1821112.aspx
,原因找到了,马上动手。
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
出处: http://blog.csdn.net/cai066/archive/2007/10/12/1821112.aspx