背景
由于做网络攻防实验导致无法远端登录服务器,所以需要强行关闭某虚拟机进程
解决方案
- 本地登录ESXI服务器后,设置能命令行访问:
- 按
alt+f1
输入用户和密码 - 查看对应进程
ps | grep vmx | more # 如果知道虚拟机名可以直接grep vmname
- 杀死进程(可能造成不可逆影响)
kill -9 pid
其他方法
vim-cmd
- 获取所有虚拟机信息(vimid)
vim-cmd vmsvc/getallvms
- 关闭虚拟机
vim-cmd vmsvc/power.off vimid
- 打开虚拟机
vim-cmd vmsvc/power.on vimid
- 重启虚拟机
vim-cmd vmsvc/power.reset vimid
- 获取虚拟机状态
vim-cmd vmsvc/power.getstate vimid
esxcli
- 获取正在运行的虚拟机信息
esxcli vm process list
- 关闭虚拟机,三种模式
soft/hard/force
vm process kill --type=hard --world-id=id