:py:mod:`dissect.target.plugins.os.unix.esxi._os` ================================================= .. py:module:: dissect.target.plugins.os.unix.esxi._os Module Contents --------------- Classes ~~~~~~~ .. autoapisummary:: dissect.target.plugins.os.unix.esxi._os.ESXiPlugin Functions ~~~~~~~~~ .. autoapisummary:: :nosignatures: dissect.target.plugins.os.unix.esxi._os.parse_boot_cfg dissect.target.plugins.os.unix.esxi._os.nfs_volume_uuid Attributes ~~~~~~~~~~ .. autoapisummary:: dissect.target.plugins.os.unix.esxi._os.HAS_ENVELOPE .. py:data:: HAS_ENVELOPE :value: True .. py:class:: ESXiPlugin(target: dissect.target.target.Target) Bases: :py:obj:`dissect.target.plugins.os.unix._os.UnixPlugin` ESXi OS plugin ESXi partitioning varies between versions. Generally, specific partition numbers have special meaning. The following is a list of known partition numbers: 1: EFI boot 5: BOOTBANK1 6: BOOTBANK2 7: vmkcore (ESXi 6), OSDATA / LOCKER (ESXi 7) 8: store (ESXi 6), HDD VMFS datastore (ESXi 7) 9: vmkcore (ESXi 6) .. py:method:: detect(target: dissect.target.target.Target) -> dissect.target.filesystem.Filesystem | None :classmethod: Provide detection of this OSPlugin on a given filesystem. :param fs: :class:`~dissect.target.filesystem.Filesystem` to detect the OS on. :returns: The root filesystem / sysvol when found. .. py:method:: create(target: dissect.target.target.Target, sysvol: dissect.target.filesystem.Filesystem) -> Self :classmethod: Initiate this OSPlugin with the given target and detected filesystem. :param target: The :class:`~dissect.target.target.Target` object. :param sysvol: The filesystem that was detected in the ``detect()`` function. :returns: An instantiated version of the OSPlugin. .. py:method:: hostname() -> str Return the target's hostname. :returns: The hostname as string. .. py:method:: domain() -> str | None .. py:method:: ips() -> list[str] Return the IP addresses configured in the target. :returns: The IPs as list. .. py:method:: version() -> str | None Return the target's OS version. :returns: The OS version as string. .. py:method:: os() -> str Return a slug of the target's OS name. :returns: A slug of the OS name, e.g. 'windows' or 'linux'. .. py:function:: parse_boot_cfg(fh: TextIO) -> dict[str, str] .. py:function:: nfs_volume_uuid(host: str, path: str) -> str Generate a UUID for an NFS volume based on the host and path. This is used to create a unique identifier for NFS volumes in ESXi.