Chinaunix首页 | 论坛 | 博客
  • 博客访问: 90994855
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: LINUX

2008-05-01 09:29:31

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

g4l要求有一块空闲的硬盘或者分区以保存映象文件,g4l原理是利用dd命令备份硬盘分区信息及存有数据的扇区,空闲的扇区并不被保存。g4l提供了fg4l控制台图形前端,采用ncures GUI库编写,初次用g4l可以用fg4l熟悉操作。



下载ISO文件刻录成光盘或者在VM中加载启动。



放入g4l光盘,启动画面显示:

  F1 选择核心版本 F2 预备映象 F3 启动 F4 条款说明

  选择一个核心启动进入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. 为CENTOS5增加一个虚拟硬盘(目标盘),大小和系统盘一样(母盘)。1.3。启动CENTOS5,把目标盘分成一个区,建立EXT3文件系统。不挂载。重启。1.4。用G4L ISO启动系统。用其默认核心系统启动。1.5。#sh g4l,启动G4L系统 选择%26ldquo;RAW MODE %26rdquo; 选择%26rdquo;CLICK N CLONE%26ldquo; 整盘克隆。 选择母盘 SELECT SOURCE 选择目标盘 SELECT TARGET 选择%26rdquo;CLICK N CLONE%26ldquo; 确认。1.6。完成后,退出G4L,关机,把母盘删除,目标盘挂载到母盘位置,从硬盘启动。 顺利启动,检查,一切和原来一样。

恢复测试:新加一个虚拟磁盘,用G4L把CENTOS系统从子盘恢复到子子盘。 过程略,和上面一样。

备注:假如目标盘容量》母盘,DISK TO DISK后,目标盘默认能用的容量和母盘一样大。解决方法:------------------------------- 1.1检查母盘的分区情况并记录: # df %26ndash;h /dev/sda2 3.4G / /dev/sda1 99M /boot /dev/sda5 3.6G /var /dev/sda6 494M /tmp 1.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

1.3关机,将母盘下掉,然后将子盘设置成启动:1.4顺利启动进入了系统,看来G4L确实能够解决所担心的启动问题。^_^1.5检查子盘的分区情况并记录: # df %26ndash;h /dev/sda2 3.4G / /dev/sda1 99M /boot /dev/sda5 3.6G /var /dev/sda6 494M /tmp这里可以看到G4L是按照母盘的分区情况来进行克隆的,可是多余的容量去哪了呢?1.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 ) : nNo free sectors available没有多余的空间??? Command (m for help ) : v显示还有60G左右的空间没有使用,怎么可能没有多余的空间呢?有点希奇~~ 尝试着将最后一个分区删掉,然后新增分区,以为可能会找回丢失的容量Command (m for help ) : dPartition number (1-6): 6Command (m for help ) : nFirst 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 actione extended p Primary partion (1-4)e (输入e ,创建Extended分区)Select partion 4First 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): 1041Command (m for help ) :n(新建原来的sda6分区,同样注重一定要与原来的起始与结束的柱面一致)First cylinder (1042-8924,default 1042):回车Last Cylinder or +size or +sizeM or +sizeX (1042-8924,default 8924): 1106Command (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 ) :pDisk /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 (保存并退出) 1.6建立新分区的文件系统: mkfs %26ndash;t ext3 /dev/sda7 (小心操作,一定要注重是不是你所要建立的分区)1.7建立新分区卷标: tune2fs %26ndash;L/store /dev/sda7 (卷标自己根据需要定)1.8加载新分区 mkdir /store mount %26ndash;t ext3 /dev/sda7 /store

阅读(278) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~