Esxi 命令行关闭虚拟机

查看正在运行的虚拟机

[root@localhost:~] esxcli vm process list

输出示例

World ID: 56148181
Process ID: 0
VMX Cartel ID: 56148181
Name: centos7-01
Running: true

📌 关键字段说明

字段说明
World ID虚拟机在 ESXi 中的全局唯一标识,用于后续操作
Name虚拟机名称
Running当前运行状态(true/false)

关闭虚拟机

基本命令格式

esxcli vm process kill --type=<关机方式> --world-id=<World ID>

命令示例

[root@localhost:~] esxcli vm process kill --type=soft --world-id=56148181

关机方式详解

参数说明适用场景
soft正常关机,调用 VMware Tools 执行优雅关机✅ 首选方式,保证数据完整性
hard断开电源,相当于直接拔掉电源线⚠️ 虚拟机无响应时使用
force强制关机,立即终止进程⚠️ 仅在其他方式无效时使用

🔄 三种方式对比

soft  →  最安全,需安装 VMware Tools
hard  →  较暴力,相当于物理断电
force →  最激进,直接杀进程

🛡️ 建议优先级soft > hard > force

命令速查表

操作命令
查看运行中的虚拟机esxcli vm process list
查看所有虚拟机(含已关机)vim-cmd vmsvc/getallvms
正常关机esxcli vm process kill --type=soft --world-id=<ID>
强制关机esxcli vm process kill --type=force --world-id=<ID>
通过名称关闭虚拟机vim-cmd vmsvc/power.shutdown <vmid>

扩展管理命令

通过 vim-cmd 管理虚拟机

# 获取所有虚拟机列表及 VMID
[root@localhost:~] vim-cmd vmsvc/getallvms

# 查看虚拟机状态
[root@localhost:~] vim-cmd vmsvc/power.getstate <VMID>

# 正常关机
[root@localhost:~] vim-cmd vmsvc/power.shutdown <VMID>

# 开机
[root@localhost:~] vim-cmd vmsvc/power.on <VMID>

# 重启
[root@localhost:~] vim-cmd vmsvc/power.reboot <VMID>

💡 提示vim-cmd 方式更直观,无需查找 World ID,直接使用 VMID 即可操作。

📌 注意事项

⚠️ 项目说明
soft 依赖必须安装并运行 VMware Tools,否则无效
数据风险hard / force 可能导致数据丢失或文件系统损坏
权限要求需具有 ESXi 主机的管理员权限
谨慎操作生产环境建议先确认虚拟机业务已停止

🔗 相关命令

# 查看 ESXi 主机上所有进程
[root@localhost:~] ps | grep vm

# 查看虚拟机日志
[root@localhost:~] tail -f /var/log/vmware/hostd.log

# 列出所有注册的虚拟机
[root@localhost:~] vim-cmd vmsvc/getallvms
© 版权声明
THE END
喜欢就支持一下吧
点赞11 分享
评论 抢沙发

请登录后发表评论

    暂无评论内容