参考地址:http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1036609


这是我重建的vmfs分区分别是LUN01_50GB,LUN02_70GB。在client中看到的如图,注意带 ":1"

恢复丢失的VMFS分区-适用于esxi5

恢复丢失的VMFS分区-适用于esxi5


这是我挂载的两个iscsi设备红框内2个。通过esxi shell 看看命令下的分区。

红色的就是上两张图分别表示的,带“:1”的表示是vmfs分区,

~ # ls /vmfs/devices/disks/

mpx.vmhba1:C0:T0:L0                                             vml.0000000000766d686261313a303a30

mpx.vmhba1:C0:T0:L0:1                                           vml.0000000000766d686261313a303a30:1

mpx.vmhba1:C0:T0:L0:2                                           vml.0000000000766d686261313a303a30:2

mpx.vmhba1:C0:T0:L0:3                                           vml.0000000000766d686261313a303a30:3

mpx.vmhba1:C0:T0:L0:5                                           vml.0000000000766d686261313a303a30:5

mpx.vmhba1:C0:T0:L0:6                                           vml.0000000000766d686261313a303a30:6

mpx.vmhba1:C0:T0:L0:7                                           vml.0000000000766d686261313a303a30:7

mpx.vmhba1:C0:T0:L0:8                                           vml.0000000000766d686261313a303a30:8

t10.FreeBSD_iSCSI_Disk______000c29ae3a55000_________________    vml.020000000030000000f85265f3695343534920

t10.FreeBSD_iSCSI_Disk______000c29ae3a55000_________________:1  vml.020000000030000000f85265f3695343534920:1

t10.FreeBSD_iSCSI_Disk______000c29ae3a55001_________________    vml.0200010000300000000a39e6f0695343534920

t10.FreeBSD_iSCSI_Disk______000c29ae3a55001_________________:1  vml.0200010000300000000a39e6f0695343534920:1
 
注释:

/vmfs/devices/disks/t10.FreeBSD_iSCSI_Disk______000c29ae3a55000_________________  (这是LUN)

/vmfs/devices/disks/t10.FreeBSD_iSCSI_Disk______000c29ae3a55000_________________:1  (这是datastore)

接下来查看该LUN的扇区数。红色部分为Device id,

~ # partedUtil getptbl /vmfs/devices/disks/t10.FreeBSD_iSCSI_Disk______000c29ae3a55000_________________

gpt
6527 255 63 104857600
1 2048 104857566 AA31E02A400F11DB9590000C2911D1B8 vmfs 0

 #如上所示“1—partition number, 2048—vmfs 5.0 starting sector,  104857566 — ending sector” 

接下来,我们查看一下我们LUN01_50GB分区下的虚拟机文件,是咱们将来放虚拟机的地方,数据重要。

恢复丢失的VMFS分区-适用于esxi5


然后,我们把LUN01_50GB分区邮件删除分区,进行分区删除。模拟分区丢失!!!一定要在注意风险,切勿实际工作中使用。

partedUtil delete "/vmfs/devices/disks/t10.FreeBSD_iSCSI_Disk______000c29ae3a55000_________________" 1

删除后【数据存储】这里就看不到LUN01_50GB了,但在【设备】是可以看到的。

恢复丢失的VMFS分区-适用于esxi5

刷新后在挂载的设备已经看不到分区了。

恢复丢失的VMFS分区-适用于esxi5

这是LUN02(参照)的对比。

恢复丢失的VMFS分区-适用于esxi5


那现在命令查看一下吧:

~ # ls /vmfs/devices/disks/

mpx.vmhba1:C0:T0:L0                                             vml.0000000000766d686261313a303a30

mpx.vmhba1:C0:T0:L0:1                                           vml.0000000000766d686261313a303a30:1

mpx.vmhba1:C0:T0:L0:2                                           vml.0000000000766d686261313a303a30:2

mpx.vmhba1:C0:T0:L0:3                                           vml.0000000000766d686261313a303a30:3

mpx.vmhba1:C0:T0:L0:5                                           vml.0000000000766d686261313a303a30:5

mpx.vmhba1:C0:T0:L0:6                                           vml.0000000000766d686261313a303a30:6

mpx.vmhba1:C0:T0:L0:7                                           vml.0000000000766d686261313a303a30:7

mpx.vmhba1:C0:T0:L0:8                                           vml.0000000000766d686261313a303a30:8

t10.FreeBSD_iSCSI_Disk______000c29ae3a55000_________________    vml.020000000030000000f85265f3695343534920

t10.FreeBSD_iSCSI_Disk______000c29ae3a55001_________________    vml.0200010000300000000a39e6f0695343534920

t10.FreeBSD_iSCSI_Disk______000c29ae3a55001_________________:1  vml.0200010000300000000a39e6f0695343534920:1

~ # 

t10.FreeBSD_iSCSI_Disk______000c29ae3a55000_________________    vml.020000000030000000f85265f3695343534920

这个下面已经没有:1了。


用partedUtil查看,发现没有了分区

~ # partedUtil getptbl /vmfs/devices/disks/t10.FreeBSD_iSCSI_Disk______000c29ae3a55000_________________

gpt
6527 255 63 104857600
~ #

而LUN02_70GB下就有。这个是LUN02(参照)

恢复丢失的VMFS分区-适用于esxi5

其实这次把lun01_50GB删除后,只是把VMFS分区表删除了,我们把他恢复出来吧。


----恢复分区---

利用partedUtil创建新的分区表:


partedUtil setptbl "/vmfs/devices/disks/t10.FreeBSD_iSCSI_Disk______000c29ae3a55001_________________" gpt "1 2048 104857566 AA31E02A400F11DB9590000C2911D1B8 0"


1 表示第一个分区,是主分区。2048表示vmfs-5分区开始扇区 。

AA31E02A400F11DB9590000C2911D1B8 是VMFS GUID 其他都照着写就是了。

除了红的以外都是固定格式,104857566 这个是LUN01_50GB扇区数,这个数是VMFS卷扇区数减去vmfs头部占用的34个分区得来的。
看这条命令吧,这里的这些参数都是从下图这里得来

恢复丢失的VMFS分区-适用于esxi5


恢复完成之后,挂载一下吧,也可以点一下全部重新扫描:
恢复出LUN0_50GB分区了,看看数据是否在。

恢复丢失的VMFS分区-适用于esxi5

恢复丢失的VMFS分区-适用于esxi5

恢复丢失的VMFS分区-适用于esxi5