Some links on this page are affiliate links: if you buy through them we may earn a commission, at no extra cost to you.
On the ESXi host currently running the virtual machine, use esxcli vm process list. Find the VM by its display name or, preferably, its .vmx configuration path, then record the World ID, Process ID and VMX Cartel ID. The World ID is normally the identifier required for ESXi VM-process operations; the PID is the process-table identifier shown by ps.
First, connect to the right ESXi host
In vCenter, open the VM’s Summary and check its current Host. Run the commands on that host, not merely on the host where the VM is registered. vMotion, HA recovery and stale management data can make the inventory view misleading. If vCenter is unavailable, check candidate hosts directly.
SSH to ESXi or use the ESXi Shell with suitable administrator privileges. A host-side process list is also useful when vCenter says a VM is powered off but you suspect that a VMX process remains.
Quick wins for a faster PC:
Fix the driver behind crashes, sound loss and screen glitchesFind Drivers →Clear out junk files and repair common Windows errorsFree Scan →Scan for outdated or missing drivers - takes under a minuteDriver Scan →The normal command
esxcli vm process list
The output contains one record for each running VM. A typical record looks like this (field order and formatting vary by ESXi release):
#1 Best Overall
WEB-01
World ID: 1234567
Process ID: 0
VMX Cartel ID: 1234567
UUID: 56 4d ...
Display Name: WEB-01
Config File: /vmfs/volumes/datastore1/WEB-01/WEB-01.vmx
Use the Config File path or UUID when names are duplicated. Display names are convenient but are not guaranteed to be unique. Broadcom documents this command and its fields in its VM-process troubleshooting procedure.
What each identifier means
| Identifier | Meaning | Where it is used |
|---|---|---|
| World ID | ESXi’s scheduler/process-world identifier for the VM’s running world. | esxcli vm process kill, esxtop correlation and other host diagnostics. |
| Process ID (PID) | The process identifier shown in the ESXi process table. | ps output and last-resort PID-based recovery. |
| VMX Cartel ID | Identifier for the VMX process group; commonly reported during storage-lock investigations. | lsof and lock-owner correlation. |
| VMID | Inventory identifier assigned to a registered VM. | vim-cmd vmsvc/*; it is not a World ID or PID. |
| Leader World ID | VM world identifier exposed by performance tools. | esxtop CPU and I/O investigations. |
These values are related, but they are not interchangeable. In particular, do not substitute a vim-cmd VMID for the World ID expected by a process command.
Find the VM in a large output
You can filter by name:
esxcli vm process list | grep -i -A6 -B1 'VM_NAME'
Quote names containing spaces or shell metacharacters:
What’s actually slowing this PC down?
Pick the symptom - the matching free tool is one click away.
esxcli vm process list | grep -i -A6 -B1 'Finance Server'
Because fixed grep context ranges may not include every field on every release, running the full command and searching it manually is safer. For ambiguous names, match the datastore path or UUID instead.
Rank #2
Map the record to the actual vmx process
ps | grep vmx
Typical output has a parent VMX row and child worlds such as MKS (console), virtual CPUs and other VM components:
7662 7662 vmx /bin/vmx
7667 7662 vmx /bin/vmx
7668 7662 mks:WEB-01 /bin/vmx
7669 7662 vcpu-0:WEB-01 /bin/vmx
The first column is the PID and the second is its parent PID in this example. The parent PID identifies the main VMX process group. Do not kill an arbitrary child row, and do not assume every line containing vmx is a separate VM. Verify the VM-specific name, parent PID and configuration path against esxcli vm process list. The relationship is described in Broadcom’s process-mapping guidance.
If the VM is not listed
A powered-off VM normally has no running VMX record, although it can remain registered. Obtain its inventory ID and path with:
Recommended Free Tools
vim-cmd vmsvc/getallvmsvim-cmd vmsvc/power.getstate <VMID>
To inspect the host’s registration file directly:
Rank #3
cat /etc/vmware/hostd/vmInventory.xml | grep -i 'VM_NAME' | grep vmx
Broadcom lists this method for ESXi 6.x through 9.0 in its VM-path article. If the VM is absent from both inventory and process output, check other hosts and consider vMotion, HA, an unregistered VM or a genuinely powered-off state. Recheck immediately before acting because the VM may move during the investigation.
Correlate the VM with other diagnostics
CPU and storage activity with esxtop
- Run
esxtop. - At the CPU screen, press c, then Shift+v to focus on VM-related entries.
- Press f and enable Leader World ID.
- Match that value and the VM name to
esxcli vm process list.
This lets you connect a VM’s world to CPU or I/O symptoms. See Broadcom’s world-identification guidance.
VMDK or snapshot locks
lsof | egrep 'Cartel|VM_name-000001-delta.vmdk'
If the result names a Cartel or World, compare it with the VMX Cartel ID and World ID from esxcli vm process list. The lock holder may have a different display name from the VM whose operation is failing. Names containing spaces can also defeat simplistic scripts. Consult Broadcom’s lock-owner procedure and additional lock guidance.
Network-port mapping
esxcli network vm list
esxcli network vm port list -w <WorldID>
The first command returns VM worlds; pass the matching World ID to the second to inspect virtual ports and uplink usage. Broadcom documents this workflow here.
Rank #4
If the VM is stuck: identify first, terminate second
Process identification is read-only. If normal vSphere power operations have failed and you have confirmed the exact World ID, use the least aggressive termination level first:
esxcli vm process kill -t soft -w <WorldID>
esxcli vm process kill -t hard -w <WorldID>
esxcli vm process kill -t force -w <WorldID>
Use one level at a time and verify after each attempt:
esxcli vm process list
If esxcli cannot complete because host-management services are unavailable, Broadcom’s unresponsive-VM guidance permits an escalation to localcli:
localcli vm process list
localcli vm process kill -t force -w <WorldID>
localcli bypasses management services and should not be routine. As a final recovery measure only, Broadcom documents terminating the verified parent PID:
Best Value
kill <ParentPID>
kill -9 <ParentPID>
Never guess the PID. An incorrect value can affect another VM, and forceful termination can risk guest or virtual-disk corruption. Recheck the process list and storage state afterward; schedule disruptive work for an approved maintenance window. See the warnings in Broadcom’s stale-process guidance and process-kill procedure.
Quick decision guide
| Question | Command | Use this identifier |
|---|---|---|
| Which running process belongs to the VM? | esxcli vm process list |
World ID, PID, Cartel ID |
| What is the registered VM and path? | vim-cmd vmsvc/getallvms |
VMID |
| Which row is the main VMX process? | ps | grep vmx |
PID and parent PID |
| Which VM is driving CPU or I/O? | esxtop |
Leader World ID |
| Who owns a locked disk? | lsof plus process list |
Cartel ID or World ID |
| Which uplink carries the VM’s traffic? | esxcli network vm list and ...port list |
World ID |
Common traps
- Wrong host: inventory location is not proof of current execution host.
- Duplicate names: use the
.vmxpath or UUID. - Stale UI state: a VM can appear off while a VMX remains.
- Moving VM: recheck host and World ID immediately before a kill.
- Missing datastore search result: vSphere 8.0 Update 3 and later embed vCLS VMs on the ESXi host, so not every VM-like entity is represented as a datastore directory.
- Encrypted VM: power operations may require the appropriate vSphere cryptographic privileges.
Command options and output can differ between ESXi builds, including modern 7.x, 8.x and 9.x releases. Confirm syntax against the installed release before any destructive operation.
Frequently Asked Questions
Is the VMID the same as the World ID?
No. VMID comes from the registered-VM inventory (vim-cmd); World ID identifies the running ESXi VM world and is used by process operations.
Why does esxcli vm process list show no powered-off VM?
It lists running VM processes. A powered-off VM can still appear in vim-cmd vmsvc/getallvms if it remains registered.
Quick Recap
Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

