如何命令行关闭虚拟机系统?

vmrun 命令
适用于VMware Workstation、Fusion及vSphere环境(需安装vCLI或PowerCLI)。

操作步骤:

  1. 打开命令行终端

    • Windows:cmdPowerShell
    • Linux/macOS:Terminal
  2. 定位到VMware安装目录(仅限本地环境)

    cd "C:\Program Files (x86)\VMware\VMware Workstation"  # Windows示例
    cd /Applications/VMware\ Fusion.app/Contents/Library/  # macOS示例
  3. 执行关机命令

    vmrun -T ws stop "虚拟机完整路径.vmx" [soft|hard]
    • -T ws:指定类型为Workstation/Fusion(vSphere用 -T server
    • stop:关机指令
    • 虚拟机路径:如 "D:\VMs\Ubuntu\Ubuntu.vmx"
    • 关机模式(可选):
      • soft(默认):优雅关机(需VMware Tools)
      • hard:强制断电(类似拔电源,仅限紧急情况

关键要求:

  • VMware Tools必须安装:否则 soft 模式失效,等同于 hard
  • 权限验证:vSphere需先通过 govc loginConnect-VIServer 认证。

ESXi主机命令行关机

方法1:SSH远程登录(高危操作,需谨慎)

  1. 启用ESXi Shell:

    在vSphere Client中:主机 → 操作 → 服务 → 启用SSH

  2. 连接ESXi主机:
    ssh root@esxi_host_ip
  3. 优雅关机序列
    esxcli system maintenanceMode set --enable true  # 进入维护模式
    esxcli system shutdown poweroff --reason "Planned maintenance" # 关机

方法2:vSphere CLI(推荐)
使用 govcPowerCLI 远程操作:

govc host.shutdown -host 192.168.1.100 -reason "安全关机"  # govc示例
Stop-VMHost -Name "esxi01" -Confirm:$false              # PowerCLI示例

安全操作规范与注意事项

  1. 优先级顺序

    graph LR
    A[虚拟机] -->|首选| B(guest OS内部关机)
    B -->|失败| C(vmrun soft)
    C -->|失败| D(vmrun hard)
    D -->|ESXi维护| E[主机关机]
  2. 风险警示

    • 🔴 hard 模式:可能导致数据损坏,仅当系统无响应时使用。
    • 🔴 ESXi直接关机:必须确保所有虚拟机已关闭或迁移。
    • 🔴 生产环境:操作前需完成备份与业务审批。
  3. 自动化脚本示例(Linux虚拟机优雅关机)

    #!/bin/bash
    VM_PATH="/vmfs/volumes/datastore1/centos/centos.vmx"
    if vmrun -T esx stop "$VM_PATH" soft; then
      echo "虚拟机已安全关闭"
    else
      echo "优雅关机失败,尝试强制操作"
      vmrun -T esx stop "$VM_PATH" hard
    fi

常见问题解决

  • Q:vmrun 报错 “File was not found”
    → 检查虚拟机路径是否正确,Windows路径用双引号包裹。

  • Q:ESXi关机提示”Resource is busy”
    → 确认无虚拟机运行:esxcli vm process list

  • Q:虚拟机拒绝关机(VMware Tools未响应)
    → 在guest OS内部执行停止命令:

      shutdown /s /t 0        # Windows
      sudo shutdown -h now    # Linux

引用说明
本文操作指南基于VMware官方文档(kb.vmware.com/s/article/205、kb.vmware.com/s/article/1009)及vSphere 8.0/Workstation 17最佳实践,强制关机操作规范参照《VMware vSphere安全加固指南》(2025版),自动化脚本需结合实际环境测试后部署。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/6929.html

(0)
酷番叔酷番叔
上一篇 2025年7月10日 05:48
下一篇 2025年7月10日 06:07

相关推荐

  • 易语言如何执行系统命令?

    易语言通过核心命令执行操作系统指令、启动外部程序或调用系统功能,实现程序与系统交互及任务自动化。

    2025年6月21日
    1100
  • 如何快速打开Unix/Linux/macOS命令行?

    Linux发行版(图形界面)Ubuntu/Debian系方法1:快捷键Ctrl + Alt + T 直接打开终端窗口,方法2:应用菜单点击屏幕左上角 Activities → 搜索栏输入 Terminal → 点击图标启动,方法3:右键菜单桌面空白处右键 → 选择 Open Terminal(部分桌面环境支持……

    2025年7月10日
    1100
  • 如何查看监听端口?需管理员权限

    端口管理核心原则安全警示:端口操作直接影响系统安全,错误配置可能导致:① 服务中断 ② 安全漏洞 ③ 未授权访问操作前务必:确认操作的必要性备份防火墙配置生产环境需在维护窗口操作查看端口状态(操作前提)█ Windows 系统# 检查防火墙规则(含端口状态):netsh advfirewall firewall……

    2025年6月16日
    1200
  • Linux下如何安全删除文件夹?

    核心命令:rm 和 rmdir删除非空文件夹:rm -r命令作用:递归删除文件夹及其内部所有内容(包括子文件夹和文件),基本语法:rm -r 文件夹路径常用选项:-r(或 -R):递归删除(必需),-f:强制删除(不提示确认),-i:交互模式(删除前逐项确认),-v:显示删除详情(verbose 模式),示例……

    2025年6月13日
    1500
  • MATLAB命令修改安全指南?,MATLAB如何安全修改命令?,修改MATLAB命令必看事项?,MATLAB命令覆盖避坑指南?,MATLAB自定义命令安全技巧?

    修改自定义函数/脚本若需修改自己编写的.m文件,直接编辑文件内容即可:方法1:使用MATLAB编辑器在命令行输入:edit 文件名.m(如 edit myFunction.m)在打开的编辑器中修改代码 → 保存(Ctrl+S),修改后立即生效,下次调用即执行新逻辑,方法2:手动查找文件在MATLAB当前文件夹窗……

    2025年6月19日
    1200

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信