==== Recuperar partición VMFS ====
Muchas veces podemos ver la Lun asociada al volumen pero no nos aparece la opción **keep existing signature** que permite añadir el datastore sin crear una nueva partición en él.
A veces es simplemente porque se ha corrompido por problemas con la conexión.
En mi caso parte de la siguiente conexión ISCSI vamos a obtener los valores que necesitamos
naa.6090a098c0168e3bf4f73591100c635a
iqn.2001-05.com.equallogic:0-8a0906-3b8e16c09-5a630c109135f7f4-volsasmvvdi
Lo primero es saber si el disco es visto por nuestro ESXi
esxcli storage core path list | grep naa.6090a098c0168e3bf4f73591100c635a
Para obtener información ejecutamos **partedUtil getptbl /vmfs/devices/disks/naaxxxxxxxxxxxxxxxxxxxxxxxxxxxx**
En mi caso
partedUtil getptbl /vmfs/devices/disks/naa.6090a098c0168e3bf4f73591100c635a
Que me da como resultado
gpt
133676 255 63 2147512320
Si la paritición no comienza “1” o “vmfs” indica que no es reconocida
Para recrear la partición tenemos que ejecutar partedUtil setptbl diskName label "partNum startSector endSector type/guid attr"
Para saber el sector de inicio
offset="128 2048"; for dev in `esxcfg-scsidevs -l | grep "Console Device:" | awk {'print $3'}`; do disk=$dev; echo $disk; partedUtil getptbl $disk; { for i in `echo $offset`; do echo "Checking offset found at $i:"; hexdump -n4 -s $((0x100000+(512*$i))) $disk; hexdump -n4 -s $((0x1300000+(512*$i))) $disk; hexdump -C -n 128 -s $((0x130001d + (512*$i))) $disk; done; } | grep -B 1 -A 5 d00d; echo "---------------------"; done
Resultado
/vmfs/devices/disks/naa.6090a098c0168e3bf4f73591100c635a
gpt
133676 255 63 2147512320
Checking offset found at 2048:
0200000 d00d c001
0200004
1400000 f15e 2fab
1400004
0140001d 64 73 76 61 72 31 35 35 73 61 73 6d 76 31 33 37 |dsvar155sasmv137|
0140002d 36 20 28 32 29 00 00 00 00 00 00 00 00 00 00 00 |6 (2)...........|
De aquí sacamos el valor del offset que según indica lo ha encontrado en 2048
El serctor de inicio en VMFS 5 es normalmente 2048 , salvo en losvolúmenes que han sido actualizados desde VMFS-3 a VMFS-5 que entonces comienzan en el sector 128
El valor de sector final lo sacamos del comando
partedUtil getUsableSectors /vmfs/devices/disks/naa.6090a098c0168e3bf4f73591100c635a
El código GUI que identifica al tipo que queremos para nuestro disco lo sacamos de partedUtil showGuids
Entonces para montar nuestra partición tenemos
* identificador del disco: naa.6090a098c0168e3bf4f73591100c635a
* sector inicial: 2048
* sector final: 2147512286
* Código GUI para almacenes VMFS: AA31E02A400F11DB9590000C2911D1B8
* attr: 0 (0 es lo normal, salvo que fuera arrancable que entonces sería 128 (0x80)
**partedUtil setptbl /vmfs/devices/disks/naa.6090a098c0168e3bf4f73591100c635a gpt "1 valoinicio valorfinal AA31E02A400F11DB9590000C2911D1B8 0"**
partedUtil setptbl /vmfs/devices/disks/naa.6090a098c0168e3bf4f73591100c635a gpt "1 2048 2147512286 AA31E02A400F11DB9590000C2911D1B8 0"
Ejecutamos vmkfstools -V para que proceda al montaje del volumen
==== Referencias ====
* http://vmwareinsight.com/Articles/2018/3/5802942/How-to-create-corrupt-or-missing-VMFS-Partition-table-using-partedUtil
* https://vmwars.wordpress.com/2018/10/26/re-create-missing-vmfs-label/
* https://virtualhobbit.com/2015/05/26/recovering-damaged-vmfs-partitions/
* https://kb.vmware.com/s/article/1036609?lang=en_US&queryTerm=partedutil
* https://vinfrastructure.it/2013/01/recovering-a-lost-partition-table-with-a-vmfs-datastore/
* https://virtualhobbit.com/2015/05/26/recovering-damaged-vmfs-partitions/
* https://vinfrastructure.it/2013/01/recovering-a-lost-partition-table-with-a-vmfs-datastore/