Windows系统备份可以用ghost工具软件完成,Linux系统不能完全依赖于ghost工具,一则是ghost本身是有版权的软件,二则ghost只支持ext2、ext3文件系统的Linux分区,不支持reiserfs、xfs等比较高级的文件系统,ghost本身并不备份mbr,因此常造成恢复后的系统grub出错的问题。linux本身自带有着优秀的备份工具,传统如:tar、cpio、dd,新的有:bzip2、afio等。这里介绍两款备份整个Linux系统,类似于ghost的工具:ghostforlinux和partitionimageforlinux。g4l和partitionimage软件都有光盘映像版。1。g4l=11Array810下载ISO文件刻录成光盘或者在VM中加载启动。放入g4l光盘,启动画面显示:F1选择核心版本F2准备映象F3启动F4条款说明g4l要求有一块空闲的硬盘或者分区以保存映象文件,g4l原理是利用dd命令备份硬盘分区信息及存有数据的扇区,空闲的扇区并不被保存。g4l提供了fg4l控制台图形前端,采用ncuresGUI库编写,初次用g4l可以用fg4l熟悉操作。选择一个核心启动进入g4l系统,出现sh#提示符时,输入fg4l命令进入操作界面,或者执行g4l命令,格式如下:g4lFTP服务器IP映象文件全名用户名:口令dhcp目录以指定的帐号备份linux系统到指定FTP服务器的指定目录下的映象文件。像:g4l1Array2.168.0.1test.lzouser:passdhcp/img2。partitionimage该软件易用性比g4l好一些,全图形界面,带向导。采用它备份一台安装好的Linux系统,再将映象恢复到其他有着相同硬件配置的电脑上,则可以快速克隆一套一模一样的Linux系统。此软件速度上比g4l快,建议使用此款软件作linux系统备份。可能是由于晚上上网的原因,partitionimage官方网站一直上不去,没有下载,在此不继续做使用讨论,以屏幕截图来看,此款软件好于g4l。3.以上两款软件都要求有FTP服务器,以存放备份映像文件。**************************************************************************G4L备份CENTOS5系统过程(几乎和操作GHOST一样)。200705环境:WINXP+VM+CENTOS5目标:DISKTODISK备份CENTOS。1.1.下载G4Liso。刻录成光盘或者用VM加载都行。1.2.为CENTOS4。3增加一个虚拟硬盘(目标盘),大小和系统盘一样(母盘)。1.3。启动CENTOS4。3,把目标盘分成一个区,建立EXT3文件系统。不挂载。重启。1.4。用G4LISO启动系统。用其默认核心系统启动。1.5。#shg4l,启动G4L系统选择“RAWMODE”选择”CLICKNCLONE“整盘克隆。选择母盘SELECTSOURCE选择目标盘SELECTTARGET选择”CLICKNCLONE“确认。1.6。完成后,退出G4L,关机,把母盘删除,目标盘挂载到母盘位置,从硬盘启动。顺利启动,检查,一切和原来一样。恢复测试:新加一个虚拟磁盘,用G4L把CENTOS系统从子盘恢复到子子盘。过程略,和上面一样。备注:如果目标盘容量》母盘,DISKTODISK后,目标盘默认能用的容量和母盘一样大。解决方法:-------------------------------5.1检查母盘的分区情况并记录:#df?h/dev/sda23.4G//dev/sda1ArrayArrayM/boot/dev/sda53.6G/var/dev/sda64Array4M/tmp5.2检查母盘的分区表并记录#fdisk/dev/sdaCommand(mforhelp):pDisk/dev/sda:Array105M,Array105018880bytes255heads,63sectors/track,1106cylindersUnits=cylindersof16065*512=8225280bytesDeviceBootStartEndBlocksIdSystem/dev/sda1*1131043Array183Linux/dev/sda21445Array35824Array583Linux/dev/sda3460524522112+82Linuxswap/dev/sda452511064674Array155Extended/dev/sda55251041415277183Linux/dev/sda61042110652208183Linux5.3关机,将母盘下掉,然后将子盘设置成启动:5.4顺利启动进入了系统,看来G4L确实能够解决所担心的启动问题。^_^5.5检查子盘的分区情况并记录:#df?h/dev/sda23.4G//dev/sda1ArrayArrayM/boot/dev/sda53.6G/var/dev/sda64Array4M/tmp这里可以看到G4L是按照母盘的分区情况来进行克隆的,可是多余的容量去哪了呢?5.5查看子系统分区表:#fdisk/dev/sdaCommand(mforhelp):pDisk/dev/sda:73.4G,734023Array8720bytes255heads,63sectors/track,8Array24cylindersUnits=cylindersof16065*512=8225280bytes####这里的734023Array8720bytes=8Array24*16065*512#######DeviceBootStartEndBlocksIdSystem/dev/sda1*1131043Array183Linux/dev/sda21445Array35824Array583Linux/dev/sda3460524522112+82Linuxswap/dev/sda452511064674Array155Extended/dev/sda55251041415277183Linux/dev/sda61042110652208183Linux分区表上显示的与母盘一致。尝试着在最后增加新的分区:Command(mforhelp):nNofreesectorsavailable没有多余的空间???Command(mforhelp):v显示还有60G左右的空间没有使用,怎么可能没有多余的空间呢?有点奇怪~~尝试着将最后一个分区删掉,然后新增分区,以为可能会找回丢失的容量Command(mforhelp):dPartitionnumber(1-6):6Command(mforhelp):nFirstcylinder(1042-1106,default1042):这里让我有点担心了,剩余的空间怎么会是:1042-1106呢?这个空间就是刚才删除的那个分区的空间啊,看来什么地方有点问题。继续查看分区表,发现:/dev/sda452511064674Array155Extended原来是这里的Extended已经将最后的结束柱面指定为1106了,只要修改成8Array24应该就可以找回丢失的容量,原因找到了,马上动手。Command(mforhelp):d(删除分区)Partitionnumber(1-5):4(这里的4是sda4,Extended)Command(mforhelp):pDisk/dev/sda:73.4G,734023Array8720bytes255heads,63sectors/track,8Array24cylindersUnits=cylindersof16065*512=8225280bytesDeviceBootStartEndBlocksIdSystem/dev/sda1*1131043Array183Linux/dev/sda21445Array35824Array583Linux/dev/sda3460524522112+82LinuxswapCommand(mforhelp):n(新建Extended分区)CommandactioneextendedpPrimarypartion(1-4)e(输入e,创建Extended分区)Selectpartion4Firstcylinder(525-8Array24,default525):回车(终于看到8Array24了,^_^)LastCylinderor+sizeor+sizeMor+sizeX(525-8Array24,default8Array24):回车Command(mforhelp):pDisk/dev/sda:73.4G,734023Array8720bytes255heads,63sectors/track,8Array24cylindersUnits=cylindersof16065*512=8225280bytesDeviceBootStartEndBlocksIdSystem/dev/sda1*1131043Array183Linux/dev/sda21445Array35824Array583Linux/dev/sda3460524522112+82Linuxswap/dev/sda45258Array24674730005ExtendedCommand(mforhelp):n(新建原来的sda5分区,注意一定要与原来的起始与结束的柱面一致)Firstcylinder(525-8Array24,default525):回车LastCylinderor+sizeor+sizeMor+sizeX(525-8Array24,default8Array24):1041Command(mforhelp):n(新建原来的sda6分区,同样注意一定要与原来的起始与结束的柱面一致)Firstcylinder(1042-8Array24,default1042):回车LastCylinderor+sizeor+sizeMor+sizeX(1042-8Array24,default8Array24):1106Command(mforhelp):n(新建多余空间的分区)Firstcylinder(1107-8Array24,default1107):回车LastCylinderor+sizeor+sizeMor+sizeX(1107-8Array24,default8Array24):回车(全部做为新的分区,也可以继续进行细分,看个人需要了)####查看所有的分区情况####Command(mforhelp):pDisk/dev/sda:73.4G,734023Array8720bytes255heads,63sectors/track,8Array24cylindersUnits=cylindersof16065*512=8225280bytesDeviceBootStartEndBlocksIdSystem/dev/sda1*1131043Array183Linux/dev/sda21445Array35824Array583Linux/dev/sda3460524522112+82Linuxswap/dev/sda45258Array24674730005Extended/dev/sda55251041415277183Linux/dev/sda61042110652208183Linux/dev/sda711078Array24627Array8053+83Linux注意对应的Blocks的大小是否与母盘一致!!Command(mforhelp):w(保存并退出)5.6建立新分区的文件系统:mkfs?text3/dev/sda7(小心操作,一定要注意是不是你