Reference from vim-cmd of VMware ESX Server 3i 3.5.0 build-123629
Get help: vim-cmd help or vim-cmd -h
Guest VM control command
Commands available under vmsvc/: acquiremksticket get.configoption power.off connect get.datastores power.on convert.toTemplate get.disabledmethods power.reboot convert.toVm get.environment power.reset createdummyvm get.filelayout power.shutdown destroy get.guest power.suspend device.connection get.guestheartbeatStatus reload device.connusbdev get.managedentitystatus setscreenres device.disconnusbdev get.networks snapshot.create device.diskadd get.runtime snapshot.get device.diskaddexisting get.snapshotinfo snapshot.remove device.diskremove get.summary snapshot.removeall device.getdevices get.tasklist snapshot.revert device.toolsSyncSet getallvms snapshot.setoption device.vmiadd gethostconstraints tools.cancelinstall device.vmiremove login tools.install devices.createnic logout tools.upgrade get.capability message unregister get.config power.getstate upgrade get.config.cpuidmask power.hibernate
List all guests: vim-cmd vmsvc/getallvms
~ # vim-cmd vmsvc/getallvms Vmid Name File Guest OS Version Annotation 112 web07-3-datanode2 [datastore1] web07-3-datanode2/web07-3-datanode2.vmx rhel5_64Guest vmx-04 128 web07-4-sqlnode1 [datastore1] web07-4-sqlnode1/web07-4-sqlnode1.vmx rhel5_64Guest vmx-04 80 web07-1-mgm [datastore1] web07-1-mgm/web07-1-mgm.vmx rhel5_64Guest vmx-04 96 web07-2-datanode1 [datastore1] web07-2-datanode1/web07-2-datanode1.vmx rhel5_64Guest vmx-04
Get power state: vim-cmd vmsvc/power.getstate vmid
~ # vim-cmd vmsvc/power.getstate 80 Retrieved runtime info Powered on
Power on: vim-cmd vmsvc/power.on vmid
Power off: vim-cmd vmsvc/power.off vmid
Reset: vim-cmd vmsvc/power.reset vmid
Reboot: vim-cmd vmsvc/power.reboot vmid
Disconnect vm from network: vim-cmd vmsvc/device.connection vmid deviceKey 0|1
1. Find network adapter device key
~ # vim-cmd vmsvc/device.getdevices 80
...
(vim.vm.device.VirtualE1000) {
dynamicType = <unset>,
key = 4000,
deviceInfo = (vim.Description) {
dynamicType = <unset>,
label = "Network Adapter 1",
summary = "VM Network",
},
backing = (vim.vm.device.VirtualEthernetCard.NetworkBackingInfo) {
dynamicType = <unset>,
deviceName = "VM Network",
useAutoDetect = false,
network = 'vim.Network:HaNetwork-VM Network',
},
connectable = (vim.vm.device.VirtualDevice.ConnectInfo) {
dynamicType = <unset>,
startConnected = true,
allowGuestControl = true,
connected = true,
},
controllerKey = 100,
unitNumber = 7,
addressType = "generated",
macAddress = "00:0c:29:fe:64:7f",
wakeOnLanEnabled = true,
},
...From this sample, key is 4000.
2. Disconnect network adapter
~ # vim-cmd vmsvc/device.connection 80 4000 0
(Optional) 3. Re-connect network adapter
~ # vim-cmd vmsvc/device.connection 80 4000 1