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

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

相关推荐

  • 如何在命令行中快速新建文件夹?

    为什么用命令行新建文件夹?高效精准:避免图形界面的多次点击,尤其适合批量创建或远程操作,跨平台通用:Windows、macOS、Linux 均支持命令行操作,自动化基础:可嵌入脚本(如批处理/Bash脚本)实现复杂任务,各操作系统操作指南Windows 系统方法 1:命令提示符(CMD)命令:mkdir 或简写……

    2025年6月16日
    5500
  • Xshell与命令行是什么关系?

    Xshell是一款终端模拟软件,用于通过SSH等协议安全连接远程服务器,命令行则是用户输入文本指令与操作系统或服务交互的界面,Xshell提供了访问和使用命令行的工具环境。

    2025年6月23日
    5100
  • 你知道这样做的好处是什么吗?

    这样做的好处直观呈现,能有效提升效率并优化结果。

    2025年7月10日
    4300
  • Java命令行如何安全退出?

    终止正在运行的Java程序当Java程序在命令行中运行时,需通过以下方式退出:程序自然结束Java程序执行完所有代码后会自动退出(如main方法执行完毕),public class HelloWorld { public static void main(String[] args) { System.out……

    2025年7月7日
    5500
  • 如何高效使用PL/SQL命令窗口?

    如何打开命令窗口Oracle SQL Developer启动工具后,顶部菜单选择 “View” → “Command Window”(或按快捷键 Alt+F10),窗口通常出现在底部面板,显示 SQL> 提示符,*SQLPlus**(命令行工具)直接启动系统终端,输入 sqlplus 用户名/密码@数据库……

    2025年6月22日
    4600

发表回复

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

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信