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
。
g 4l
和
partition image
软件都有光盘映像版。
1
。
g 4l
[url]http://sourceforge.net/project/showfiles.php?group_id=119810[/url]
下载
ISO
文件刻录成光盘或者在
VM
中加载启动。
放入
g 4l
光盘,启动画面显示:
F1
选择核心版本
F2
准备映象
F3
启动
F4
条款说明
g 4l
要求有一块空闲的硬盘或者分区以保存映象文件,
g 4l
原理是利用
dd
命令备份硬盘分区信息及存有数据的扇区,空闲的扇区并不被保存。
g 4l
提供了
fg 4l
控制台图形前端,采用
ncures GUI
库编写,初次用
g 4l
可以用
fg 4l
熟悉操作。
选择一个核心启动进入
g 4l
系统,出现
sh#
提示符时,输入
fg 4l
命令进入操作界面,或者执行
g 4l
命令,格式如下:
g 4l FTP
服务器
IP
映象文件全名 用户名
:
口令
dhcp
目录
以指定的帐号备份
linux
系统到指定
FTP
服务器的指定目录下的映象文件。
像:
g 4l 192.168.0.1 test.lzo user:pass dhcp /img
2
。
partition image
该软件易用性比
g 4l
好一些,全图形界面,带向导。采用它备份一台安装好的
Linux
系统,再将映象恢复到其他有着相同硬件配置的电脑上,则可以快速克隆一套一模一样的
Linux
系统。此软件速度上比
g 4l
快,建议使用此款软件作
linux
系统备份。
可能是由于晚上上网的原因,
partition image
官方网站一直上不去,没有下载,在此不继续做使用讨论,以屏幕截图来看,此款软件好于
g 4l
。
3.
以上两款软件都要求有
FTP
服务器,以存放备份映像文件。
**************************************************************************
G 4L
备份
CENTOS5
系统过程(几乎和操作
GHOST
一样)。
200705
环境:
WINXP+VM+CENTOS
5
目标:
DISK TO DISK
备份
CENTOS
。
1.1.
下载
G 4L iso
。刻录成光盘或者用
VM
加载都行。
1.2.
为
CENTOS4
。
3
增加一个虚拟硬盘(目标盘),大小和系统盘一样(母盘)。
1.3
。启动
CENTOS4
。
3
,把目标盘分成一个区,建立
EXT3
文件系统。不挂载。重启。
1.4
。用
G 4L ISO
启动系统。用其默认核心系统启动。
1.5
。
#sh g 4l ,
启动
G 4L
系统
选择
“RAW MODE ”
选择
”CLICK N CLONE“
整盘克隆。
选择母盘
SELECT SOURCE
选择目标盘
SELECT TARGET
选择
”CLICK N CLONE“
确认。
1.6
。完成后,退出
G 4L
,关机,把母盘删除,目标盘挂载到母盘位置,从硬盘启动。
顺利启动,检查,一切和原来一样。
恢复测试
:新加一个虚拟磁盘,用
G 4L
把
CENTOS
系统从子盘恢复到子子盘。
过程略,和上面一样。
备注:
如果目标盘容量》母盘,
DISK TO DISK
后,目标盘默认能用的容量和母盘一样大。
解决方法:
-------------------------------
5
.
1
检查母盘的分区情况并记录:
# df �Ch
/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
顺利启动进入了系统,看来
G 4L
确实能够解决所担心的启动问题。
^_^
5
.
5
检查子盘的分区情况并记录:
# df �Ch
/dev/sda2 3.4G /
/dev/sda1 99M /boot
/dev/sda5 3.6G /var
/dev/sda6 494M /tmp
这里可以看到
G 4L
是按照母盘的分区情况来进行克隆的,可是多余的容量去哪了呢?
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 �Ct ext3 /dev/sda7
(小心操作,一定要注意是不是你所要建立的分区)
5
.
7
建立新分区卷标:
tune2fs �CL/store /dev/sda7
(卷标自己根据需要定)
5
.
8
加载新分区
mkdir /store
mount �Ct ext3 /dev/sda7 /store