ESXI 命令行注册、管理虚拟机
1 、查看正在运行的虚拟机
esxcli vm process list
2 、关闭虚拟机
esxcli vm process kill -- type= [ soft, hard, force] -- world- id= WorldNumber
esxcli vm process kill - t [ soft, hard, force] - w WorldNumber soft:执行正常关机,调用vmwaretools工具 hard: 断开电源 force: 强制关机
3 、通过vim- cmd 来管理虚拟机
vim- cmd vmsvc/ getallvms (获取所有虚拟机的vmid信息)
关闭虚拟机:vim- cmd vmsvc/ power. off 3
打开虚拟机:vim- cmd vmsvc/ power. on 3 、
重启虚拟机:vim- cmd vmsvc/ power. reset 3
获取虚拟机的当前状态:vim- cmd vmsvc/ power. getstate 3
4 、通过kill 强制关闭虚拟机
要知道esxi下面有没有虚拟机在运行可以使用下面的命令:
ps | grep vmx (分别是pid, 父进程,调用的服务)
关闭虚拟机
终止虚拟机的父进程: kill 247107
强制终止:kill - 9 247107
5 、重新注册虚拟机
vim- cmd solo/ registervm / vmfs/ volumes/ datastore_name/ VM_directory/ VM_name. vmx
ESXI修复状态为“无效”的虚拟机
vim- cmd vmsvc/ getallvms
1 、对出问题的虚拟机重新注册,新建虚拟机时选择“注册现有虚拟机”,选择出问题的. vmx文件,此时会报错“无法注册虚拟机 [ ssd] vm_tyj/ vm_tyj. vmx。指定的项、名称或标识符“1 ”已经存在”
vim- cmd solo/ registervm / vmfs/ volumes/ datastore_name/ VM_directory/ VM_name. vmx
2 、取消注册出问题的虚拟机,使用xshell工具ssh登录上esxi主机去,使用以下命令取消注册虚拟机
vim- cmd vmsvc/ unregister 1
这里的“1 ”是上面报错中的标识符,根据自己的实际情况更改
3 、重新注册虚拟机:此时在esxi界面里出问题的虚拟机已经不见,重复步骤1 对虚拟机重新注册即可,完成。