# Managed Object - VirtualDiskManager(vim.VirtualDiskManager)

Property of
  ServiceContent
See also
  Datacenter, HostDiskDimensionsChs, VirtualDiskSpec, VirtualMachineProfileSpec
Since
  VI API 2.5

## Managed Object Description

Most VirtualDiskManager APIs will be DEPRECATED as of vSphere 6.5. Please use VStorageObjectManager APIs to manage Virtual disks.

This managed object type provides a way to manage and manipulate virtual disks on datastores. The source and the destination names are in the form of a URL or a datastore path.

A URL has the form

> scheme://authority/folder/path?dcPath=dcPath&dsName=dsName

where
- scheme is `http` or `https`.
- authority specifies the hostname or IP address of the VirtualCenter or ESX server and optionally the port.
- dcPath is the inventory path to the Datacenter containing the Datastore.
- dsName is the name of the Datastore.
- path is a slash-delimited path from the root of the datastore.

A datastore path has the form

> [datastore] path

where
- datastore is the datastore name.
- path is a slash-delimited path from the root of the datastore.
An example datastore path is "[storage] path/to/file.extension". A listing of all the files, disks and folders on a datastore can be obtained from the datastore browser.
See HostDatastoreBrowser

Properties

Name | Type | Description
--- | --- | ---
None

Methods

Methods defined in this Managed Object
CopyVirtualDisk_Task, CreateVirtualDisk_Task, DefragmentVirtualDisk_Task, DeleteVirtualDisk_Task, EagerZeroVirtualDisk_Task, ExtendVirtualDisk_Task, ImportUnmanagedSnapshot, InflateVirtualDisk_Task, MoveVirtualDisk_Task, QueryVirtualDiskFragmentation, QueryVirtualDiskGeometry, QueryVirtualDiskUuid, ReleaseManagedSnapshot, SetVirtualDiskUuid, ShrinkVirtualDisk_Task, ZeroFillVirtualDisk_Task

# CopyVirtualDisk_Task(copyVirtualDisk)

Copy a virtual disk, performing conversions as specified in the spec.

If source (or destination) name is specified as a URL, then the corresponding datacenter parameter may be omitted.

If source and destination resolve to the same file system location, the call has no effect, regardless of destSpec content.

Requires Datastore.FileManagement privilege on both source and destination datastores.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
sourceName | xsd:string | The name of the source, either a datastore path or a URL referring to the virtual disk to be copied.
sourceDatacenter* | ManagedObjectReference to a Datacenter | If `sourceName` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `sourceName` must be a URL.
destName | xsd:string | The name of the destination, either a datastore path or a URL referring to the virtual disk to be created.
destDatacenter* | ManagedObjectReference to a Datacenter | If `destName` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, it is assumed that the destination path belongs to the source datacenter.
destSpec* | VirtualDiskSpec | The specification of the virtual disk to be created. If not specified, a preallocated format and busLogic adapter type is assumed.
force* | xsd:boolean | The force flag is currently ignored. The FileAlreadyExists fault is thrown if the destination file already exists.

*Need not be set

Return Value

Type | Description
--- | ---
pbm.Task | This method returns a Task object with which to monitor the operation.

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs cloning the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the source or destination datastore.
InvalidDiskFormat | Thrown if the destination's format is not supported.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# CreateVirtualDisk_Task(createVirtualDisk)

Deprecated. as of vSphere 6.5, use HostCreateDisk_Task instead.

Create a virtual disk.

The datacenter parameter may be omitted if a URL is used to name the disk.

Requires Datastore.FileManagement privilege on the datastore where the virtual disk is created.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
name | xsd:string | The name of the disk, either a datastore path or a URL referring to the virtual disk to be created.
datacenter* | ManagedObjectReference to a Datacenter | If `name` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `name` must be a URL.
spec | VirtualDiskSpec | The specification of the virtual disk to be created.

*Need not be set

Return Value

Type | Description
--- | ---
pbm.Task | This method returns a Task object with which to monitor the operation.

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs creating the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# DefragmentVirtualDisk_Task(defragmentVirtualDisk)

Deprecated. as of vSphere 6.5, use DefragmentAllDisks instead.

Defragment a sparse virtual disk. This is defragmentation of the virtual disk file(s) in the host operating system, not defragmentation of the guest operating system filesystem inside the virtual disk.

The datacenter parameter may be omitted if a URL is used to name the disk.

Requires Datastore.FileManagement privilege on the datastore where the virtual disk resides.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
name | xsd:string | The name of the disk, either a datastore path or a URL referring to the virtual disk that should be defragmented.
datacenter* | ManagedObjectReference to a Datacenter | If `name` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `name` must be a URL.

*Need not be set

Return Value

Type | Description
--- | ---
pbm.Task | This method returns a Task object with which to monitor the operation.

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs defragmenting the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# DeleteVirtualDisk_Task(deleteVirtualDisk)

Deprecated. as of vSphere 6.5, use HostDeleteVStorageObject_Task instead.

Delete a virtual disk. All files relating to the disk will be deleted.

The datacenter parameter may be omitted if a URL is used to name the disk.

Requires Datastore.FileManagement privilege on the datastore where the virtual disk is removed.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
name | xsd:string | The name of the disk, either a datastore path or a URL referring to the virtual disk to be deleted.
datacenter* | ManagedObjectReference to a Datacenter | If `name` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `name` must be a URL.

*Need not be set

Return Value

Type | Description
--- | ---
pbm.Task | This method returns a Task object with which to monitor the operation.

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs deleting the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# EagerZeroVirtualDisk_Task(eagerZeroVirtualDisk)

Explicitly zero out unaccessed parts zeroedthick disk. Effectively a no-op if the disk is already eagerZeroedThick. Unlike zeroFillVirtualDisk, which wipes the entire disk, this operation only affects previously unaccessed parts of the disk.

The datacenter parameter may be omitted if a URL is used to name the disk.

Requires Datastore.FileManagement privilege on the datastore where the virtual disk resides.

Required Privileges
  System.View
Since
  vSphere API 4.0

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
name | xsd:string | The name of the disk, either a datastore path or a URL referring to the virtual disk that should be inflated.
datacenter* | ManagedObjectReference to a Datacenter | If `name` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `name` must be a URL.

*Need not be set

Return Value

Type | Description
--- | ---
pbm.Task | This method returns a Task object with which to monitor the operation.

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs while eager-zeroing the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# ExtendVirtualDisk_Task(extendVirtualDisk)

Deprecated. as of vSphere 6.5, use HostExtendDisk_Task instead.

Expand the capacity of a virtual disk to the new capacity. If the eagerZero flag is not specified, - the extended disk region of a zerothick disk will be zeroedthick - the extended disk region of a eagerzerothick disk will be eagerzeroedthick - a thin-provisioned disk will always be extended as a thin-provisioned disk. If the eagerZero flag TRUE, the extended region of the disk will always be eagerly zeroed. If the eagerZero flag FALSE, the extended region of a zeroedthick or eagerzeroedthick the disk will not be eagerly zeroed. This condition has no effect on a thin source disk.

The datacenter parameter may be omitted if a URL is used to name the disk.

Requires Datastore.FileManagement privilege on the datastore where the virtual disk resides.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
name | xsd:string | The name of the disk, either a datastore path or a URL referring to the virtual disk whose capacity should be expanded.
datacenter* | ManagedObjectReference to a Datacenter | If `name` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `name` must be a URL.
newCapacityKb | xsd:long | The new capacty of the virtual disk in Kb.
eagerZero* | xsd:boolean | If true, the extended part of the disk will be explicitly filled with zeroes. Since vSphere API 4.0

*Need not be set

Return Value

Type | Description
--- | ---
pbm.Task | This method returns a Task object with which to monitor the operation.

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs extending the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# ImportUnmanagedSnapshot(importUnmanagedSnapshot)

Import an unmanaged-snapshot from Virtual-Volume(VVol) enabled Storage Array.

Storage Array may support users to take snapshots indepedent of VMware stack. Such copies or snapshots are known as 'Unmanaged-Snapshots'. We are providing an ability to end-users to import such unmanaged-snapshots as Virtual Disks.

End-user needs to know the VVol-Identifier to import unmanaged snapshot as VirtualDisk.

Once VirtualDisk is created, user can use 'Datastore Browser' to use with rest of Virtual Machine provisioning APIs.

Required Privileges
  System.View
Since
  vSphere API 6.0

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
vdisk | xsd:string | - The name of the disk to import, either a datastore path or a URL referring to the virtual disk from which to get geometry information.
datacenter* | ManagedObjectReference to a Datacenter | If `vdisk` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `vdisk` must be a URL.
vvolId | xsd:string | - unmanaged snapshot identifier

*Need not be set

Return Value

Type | Description
--- | ---
None

Faults

Type | Description
--- | ---
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
NotFound | Thrown if VVol is not found
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pbm="urn:pbm" name="ImportUnmanagedSnapshot" type="pbm:ImportUnmanagedSnapshotRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pbm="urn:pbm" name="ImportUnmanagedSnapshotResponse"> <complexType/> </element>

# InflateVirtualDisk_Task(inflateVirtualDisk)

Deprecated. as of vSphere 6.5, use HostInflateDisk_Task instead.

Inflate a sparse or thin-provisioned virtual disk up to the full size. Additional space allocated to the disk as a result of this operation will be filled with zeroes.

The datacenter parameter may be omitted if a URL is used to name the disk.

Requires Datastore.FileManagement privilege on the datastore where the virtual disk resides.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
name | xsd:string | The name of the disk, either a datastore path or a URL referring to the virtual disk that should be inflated.
datacenter* | ManagedObjectReference to a Datacenter | If `name` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `name` must be a URL.

*Need not be set

Return Value

Type | Description
--- | ---
pbm.Task | This method returns a Task object with which to monitor the operation.

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs inflating the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# MoveVirtualDisk_Task(moveVirtualDisk)

Move a virtual disk and all related files from the source location specified by `sourceName` and `sourceDatacenter` to the destination location specified by `destName` and `destDatacenter`.

If source (or destination) name is specified as a URL, then the corresponding datacenter parameter may be omitted.

If source and destination resolve to the same file system location, the call has no effect.

Requires Datastore.FileManagement privilege on both source and destination datastores.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
sourceName | xsd:string | The name of the source, either a datastore path or a URL referring to the virtual disk to be moved.
sourceDatacenter* | ManagedObjectReference to a Datacenter | If `sourceName` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `sourceName` must be a URL.
destName | xsd:string | The name of the destination, either a datastore path or a URL referring to the destination virtual disk.
destDatacenter* | ManagedObjectReference to a Datacenter | If `destName` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, it is assumed that the destination path belongs to the source datacenter.
force* | xsd:boolean | If true, overwrite any indentically named disk at the destination. If not specified, it is assumed to be false
profile* | VirtualMachineProfileSpec[] | User can specify new set of profile when moving virtual disk. Since vSphere API 5.5

*Need not be set

Return Value

Type | Description
--- | ---
pbm.Task |

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs renaming the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the source or destination datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# QueryVirtualDiskFragmentation(queryVirtualDiskFragmentation)

Return the percentage of fragmentation of the sparse virtual disk. This is the fragmentation of virtual disk file(s) in the host operating system, not the fragmentation of the guest operating systemS filesystem inside the virtual disk.

The datacenter parameter may be omitted if a URL is used to name the disk.

Requires Datastore.FileManagement privilege on the datastore where the virtual disk resides.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
name | xsd:string | The name of the disk, either a datastore path or a URL referring to the virtual disk for which to return the percentage of fragmentation.
datacenter* | ManagedObjectReference to a Datacenter | If `name` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `name` must be a URL.

*Need not be set

Return Value

Type | Description
--- | ---
xsd:int | The percentage of fragmentation (as an integer between 0 and 100) of the sparse virtual disk.

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs reading the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pbm="urn:pbm" name="QueryVirtualDiskFragmentation" type="pbm:QueryVirtualDiskFragmentationRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pbm="urn:pbm" name="QueryVirtualDiskFragmentationResponse"> <complexType> <sequence> <element name="returnval" type="xsd:int"/> </sequence> </complexType> </element>

# QueryVirtualDiskGeometry(queryVirtualDiskGeometry)

Get the disk geometry information for the virtual disk.

The datacenter parameter may be omitted if a URL is used to name the disk.

Requires Datastore.FileManagement privilege on the datastore where the virtual disk resides.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
name | xsd:string | The name of the disk, either a datastore path or a URL referring to the virtual disk from which to get geometry information.
datacenter* | ManagedObjectReference to a Datacenter | If `name` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `name` must be a URL.

*Need not be set

Return Value

Type | Description
--- | ---
HostDiskDimensionsChs | The geometry information for this virtual disk.

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs reading the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pbm="urn:pbm" name="QueryVirtualDiskGeometry" type="pbm:QueryVirtualDiskGeometryRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pbm="urn:pbm" name="QueryVirtualDiskGeometryResponse"> <complexType> <sequence> <element name="returnval" type="pbm:HostDiskDimensionsChs"/> </sequence> </complexType> </element>

# QueryVirtualDiskUuid(queryVirtualDiskUuid)

Deprecated. as of vSphere 6.5, use HostRetrieveVStorageObject instead.

Get the virtual disk SCSI inquiry page 0x83 data.

The datacenter parameter may be omitted if a URL is used to name the disk.

Requires Datastore.FileManagement privilege on the datastore where the virtual disk resides.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
name | xsd:string | The name of the disk, either a datastore path or a URL referring to the virtual disk from which to get SCSI inquiry page 0x83 data.
datacenter* | ManagedObjectReference to a Datacenter | If `name` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `name` must be a URL.

*Need not be set

Return Value

Type | Description
--- | ---
xsd:string | The hex representation of the unique ID for this virtual disk.

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs reading the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pbm="urn:pbm" name="QueryVirtualDiskUuid" type="pbm:QueryVirtualDiskUuidRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pbm="urn:pbm" name="QueryVirtualDiskUuidResponse"> <complexType> <sequence> <element name="returnval" type="xsd:string"/> </sequence> </complexType> </element>

# ReleaseManagedSnapshot(releaseManagedSnapshot)

Release a snapshot previously imported with importUnmanagedSnapshot

Required Privileges
  System.View
Since
  vSphere API 6.5

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
vdisk | xsd:string | - The name of the disk to release, either a datastore path or a URL referring to the virtual disk.
datacenter* | ManagedObjectReference to a Datacenter | If `vdisk` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `vdisk` must be a URL.

*Need not be set

Return Value

Type | Description
--- | ---
None

Faults

Type | Description
--- | ---
FileNotFound | Thrown if vdisk is not found
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pbm="urn:pbm" name="ReleaseManagedSnapshot" type="pbm:ReleaseManagedSnapshotRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pbm="urn:pbm" name="ReleaseManagedSnapshotResponse"> <complexType/> </element>

# SetVirtualDiskUuid(setVirtualDiskUuid)

Deprecated. as of vSphere 6.5, use HostRegisterDisk to register a disk as vStorageObject with new unique UUID.

Set the virtual disk SCSI inquiry page 0x83 data.

The datacenter parameter may be omitted if a URL is used to name the disk.

Requires Datastore.FileManagement privilege on the datastore where the virtual disk resides.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
name | xsd:string | The name of the disk, either a datastore path or a URL referring to the virtual disk whose SCSI inquiry page 0x83 data should be set.
datacenter* | ManagedObjectReference to a Datacenter | If `name` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `name` must be a URL.
uuid | xsd:string | The hex representation of the unique ID for this virtual disk.

*Need not be set

Return Value

Type | Description
--- | ---
None

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs updating the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

Show WSDL type definition
<element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pbm="urn:pbm" name="SetVirtualDiskUuid" type="pbm:SetVirtualDiskUuidRequestType"/> <element xmlns="http://www.w3.org/2001/XMLSchema" xmlns:pbm="urn:pbm" name="SetVirtualDiskUuidResponse"> <complexType/> </element>

# ShrinkVirtualDisk_Task(shrinkVirtualDisk)

Deprecated. as of vSphere 6.5, use ShrinkDisk_Task instead.

Shrink a sparse virtual disk.

The datacenter parameter may be omitted if a URL is used to name the disk.

The optional parameter `copy` specifies whether to shrink the disk in copy-shrink mode or in-place mode. In copy-shrink mode, additional space is required, but will result in a shrunk disk that is also defragmented. In-place shrink does not require additional space, but will increase fragmentation. The default behavior is to perform copy-shrink if the parameter is not specified.

Requires Datastore.FileManagement privilege on the datastore where the virtual disk resides.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
name | xsd:string | The name of the disk, either a datastore path or a URL referring to the virtual disk that should be shrink.
datacenter* | ManagedObjectReference to a Datacenter | If `name` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `name` must be a URL.
copy* | xsd:boolean | If true or omitted, performs shrink in copy-shrink mode, otherwise shrink in in-place mode.

*Need not be set

Return Value

Type | Description
--- | ---
pbm.Task | This method returns a Task object with which to monitor the operation.

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs shrinking the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None

# ZeroFillVirtualDisk_Task(zeroFillVirtualDisk)

Overwrite all blocks of the virtual disk with zeros. All data will be lost.

The datacenter parameter may be omitted if a URL is used to name the disk.

Requires Datastore.FileManagement privilege on the datastore where the virtual disk resides.

Required Privileges
  System.View

Parameters

Name | Type | Description
--- | --- | ---
_this | ManagedObjectReference | A reference to the VirtualDiskManager used to make the method call.
name | xsd:string | The name of the disk, either a datastore path or a URL referring to the virtual disk whose blocks should be overwritten with zeroes.
datacenter* | ManagedObjectReference to a Datacenter | If `name` is a datastore path, the datacenter for that datastore path. Not needed when invoked directly on ESX. If not specified on a call to VirtualCenter, `name` must be a URL.

*Need not be set

Return Value

Type | Description
--- | ---
pbm.Task | This method returns a Task object with which to monitor the operation.

Faults

Type | Description
--- | ---
FileFault | Thrown if an error occurs zero filling the virtual disk.
InvalidDatastore | Thrown if the operation cannot be performed on the datastore.
RuntimeFault | Thrown if any type of runtime fault is thrown that is not covered by the other faults; for example, a communication error.

Events

Type
None