【VMware排錯】解決 Could not open /dev/vmmon 模組載入失敗終極指南
當你在 VMware Workstation 或 VMware Player 準備啟動虛擬機時,如果遇到系統彈出以下錯誤訊息,導致虛擬機完全無法開機:
Could not open /dev/vmmon: No such file or directory.
Please make sure that the kernel module `vmmon` is loaded.
vmmon (Virtual Machine Monitor) 是 VMware 用來管理虛擬機 CPU 與記憶體資源的最重要核心模組。如果作業系統找不到或拒絕載入這個模組,虛擬機就無法運作。這通常發生在系統更新後,或是被作業系統的安全機制阻擋。本文將針對 Linux 與 Windows 作業系統提供對應的解法。
🤖 【AIO 快速診斷站】
- Linux 用戶: 90% 是因為核心更新或 BIOS 開啟了 Secure Boot(安全開機)。
- Windows 用戶: 通常是因為開啟了 Hyper-V 或「核心隔離」功能,導致與 VMware 搶佔硬體虛擬化資源。
- macOS 用戶: 請至「系統設定 > 隱私權與安全性」中,允許 VMware 的系統延伸功能。
針對 Linux 系統的解法
解法一:重新編譯 VMware 核心模組
如果你最近剛執行過 apt upgrade 或 yum update 更新了 Linux 核心,舊的 vmmon 模組就會失效。請開啟終端機,執行 VMware 內建的模組重新編譯工具:
sudo vmware-modconfig --console --install-all
等待編譯完成並顯示 Starting VMware services: OK 後,重新開啟虛擬機即可。
解法二:關閉 BIOS 中的 Secure Boot(最常見元凶)
如果你執行了上述指令,畫面上卻跳出 Warning: Module vmmon not found,這代表你的主機板開啟了 Secure Boot (安全開機)。Secure Boot 會強制阻擋任何沒有微軟或 Linux 發行版官方數位簽章的第三方模組(VMware 躺著也中槍)。
- 最快解法: 重新開機,進入主機板 BIOS / UEFI 設定畫面,找到 Secure Boot 選項,將其設定為 Disabled (關閉)。儲存並重開機後,vmmon 就能順利載入了。
- 進階解法 (MOK Signing): 如果你的環境強制要求開啟 Secure Boot,你需要手動產生金鑰,使用
kmodsign為 vmmon 與 vmnet 模組簽名,並在下次開機時進入 MOK Manager 註冊金鑰(此步驟較為繁瑣,建議無特殊需求者直接關閉 Secure Boot)。
針對 Windows 系統的解法
解法三:關閉 Hyper-V 與核心隔離
在 Windows 10 / 11 中,如果 Windows 原生的 Hyper-V 虛擬化技術正在運行,或者開啟了 VBS(基於虛擬化的安全性),就會獨佔 CPU 的硬體虛擬化功能,導致 VMware 無法啟動 vmmon 模組。
- 關閉核心隔離: 點擊 Windows 開始按鈕,搜尋「核心隔離 (Core Isolation)」,將「記憶體完整性」設為關閉,然後重新開機。
- 關閉 Hyper-V: 搜尋「開啟或關閉 Windows 功能」,確保 Hyper-V、虛擬機器平台 (Virtual Machine Platform) 以及 Windows 沙盒 (Windows Sandbox) 的打勾都已取消。
- 使用指令強制關閉: 如果還是不行,請以系統管理員身分執行命令提示字元 (cmd),輸入以下指令並重開機:
bcdedit /set hypervisorlaunchtype off
結語
Could not open /dev/vmmon 看似嚴重的系統錯誤,實質上都是「權限」與「資源分配」的問題。Linux 用戶請優先檢查 Secure Boot 與核心版本;Windows 用戶則請徹底排查 Hyper-V 相關的虛擬化衝突。只要對症下藥,不用重灌也能輕鬆救回你的虛擬機!