VM 啟動停滯於「讓 Windows 就緒」。 請勿在 Azure 中關閉您的電腦」
適用於:✔️ Windows VM
本文說明當您在 Azure Microsoft 中啟動 Windows 虛擬機器 (VM) 時可能會遇到的「準備好」和「準備好 Windows」畫面。 它提供可協助您收集支援票證數據的步驟。
注意
本篇文章實用嗎? 您的輸入對我們很重要。 請使用此頁面上的 [ 意見反應 ] 按鈕,讓我們知道這篇文章為您運作得有多好,或我們如何加以改善。
徵兆
Windows VM 不會啟動。 當您使用 開機診斷 來取得 VM 的螢幕快照時,您可能會看到 VM 會顯示「準備好」或「讓 Windows 就緒」訊息。
原因
通常,當伺服器在設定變更之後執行最終重新啟動時,就會發生此問題。 設定變更可能會由 Windows 更新或伺服器角色或功能上的變更來初始化。 針對 Windows Update,如果更新很大,操作系統需要更多時間來重新設定變更。
解決方案 1:從備份還原 VM
如果您有最近的 VM 備份,您可以嘗試 從備份 還原 VM,以修正啟動問題。
解決方案 2:收集 OS 記憶體轉儲檔案
如果無法從備份還原 VM 或無法解決問題,您必須收集記憶體轉儲檔案,以便分析損毀。
步驟 1:直接收集傾印檔案
第 1 部分:將 OS 磁碟連結至復原 VM
擷取受影響 VM 的 OS 磁碟快照集以建立備份。 如需詳細資訊,請參閱 建立虛擬硬碟的快照集。
使用遠端桌面通訊協定 (RDP) 從遠端連線到復原 VM。
如果受影響 VM 的 OS 磁碟已加密,請先關閉加密,再移至下一個步驟。 如需詳細資訊,請參閱 解密加密的OS磁碟。
第 2 部分:找出傾印檔案並提交支援票證
在復原 VM 上,移至 連結 OS 磁碟上的 Windows 資料夾。 例如,如果指派給連結 OS 磁碟的驅動器號是 F,請移至 F:\Windows。
找出Memory.dmp檔案,然後提交支援票證並附加傾印檔案。
如果您找不到傾印檔案,請移至後續步驟以啟用傾印記錄和序列控制台,然後觸發記憶體轉儲程式。
步驟 2:啟用傾印記錄和序列控制台
重要
這個章節、方法或工作包含修改登錄的步驟。 然而,不當修改登錄可能會發生嚴重的問題。 因此,請務必小心執行下列步驟。 若要獲得保護,請在進行修改前先備份登錄,以便在出現問題時還原登錄。 如需備份和還原登錄的詳細資訊,請參閱如何在 Windows 中備份及還原登錄。
若要啟用傾印記錄和序列主控台,請遵循下列步驟:
以系統管理員身分開啟提升許可權的命令提示字元會話。
使用 /ems 和 /emssettings 選項執行下列 BCDEdit 命令:
啟用序列主控台:
bcdedit /store <volume-letter-containing-the-bcd-folder>:\boot\bcd /ems {<boot-loader-identifier>} ON bcdedit /store <volume-letter-containing-the-bcd-folder>:\boot\bcd /emssettings EMSPORT:1 EMSBAUDRATE:115200
確認OS磁碟上的可用空間大於VM上的記憶體大小(RAM)。
如果 OS 磁碟上沒有足夠的空間,請變更建立記憶體轉儲檔案的位置,並將該位置參考連結至 VM 且有足夠的可用空間的任何數據磁碟。 若要變更位置,請將 取代
%SystemRoot%
為數據磁碟的驅動器號,例如F:
,在下列命令中。若要啟用 OS 傾印檔案,請使用 reg 工具執行下列載入、新增和卸除命令,以實作建議的組態:
從中斷的 OS 磁碟載入登錄區:
reg load HKLM\<broken-system> <volume-letter-of-broken-os-disk>:\windows\system32\config\SYSTEM
在 ControlSet001 上啟用:
reg add "HKLM\<broken-system>\ControlSet001\Control\CrashControl" /v CrashDumpEnabled /t REG_DWORD /d 1 /f reg add "HKLM\<broken-system>\ControlSet001\Control\CrashControl" /v DumpFile /t REG_EXPAND_SZ /d "%SystemRoot%\MEMORY.DMP" /f reg add "HKLM\<broken-system>\ControlSet001\Control\CrashControl" /v NMICrashDump /t REG_DWORD /d 1 /f
在 ControlSet002 上啟用:
reg add "HKLM\<broken-system>\ControlSet002\Control\CrashControl" /v CrashDumpEnabled /t REG_DWORD /d 1 /f reg add "HKLM\<broken-system>\ControlSet002\Control\CrashControl" /v DumpFile /t REG_EXPAND_SZ /d "%SystemRoot%\MEMORY.DMP" /f reg add "HKLM\<broken-system>\ControlSet002\Control\CrashControl" /v NMICrashDump /t REG_DWORD /d 1 /f
卸除中斷的 OS 磁碟:
reg unload HKLM\<broken-system>
請確定磁碟上有足夠的空間來配置與 RAM 一樣多的記憶體,這取決於您為此 VM 選取的大小。 如果空間不足,或這是大型 VM(G、GS 或 E 系列),您可以變更建立此檔案的位置,並參考附加至 VM 的任何其他數據磁碟。 若要這樣做,您必須修改登錄機碼,如下列程式代碼所示:
reg load HKLM\BROKENSYSTEM F:\windows\system32\config\SYSTEM
REG ADD "HKLM\BROKENSYSTEM\ControlSet001\Control\CrashControl" /v DumpFile /t REG_EXPAND_SZ /d "<DRIVE LETTER OF YOUR DATA DISK>:\MEMORY.DMP" /f
REG ADD "HKLM\BROKENSYSTEM\ControlSet002\Control\CrashControl" /v DumpFile /t REG_EXPAND_SZ /d "<DRIVE LETTER OF YOUR DATA DISK>:\MEMORY.DMP" /f
reg unload HKLM\BROKENSYSTEM
步驟 3:觸發記憶體轉儲程式
啟動 VM 並存取序列主控台。
選取 [ 傳送不可遮罩的插斷(NMI] 以觸發記憶體轉儲。
請遵循步驟 1:直接收集傾印檔案中的指示。
與我們連絡,以取得說明
如果您有問題或需要相關協助,請建立支援要求,或詢問 Azure community 支援。 您也可以向 Azure 意見反應社群提交產品意見反應。