問題現象
在 VMware Workstation 中安裝 Linux 虛擬機,首次啟動正常,但當物理機(Win7 64位,4GB 內存)關機重啟後,再次啟動該 Linux 虛擬機(分配 1GB 內存)會導致宿主機直接藍屏崩潰。同一台物理機上運行的 Windows XP 虛擬機(512MB 內存)卻無此問題。藍屏日誌顯示為 Kernel_0_0_cab_16160e80 類型的錯誤。
原因分析
這類藍屏通常由虛擬機與宿主機之間的驅動衝突引起。常見原因包括:
- 虛擬機安裝了不兼容的硬體驅動(如在客體系統中運行「驅動精靈」等工具更新實體硬體驅動)。
- VMware Tools 版本與客體內核不匹配,導致虛擬硬體介面異常。
- 宿主機記憶體管理與虛擬機記憶體預留策略衝突,雖然 4GB 內存理論上足夠,但記憶體碎片或映射錯誤仍可能觸發崩潰。
解決方案
- 移除客體內的實體驅動程式:在 Linux 虛擬機中避免安裝任何針對物理硬體的驅動更新工具。
- 重新安裝/升級 VMware Tools:掛載 VMware Tools 安裝光碟,在客體系統中執行標準安裝流程,確保虛擬硬體驅動(顯示、網路、儲存控制器)與宿主機協同正常。
- 調整虛擬機記憶體設置:嘗試將 Linux 虛擬機記憶體降至 768MB 或啟用「允許將部分虛擬機記憶體交換到宿主機磁碟」選項,緩解記憶體壓力。
- 檢查宿主機驅動與 BIOS:更新主機晶片組、顯卡驅動至最新穩定版;必要時升級 BIOS 修正記憶體映射錯誤。
經驗總結
虛擬機藍屏多源於「客體系統嘗試控制實體硬體」。堅持使用 VMware 官方提供的 Tools,並在客體系統中僅安裝虛擬硬體驅動,是避免此類問題的核心原則。