有時候虛擬機器似乎秀斗了,用VI Client也無法關閉它。看起來應該是HANG住,此時你可以透過一些方式來停止該VM。 以下方式針對ESX4.X 使用 # vmware-cmd -l 列出所有虛擬機器名稱,並記下你要關閉的那個虛擬機器之設定檔路徑。 例如: # /vmfs/volumes/ / / .vmx 取得目前虛擬機器狀態 # vmware-cmd getstate 如果結果是 getstate() = on,則Virtual Center應該是跟這台虛擬機溝通有問題,請先把這問題解決掉。 如果結果是 getstate() = off ,表示ESX無法判斷此機器是否有問題,請繼續往下看。 使用vm-support script關閉虛擬機器 取得WorldID #vm-support –x 刪除VM之process #vm-support –X 這個指令會透過各種方式關閉虛擬機器,所以可能會需要30分鐘左右時間。 如果上述方式無效,針對ESX4可以再使用以下方法: 列出所有VM的vmxCartelID #/usr/lib/vmware/bin/vmdumper –l 移動卷軸慢慢尋找你要砍的那個VM名稱,顯示可能類似 : vmid=5151 pid=-1 cfgFile="/vmfs/volumes/4a16a48a-d807aa7e-e674-001e4ffc52e9/mdineeen_test/vm_test.vmx" uuid="56 4d a6 db 0a e2 e5 3e-a9 2b 31 4b 69 29 15 19" displayName="vm_test" vmxCartelID=#### 關閉vmxCartelID #/usr/lib/vmware/bin/vmkload_app –k 9 #### 使用vmware-cmd關閉虛擬機器 溫和的關閉 #vmware-cmd stop 確認狀態後若還是沒被關閉 #vmware-cmd getstate 強行關閉 #vmware-cmd stop hard 使用Kill方式關掉VM Pid #ps –auxwww |grep –I .vmx root 3093 0.0 0.3 2016 860 ? S< Jul30 0:17 /usr/lib/vmware/bin/vmkload_app /usr/lib/vmware/bin/vmware-vmx -ssched.group=host/user -# name=VMware ESX Server;version=3.5.0;licensename=VMware ESX Server;licenseversion=2.0 build-158874; -@ pipe=/tmp/vmhsdaemon-0/vmx569228e44baf49d1; /vmfs/volumes/49392e30-162037d0-17c6-001f29e9abec/ / .vmx 該process ID為粗體,例如以上例子3039 #kill 等待30 秒後,在確認一次該process在不在。 如果沒有被終結掉,可再使用以下指令 #kill -9 如果還是砍不掉,ESX可能就得重新啟動才能釋放狀態不正常的VM。
文章標籤
全站熱搜
創作者介紹
創作者 BENIT 的頭像
BENIT

BenIT

BENIT 發表在 痞客邦 留言(0) 人氣(614)