dissect.target.plugins.os.unix.esxi.vm

Module Contents

Classes

VirtualMachinePlugin

Plugin to list ESXi virtual machines.

Attributes

dissect.target.plugins.os.unix.esxi.vm.VirtualMachineInventoryRecord
dissect.target.plugins.os.unix.esxi.vm.VirtualMachineOrphanRecord
class dissect.target.plugins.os.unix.esxi.vm.VirtualMachinePlugin(target: dissect.target.target.Target)

Bases: dissect.target.plugin.Plugin

Plugin to list ESXi virtual machines.

__namespace__ = 'vm'

Defines the plugin namespace.

check_compatible() None

Perform a compatibility check with the target.

This function should return None if the plugin is compatible with the current target (self.target). For example, check if a certain file exists. Otherwise it should raise an UnsupportedPluginError.

Raises:

UnsupportedPluginError – If the plugin could not be loaded.

inventory() collections.abc.Iterator[VirtualMachineInventoryRecord]

Yield all virtual machines registered on the ESXi host.

orphaned() collections.abc.Iterator[VirtualMachineOrphanRecord]

Yield all virtual machines found at /vmfs/volumes/*/*/*.vmx that are NOT in the inventory.

NOTE: If the target is part of a cluster, this may yield “false positives” for VMs registered on other hosts in the cluster.