RcMOTrorcEtotitraonMMi
ReflouejuigcAndblbErMtinnftlevInIlinlifisxlEtx
tenneMTFSAmtcfrlty1eOK.iKipchszkhNgi(rorirtfECloneonlyJGicncmtcin«gr-PIKrhc^kwffi:
口!
)>Mg亡SMIt^IbKJrsatAdE
4310
对于Windows系统映像,-rm-win-swap-hib选项非常有助于保存备份和恢复时间,它的做法是排除swap和hibernation文件。
如果需要将保存后的映像传递到另一个位置,并且需要在恢复映像时检查映像的完整性,那么建议使用-gm
或-gs选项。
ClonezillaLive还允许您在选择压缩方法时考虑到效率和期间的一些注意事
项。
一些文件系统不支持大于2G的文件,因此,可以通过将映像分解到多个卷文件,从而设置最大文件大小。
最后,可以使用-p参数指定一个动作,表示要在克隆过程结束后执行的动作。
完成设置后,现在来查看操作并确认您的选择。
备份和恢复过程都使用ocs-sr
工具,而带有相应参数的ocs-sr命令则作为记录提供,供以后使用。
现在,坐下来等待备份完成。
完成备份并启动系统之后,将映像目录从物理服务器传递到一个位置,这个位置将作为虚拟机的恢复源。
回页首
步骤2.准备虚拟机
从现在开始,我们将在VMwareServer内创建一个虚拟机作为系统迁移的目标。
确保主机环境与VMwareServer兼容并能满足guest操作系统需求和限制。
由于虚拟机将使用与主机相同的处理器作为基准,因此要求我们克隆的主机环境和
物理服务器具有兼容的处理器类型。
首先,使用VMwareNewVirtualMachineWizard创建虚拟机。
在此过程中,
选择和物理服务器中已克隆的操作系统相匹配的操作系统版本。
同时,需要创建
一个虚拟磁盘,它的大小必须等于或大于原始的已克隆的系统所在的分区,因为
Clonezilla不支持将映像从大硬盘或分区恢复到更小的硬盘或分区。
然而,在
ClonezillaLive恢复过程中,您将能够根据初始磁盘布局将映像恢复到大硬
盘。
图5.指定虚拟机的磁盘容量
Gd-thi5tnMontodtsptoytheVMwweScfwconhguratwi«ndcw,Fronnthewmdowyoucw*setaloftheserverconfigufa*w-optionsthat.effecttheoperAtionjndperforrham畔clwKt&rtrtKS孩the
serverI凸
注意:
对于早期VMwareServer版本,ClonezillaLive内核可能不支持SCSI磁盘。
在这种情况下,创建虚拟机时使用IDE类型的虚拟磁盘。
其次,将虚拟CD-ROM设备修改为对虚拟机使用ClonezillaLiveISO映像,
如图6所示。
图6.在VM中使用ClonezillaLiveISO映像
第三,将前面小节中的系统映像文件放到主机服务器的备用磁盘中,即
PhysicalDrive1的Partition0。
由于VMwareServer支持在主机系统上进行直通式(pass-through)SCSI驱动访问,因此可以为虚拟机添加另一个磁盘,将PhysicalDrive1的Partition0直接附加到VMware中。
在恢复阶段,这
个设备将呈现给/home/partimag。
图7.将系统映像附加到分区
现在,您已经创建了一个精简的虚拟机,接下来将从ClonezillaLive启动虚
拟机。
可页首步骤3.将映像恢复到虚拟机
当虚拟机从ClonezillaLive映像启动之后,ClonezillaLive为恢复提供了
和备份过程相同的基于GUI的向导界面,引导您选择模式。
在本例中,我们将直接输入基于Debian的ClonezillaLiveshell,以选择一个手动恢复。
下恢复映像,必须以根用户身份登录;随后可以
要在ClonezillaLiveshell完全地访问Clonezilla。
清单1.成为根用户
user@debian:
~$sudosu-
debian:
~#
现在,需要为恢复确定一个目标磁盘以及将要放置源映像的磁盘。
清单2展示
了两个本地硬盘。
清单2.查看磁盘信息
debian:
~#fdisk-l
Disk/dev/sda:
42.9GB,42949672960bytes
255heads,63sectors/track,5221cylinders
Units=cylindersof16065*512=8225280bytes
Diskidentifier:
0x00000000
Disk/dev/sdadoesn'tcontainavalidpartitiontable
Disk/dev/sdb:
160.0GB,160039272960bytes
255heads,63sectors/track,19457cylinders
Units=cylindersof16065*512=8225280bytesDiskidentifier:
0xa0bea0be
DeviceBootStartEndBlocks
IdSystem
/dev/sdb11194571562883217
HPFS/NTFS
我们将/dev/sda虚拟磁盘创建为恢复的目标磁盘;它尚未格式化。
/dev/sdb是主机服务器的PhysicalDrive1,我们将把它作为直通式SCSI磁盘直接附加到虚拟机;我们将在其上放置克隆后的系统映像。
要恢复克隆后的分区映像,必须将格式化后的目标虚拟磁盘提供给Clonezilla。
您可以使用fdisk工具将标签写到虚拟磁盘上。
该过程如清单3所示。
清单3.格式化目标磁盘
#fdisk/dev/sda
DevicecontainsneitheravalidDOSpartitiontable,nor
Sun,SGIorOSFdisklabel
BuildinganewDOSdisklabelwithdiskidentifier0xee2955bc.
Changeswillremaininmemoryonly,untilyoudecidetowritethem.
Afterthat,ofcourse,thepreviouscontentwon'tberecoverable.
Thenumberofcylindersforthisdiskissetto5221.
Thereisnothingwrongwiththat,butthisislargerthan
1024,
andcouldincertainsetupscauseproblemswith:
1)softwarethatrunsatboottime(e.g.,oldversionsof
LILO)
2)bootingandpartitioningsoftwarefromotherOSs
(e.g.,DOSFDISK,OS/2FDISK)
Warning:
invalidflag0x0000ofpartitiontable4willbecorrectedbyw(rite)
Command(mforhelp):
Commandaction
eextended
pprimarypartition(1-4)
P
Partitionnumber(1-4):
1
Firstcylinder(1-5221,default1):
Usingdefaultvalue1
Lastcylinderor+sizeor+sizeMor+sizeK(1-5221,default5221):
Usingdefaultvalue5221
Command(mforhelp):
Command(mforhelp):
w
Thepartitiontablehasbeenaltered!
Callingioctl()tore-readpartitiontable.
[866.679048]sd0:
0:
0:
0:
[sda]83886080512-bytehardwaresectors(42950MB)
[866.682658]sd0:
0:
0:
0:
[sda]WriteProtectisoff
[866.683795]sd0:
0:
0:
0:
[sda]Cachedataunavailable
[866.683822]sd0:
0:
0:
0:
[sda]Assumingdrivecache:
writethrough
[866.686443]sda:
sda1
[866.695530]sd0:
0:
0:
0:
[sda]83886080512-bytehardware
sectors(42950MB)
[866.698278]sd0:
0:
0:
0:
[sda]WriteProtectisoff
[866.699422]sd0:
0:
0:
0:
[sda]Cachedataunavailable
[866.699495]sd0:
0:
0:
0:
[sda]Assumingdrivecache:
writethrough
[868.702058]sda:
sda1
Syncingdisks.
我们可以使用清单3所示的默认值。
这一次,不需要关心分区类型,因为
Clonezilla将在映像恢复过程中重新创建它。
和备份过程一样,必须将一个可写设备或空间挂载为/home/partimag,
Clonezilla随后将在/home/partimag下搜索克隆后的映像目录。
如果要将分
区/dev/sdb1中的映像恢复到新创建的分区/dev/sda1中,必须使用写权限将
/dev/sdb1挂载到/home/partimag。
注意,/dev/sdb1在主机服务器上是一个
NTFS文件系统,它可能是公开的,因此要成功地挂载它,可能需要使用一个强制选项。
参见清单4。
清单4.将映像设备挂载到/home/partimag
debian:
~#mount-tntfs-3g/dev/sdbl/home/partimag-oforcedebian:
~#ls/home/partimag
Sys01-2009-02-23-img
当准备好/home/partimag和目标分区后,需要选择一种最佳方式来为您的环境恢复映像。
和备份一样,Clonezilla也为映像恢复提供了各种高级和灵活的选项。
图9展示了恢复参数及其含义。
对于Windows系统映像恢复,必须将启动头部(header)写入到目标磁盘中。
为此,推荐使用-j0(使用dd创建分区表)和-t1(客户机从syslinux恢复预构建的MBR。
hnXPC(X为0或1)选项可以确保您的环境拥有一个惟一的Windows机器名。
如果您不希望保持当前的目标分区布局,也可以尝试使用-k1或另一个分区参数来创建不同的分区表。
清单5从/home/partimag(/dev/sdbl)将映像Sys01-2009-02-23-img恢复
到目标设备/dev/sda1中。
清单5.使用命令行恢复映像
debian:
~#/opt/drbl/sbin/ocs-sr-e1auto-c-t1-r-j3-cm
-j0-prebootrestoreparts
"Sys01-2009-02-23-img""sda1"
图10展示了在确认选项后您将收到的摘要和进度更新。
在此之后,克隆后的系统将被放到虚拟机中。
图10.Clonezilla恢复摘要和进度
恢复完成后,可以看到系统将从虚拟机中启动。
为了获得更好的性能,需要为虚拟操作系统安装VMwareTools。
要确保在Windows上成功完成迁移,应当精通HAL并能够使用sysprep等工具来配置虚拟服务器,使它支持虚拟机环境。