vmsd文件+服务器,VMWARE ESX中利用SnapShot(快照)文件恢复虚拟机数据

本文介绍了一种解决ESX虚拟机快照功能失效的方法,通过一系列步骤,包括删除虚拟机、创建新虚拟机、复制快照文件及修改配置文件等操作,成功恢复了虚拟机的快照。

硬件环境:DELL 2950

软件环境:Vmware ESX 3.5

故障情况:

1.ESX中一台redhat as4的虚拟机,以往做过几份快照,使用vmware convert将此虚拟机转移到另一台同配置的服务器上后,快照功能失效。

2.ESX本身因某些情况(如多次意外断电,我们这里前一阵就是,呵呵)小问题频繁出现,需要重新安装(保留VMFS分区数据的安装方式),重装后虚拟机的快照功能也会失效。

对于情况1和2,虚拟机都有快照文件,只是快照管理器无法读取,用以下思路可以恢复这些快照。

假设虚拟机名称为:LAMP-Linux

步骤如下:

1.删除虚拟机(remove from inventory)

2.ssh登陆ESX,将LAMP-Linux文件夹重命名为LAMP-Linux-bak

3.新建虚拟机,名字为LAMP-Linux,硬件配置与原始状态尽量相同(包括内存大小、处理器数量、网卡数量、硬盘控制器(bus or lsi)类型、硬盘大小等)

4.启动一下LAMP-Linux(主要是为了让虚拟机自动设定参数,特别是MAC地址信息)

5.建立一个快照(让虚拟机生成.vmsd文件),然后关闭虚拟机

6.打开LAMP-Linux-bak目录下LAMP-Linux.vmx文件,复制以下类似信息到LAMP-Linux目录下的LAMP-Linux.vmx文件末尾(追加快照记录,如果有就不用追加了)

/////参考我的

scsi0:0.redo = ""

ethernet0.generatedAddress = "00:0c:29:e8:fe:bb"

sched.swap.derivedName = "/vmfs/volumes/47fe12fd-86869702-0b07-001d0925d53c/LAMP-Linux/LAMP-Linux-345c6454.vswp"

ethernet0.generatedAddressOffset = "0"

tools.remindInstall = "TRUE"

checkpoint.vmState.readOnly = "FALSE"

checkpoint.vmState = ""

/////MAC地址最好修改一下

7.打开LAMP-Linux-bak目录下LAMP-Linux.vmsd文件(.vmsd文件里放的就是快照汇总配置信息)

/////参考我的

snapshot1.uid = "6"            ///当前快照编号

snapshot1.filename = "LAMP-Linux-Snapshot6.vmsn"    ///快照的实体文件

snapshot1.parent = "4"         ///父快照编号

snapshot1.displayName = "ok"

snapshot1.description = "ok"

snapshot1.type = "0"

snapshot1.createTimeHigh = "285982"

snapshot1.createTimeLow = "-356134487"

snapshot1.numDisks = "1"

snapshot1.disk0.fileName = "LAMP-Linux-000006.vmdk"      ///虚拟磁盘配置文件

snapshot1.disk0.node = "scsi0:0"

8.打开LAMP-Linux-bak目录下LAMP-Linux-000006.vmdk配置文件

/////参考我的

# Disk DescriptorFile

version=1

CID=cf51cee7

parentCID=023da485               ////注意这个参数

createType="vmfsSparse"

parentFileNameHint="LAMP-Linux.vmdk"          ///虚拟磁盘配置文件

# Extent description

RW 41943040 VMFSSPARSE "LAMP-Linux-000006-delta.vmdk"    /////虚拟磁盘实体文件

# The Disk Data Base

#DDB

ddb.toolsVersion = "0"

10.将LAMP-Linux-bak目录下的LAMP-Linux-000006-delta.vmdk、LAMP-Linux-000006.vmdk、LAMP-Linux-Snapshot6.vmsn3个文件复制到LAMP-Linux目录下

11.上面做的是实体文件的复制,接下来要让把这些实体文件“追加”上。

12.修改LAMP-Linux目录下的LAMP-Linux.vmsd文件,追加这些记录到文件末尾

/////参考我的

snapshot1.uid = "2"                 ///这里要修改,因为只做过一次快照,当前快照算是第二个

snapshot1.filename = "LAMP-Linux-Snapshot6.vmsn"

snapshot1.parent = "1"              ///这里要修改,因为只做过一次快照,父快照是第一个

snapshot1.displayName = "ok"

snapshot1.description = "ok"

snapshot1.type = "0"

snapshot1.createTimeHigh = "285982"

snapshot1.createTimeLow = "-356134487"

snapshot1.numDisks = "1"

snapshot1.disk0.fileName = "LAMP-Linux-000006.vmdk"    ///对应是虚拟磁盘配置文件

snapshot1.disk0.node = "scsi0:0"

12.查看LAMP-Linux目录下的LAMP-Linux.vmdk文件

/////参考我的

# Disk DescriptorFile

version=1

CID=023da485                  ////记录下这个CID

parentCID=ffffffff            ////ffffffff表示这是第一个快照,所以无父快照编号

createType="vmfs"

# Extent description

RW 41943040 VMFS "LAMP-Linux-flat.vmdk"

# The Disk Data Base

#DDB

ddb.toolsVersion = "0"

ddb.adapterType = "lsilogic"

ddb.geometry.sectors = "63"

ddb.geometry.heads = "255"

ddb.geometry.cylinders = "2610"

ddb.uuid = "60 00 C2 9f d5 b3 2c f3-3c 01 bf 9e c5 1e b1 5e"

ddb.virtualHWVersion = "4"

13.修改LAMP-Linux目录下的LAMP-Linux-000006.vmdk文件

将parentCID=023da485修改成这个(即第一个快照CID)

14.这样就把信息链接起来了,OK,启动虚拟机,打开快照管理器,应该看到“OK”字样的快照了,恢复吧。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值