Vmware-vdiskmanager

From VI-Toolkit
Revision as of 17:46, 22 November 2015 by Wila (talk | contribs) (→‎Peculiarities)
Jump to navigation Jump to search

vmware-vdiskmanager

With this tool that comes with VMware Workstation and VMware Fusion you can perform special disk actions such as:

  • shrink
  • defragment
  • repair

Peculiarities

  • VMware vdisk manager throws a bogus error in all version from VMware Workstation 7 to Workstation 11, Fusion 3 to Fusion 7

The error looks like:

 VixDiskLib: Invalid configuration file parameter. Failed to read configuration file.

and can be safely ignored.

This has been fixed in Fusion 8 / Workstation 12.0

  • Disk repair option -R was mostly broken from Workstation 8 to Workstation 11.

This should also work much better since Fusion 8 / Workstation 12.0

  • You cannot reduce the capacity of a virtual disk. Eg. if you have defined a virtual disk of 10GB in size then you cannot change it to be 8GB in size. This is because any resizing the tool does is irregardless of the partition definitions, as this is potentially a desctructive operation it is not allowed.

Even if you grow a disk in size you will have to adjust the partitions after the resize.

You can shrink a disk if you have a non pre allocated disk, in this case it will wipe out the unused parts on your disk and give that space back to the host OS.

Command line help

Here's an excerpt from the command line help:

 VMware Virtual Disk Manager - build 3160714.
 Usage: vmware-vdiskmanager.exe OPTIONS <disk-name> | <mount-point>
 Offline disk manipulation utility
   Operations, only one may be specified at a time:
      -c                   : create disk.  Additional creation options must be specified.  Only local virtual disks can be
                             created.
      -d                   : defragment the specified virtual disk. Only local virtual disks may be defragmented.
      -k                   : shrink the specified virtual disk. Only local virtual disks may be shrunk.
      -n <source-disk>     : rename the specified virtual disk; need to specify destination disk-name. Only local virtual
                             disks may be renamed.
      -p                   : prepare the mounted virtual disk specified by the mount point for shrinking.
      -r <source-disk>     : convert the specified disk; need to specify destination disk-type.  For local destination disks
                             the disk type must be specified.
      -x <new-capacity>    : expand the disk to the specified capacity. Only local virtual disks may be expanded.
      -R                   : check a sparse virtual disk for consistency and attempt to repair any errors.
      -e                   : check for disk chain consistency.
      -D                   : make disk deletable.  This should only be used on disks that have been copied from another product.
 
   Other Options:
      -q                   : do not log messages
 
   Additional options for create and convert:
      -a <adapter>         : (for use with -c only) adapter type
                             (ide, buslogic, lsilogic). Pass lsilogic for other adapter types.
      -s <size>            : capacity of the virtual disk
      -t <disk-type>       : disk type id
 
   Disk types:
       0                   : single growable virtual disk
       1                   : growable virtual disk split in 2GB files
       2                   : preallocated virtual disk
       3                   : preallocated virtual disk split in 2GB files
       4                   : preallocated ESX-type virtual disk
       5                   : compressed disk optimized for streaming
       6                   : thin provisioned virtual disk - ESX 3.x and above
 
      The capacity can be specified in sectors, KB, MB or GB.
      The acceptable ranges:
                            ide/scsi adapter : [1MB, 8192.0GB]
                            buslogic adapter : [1MB, 2040.0GB]
         ex 1: vmware-vdiskmanager.exe -c -s 850MB -a ide -t 0 myIdeDisk.vmdk
         ex 2: vmware-vdiskmanager.exe -d myDisk.vmdk
         ex 3: vmware-vdiskmanager.exe -r sourceDisk.vmdk -t 0 destinationDisk.vmdk
         ex 4: vmware-vdiskmanager.exe -x 36GB myDisk.vmdk
         ex 5: vmware-vdiskmanager.exe -n sourceName.vmdk destinationName.vmdk
         ex 6: vmware-vdiskmanager.exe -r sourceDisk.vmdk -t 4 -h esx-name.mycompany.com \
               -u username -f passwordfile "[storage1]/path/to/targetDisk.vmdk"
         ex 7: vmware-vdiskmanager.exe -k myDisk.vmdk
         ex 8: vmware-vdiskmanager.exe -p <mount-point>
               (A virtual disk first needs to be mounted at <mount-point>)

External links