最近學到一個在VMware ESXi 下面強制關閉一個沒有反應的VM的方法, 一般正常都是使用vSphere Client 去控制VM電源, 但是有時會發生即使用裡面的Power Off 按鈕但是還是無法關閉我的VM, 而且最終會出現一串錯誤訊息「An unexpected error was received from the ESX host while powering off VM ..」這時要解決問題的方法是讓ESXi host整個重開機一次, 但是如果不想整台伺服器重新開機時要怎麼樣呢...

透過Google大神的搜尋下, 找到可以透過Shell的命令來對系統進行一些操作, 我找到一頁對於開關VM有幫助的網頁 "Forcibly Stopping Virtual Machines with EXCLI"

只要使用esxcli 命令打入相關的參數就可以了, 要做遠端shell command的操作首先要在ESXi 打開「Shell Service 和 SSH Service」

esxcli <conn_options> vm process kill --type <kill_type> --world-id <ID>

接下來利用putty連入後打入「esxcli vm process list 」命令去獲取現在系統裡的動作中的VM資訊, 會得到類似下面的訊息...

~ # esxcli vm process list

WinXP CHT (netComputer)
World ID: 4171
Process ID: 0
VMX Cartel ID: 4170
UUID: 56 4d 8b 2a 9c 6c fa b4-b3 77 19 21 69 05 09 25
Display Name: WinXP CHT (netComputer)
Config File: /vmfs/volumes/4ef37e4a-50fb6d27-df84-001018185495/WinXP CHT (netComputer)/WinXP CHT (netComputer).vmx

Windows 7 Eng
World ID: 196949
Process ID: 0
VMX Cartel ID: 196948
UUID: 42 3b 85 7b 89 ee 38 bc-61 c2 70 b9 4b 29 26 62
Display Name: Windows 7 Eng
Config File: /vmfs/volumes/4ef37e4a-50fb6d27-df84-001018185495/Windows 7 Eng/Windows 7 Eng.vmx

接下來你要找尋無法控制開關機的VM, 找到它的「World ID」, 比如說接「Windows 7 Home x64 」失去連線且透過vSphere Client完全無法控制, 我只要輸入以下命令就可以強制將VM關閉, 然後再啟動

esxcli vm process kill --type hard --world-id 211699

如果還是不行可能就要試試用 --type force, 再不行也只能重新開伺服器了。

詳細命令用法可以參考 http://pubs.vmware.com/vsphere-51/topic/com.vmware.vcli.examples.doc/cli...

在ESXi使用esxcli命令強制关闭VM的更多相关文章

  1. esxi主机用命令行强行关闭通过前端界面无法关闭的ESXI虚拟机

    环境:esxi5.1-esxi6.5 背景:如果esxi下面某一台vm死机了,并且esxi的控制台卡死不能用,为了不影响同一个esx下其他的vm正常使用,那么我们只能用命令行来单独重启此vm,保证一定 ...

  2. esxi命令行强行关闭虚拟机

    目的:强行关闭通过前端界面无法关闭的ESXI虚拟机 环境:esxi5.1-esxi6.5 背景:如果esxi下面某一台vm死机了,并且esxi的控制台卡死不能用,为了不影响同一个esx下其他的vm正常 ...

  3. 批处理脚本命令行方式关闭Windows服务

    对于一些不常用的Windows Services,可以通过设置其启动类型为"禁用"而将其关闭.这种关闭方式是长期性的,电脑重启之后仍然起作用. 有时候希望在批处理脚本里通过命令行方 ...

  4. 在CMD命令行下关闭进程的命令

    转载: [重要]在CMD命令行下关闭进程的命令━━━━━━━━━━━━━━━━━━━━━━━━━━ 方法一: 在"运行"中输入:ntsd -c q -pn 程序名字(在MS-Dos ...

  5. 用SQL*Plus命令启动和关闭数据库

    用SQL*Plus命令启动和关闭数据库 1.启动方式 starup或startup open startup nomount startup mount startup read only [x] s ...

  6. 导入一些常用命令比如(rz),关闭防火墙外面可以访问

     yum -y install lrzsz-----------导入常用命令 我在虚拟机上面启动了一个项目 这个原因是防火墙造成的,关闭防火墙  iptables -L 查看下 service ipt ...

  7. 【linux命令】打开关闭防火墙iptables

    防火墙关闭 关闭防火墙(linux) 经过自己的实验,发现在ubuntu中service iptables 无法使用. 同时,在init.d中并没有iptables的程序,iptables程序在/sb ...

  8. 使用Windows命令行启动关闭服务(net,sc用法)

    下面两个命令最好以管理员方式启动cmd窗口,否则出现权限问题. 1.net用于打开没有被禁用的服务, NET命令是功能强大的以命令行方式执行的工具. 它包含了管理网络环境.服务.用户.登陆大部分重要的 ...

  9. Mac命令行启动关闭Tomcat

    在Tomcat目录的bin目录下执行sh startup.sh或./startup.sh命名启动Tomcat,执行sh shutdown.sh或./shutdown.sh命令关闭Tomcat 浏览器输 ...

随机推荐

  1. linux文件属性更改命令

    chown 当我们要改变一个文件的属主,我们所使用的用户必须是该文件的属主而且同时是目标属组成员,或超级用户.只有超级用户的才能改变文件的属主. chown语法: chown  [选项]...[所有者 ...

  2. HttpServletRequest cannot be resolved to a type The superclass "javax.servlet.http.HttpServlet" was not found on the Java Build Path

    HttpServletRequest cannot be resolved to a type The superclass "javax.servlet.http.HttpServlet& ...

  3. request中的那些方法到底是干什么的?

    最近做Java Web项目,在.jsp页面和servlet之间request和response还是有些混淆,查阅了一些资料,总结如下,方便以后使用: 首先,servlet接口是最基本的,提供的五个方法 ...

  4. Hive 数据实战

    需求 remote_addr 用户IP 1.用于根据地址确认区域 2.用于统计来自同一个(外网)用户的访问数量 time_local 用户访问时间 1.分析用户访问时间段 2.合理安排客服上班时间 r ...

  5. TouTiao开源项目 分析笔记5

    1.深入理解RxJava 1.1.基本上现在的APP都会有请求网络,然后处理回调的业务吧. 如果请求的数据很多,业务越来越复杂,怎么处理呢? 这里我用到了RxJava来帮我处理业务. RxJava主要 ...

  6. Weblogic Linux jar包安装

    环境/工具: 系统:CentOS 7 JDK:Oracle JDK fmw_12.2.1.2.0_wls.jar 0x01.新建普通用户weblogic 在Linux环境下建议使用普通用户安装,web ...

  7. 6,Flask 中内置的 Session

    Flask中的Session非常的奇怪,他会将你的SessionID存放在客户端的Cookie中,使用起来也非常的奇怪 1. Flask 中 session 是需要 secret_key 的 from ...

  8. 1 HTML + CSS

    1.HTML的基础用法 2.标签的嵌套 3.常见的网页结构 header content footer

  9. HDU 5293 Tree chain problem 树形DP

    题意: 给出一棵\(n\)个节点的树和\(m\)条链,每条链有一个权值. 从中选出若干条链,两两不相交,并且使得权值之和最大. 分析: 题解 #include <cstdio> #incl ...

  10. centos 6.4安装杀毒软件clamAV 0.98[转]

    原文出处: http://dnuser.blog.51cto.com/4863891/1303829   1.查看系统版本 [root@local]# lsb_release -a LSB Versi ...