четверг, 28 февраля 2013 г.

VMWare ошибка при создании datastore "HostDatastoreSystem.QueryVmfsDatastoreCreateOptions"

Достаточно хорошо освященная тема про неумение VMWare работать с размеченными GPT разделами.
Неплохо освещено здесь: http://www.vexperienced.co.uk/2012/01/02/error-adding-datastores-to-esxi-resolved-using-partedutil/

~ # fdisk -l
***
*** The fdisk command is deprecated: fdisk does not handle GPT partitions.  Please use partedUtil
***
Disk /dev/disks/t10.ATA_____ST160LT0152D1AE141___________________________________W19030J7: 160.0 GB, 160041885696 bytes
255 heads, 63 sectors/track, 19457 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes

                                                                                Device Boot      Start         End      Blocks  Id System
/dev/disks/t10.ATA_____ST160LT0152D1AE141___________________________________W19030J7p1   *           1       18937   152108032  83 Linux
/dev/disks/t10.ATA_____ST160LT0152D1AE141___________________________________W19030J7p2           18937       19458     4179969   5 Extended
/dev/disks/t10.ATA_____ST160LT0152D1AE141___________________________________W19030J7p5           18937       19458     4179968  82 Linux swap
Found valid GPT with protective MBR; using GPT

Disk /dev/disks/mpx.vmhba32:C0:T0:L0: 3915776 sectors, 3824K
Logical sector size: 512
Disk identifier (GUID): d53758d8-1fc0-4e83-8292-9cbf38a539fb
Partition table holds up to 128 entries
First usable sector is 34, last usable sector is 3915742

Number  Start (sector)    End (sector)  Size       Code  Name
   1              64            8191        8128   0700
   5            8224          520191        499K   0700
   6          520224         1032191        499K   0700
   7         1032224         1257471        219K   0700
   8         1257504         1843199        571K   0700
Рекомендуют вместо классического fdisk'а пользоваться partedUtil

~ # partedUtil
Not enough arguments

Usage:
 Get Partitions : get <diskName>
 Set Partitions : set <diskName> ["partNum startSector endSector type attr"]*
 Delete Partition : delete <diskName> <partNum>
 Resize Partition : resize <diskName> <partNum> <start> <end>
 Get Partitions : getptbl <diskName>
 Set Partitions : setptbl <diskName> <label> ["partNum startSector endSector type/guid attr"]*
 Fix Partition Table : fix <diskName>
 Create New Label (all existing data will be lost): mklabel <diskName> <label>
 Show commonly used partition type guids : showGuids
 Get usable first and last sectors : getUsableSectors <diskName>
 Fix GPT Table interactively : fixGpt <diskName>
---

~ # ls /dev/disks
mpx.vmhba32:C0:T0:L0
mpx.vmhba32:C0:T0:L0:1
mpx.vmhba32:C0:T0:L0:5
mpx.vmhba32:C0:T0:L0:6
mpx.vmhba32:C0:T0:L0:7
mpx.vmhba32:C0:T0:L0:8
t10.ATA_____ST160LT0152D1AE141___________________________________W19030J7
t10.ATA_____ST160LT0152D1AE141___________________________________W19030J7:1
t10.ATA_____ST160LT0152D1AE141___________________________________W19030J7:2
t10.ATA_____ST160LT0152D1AE141___________________________________W19030J7:5
vml.0000000000766d68626133323a303a30
vml.0000000000766d68626133323a303a30:1
vml.0000000000766d68626133323a303a30:5
vml.0000000000766d68626133323a303a30:6
vml.0000000000766d68626133323a303a30:7
vml.0000000000766d68626133323a303a30:8
vml.01000000002020202020202020202020205731393033304a3753543136304c
vml.01000000002020202020202020202020205731393033304a3753543136304c:1
vml.01000000002020202020202020202020205731393033304a3753543136304c:2
vml.01000000002020202020202020202020205731393033304a3753543136304c:5
-



Диски с :# как раз и есть GPT подразделы, которые нужно "прибить", при этом, vml.*** - это ссылки, их трогать не нужно.
В моем случае командой вида partedUtil mklabel /dev/disks/<disk id> msdos нужно было переразметить только диск вида t10.***
---
~ # partedUtil mklabel /dev/disks/t10.ATA_____ST160LT0152D1AE141________________
___________________W19030J7 msdos
~ # ls /dev/disks
mpx.vmhba32:C0:T0:L0
mpx.vmhba32:C0:T0:L0:1
mpx.vmhba32:C0:T0:L0:5
mpx.vmhba32:C0:T0:L0:6
mpx.vmhba32:C0:T0:L0:7
mpx.vmhba32:C0:T0:L0:8
t10.ATA_____ST160LT0152D1AE141___________________________________W19030J7
vml.0000000000766d68626133323a303a30
vml.0000000000766d68626133323a303a30:1
vml.0000000000766d68626133323a303a30:5
vml.0000000000766d68626133323a303a30:6
vml.0000000000766d68626133323a303a30:7
vml.0000000000766d68626133323a303a30:8
vml.01000000002020202020202020202020205731393033304a3753543136304c

Подразделы удалены, теперь диск можно использовать под datastore.