問題簡述
在 Manjora Linux 下,之前更新過系統,這次啟動虛擬機居然就是失敗了。
報錯信息如下:
Version mismatch with vmmon module: expecting 401.0, got 398.0.
You have an incorrect version of the 'vmmon' kernel module.
Try reinstalling VMware Workstation.

解決辦法
在網上檢索一下相關文章,找到了解決的辦法,在這里記錄一下。
大概過程如下:
- 1、下載對應版本的
vmware-host-modules源代碼。 - 2、編譯出對應的內核模塊文件,拷貝到系統內核模塊目錄去。
- 3、先卸載舊模塊,再加載新編譯好的模塊。
具體操作過程如下:
# 查看 vmware 具體版本號
$ vmware -v
VMware Workstation 16.1.0 build-17198959
# 下載對應版本的倉庫
$ git clone -b workstation-16.1.0 https://github.com/mkubecek/vmware-host-modules.git
正克隆到 'vmware-host-modules'...
remote: Enumerating objects: 117, done.
remote: Counting objects: 100% (117/117), done.
remote: Compressing objects: 100% (95/95), done.
remote: Total 2704 (delta 84), reused 51 (delta 22), pack-reused 2587
接收對象中: 100% (2704/2704), 1.15 MiB | 776.00 KiB/s, 完成.
處理 delta 中: 100% (2149/2149), 完成.
# 編譯
$ make
# 拷貝編譯好的模塊到系統目錄
sudo mkdir -p /lib/modules/`uname -r`/misc
sudo cp vmmon-only/vmmon.ko /lib/modules/`uname -r`/misc/vmmon.ko
# sudo cp vmnet-only/vmnet.ko /lib/modules/`uname -r`/misc/vmnet.ko
# 先卸載模塊,再加載模塊
sudo modprobe -r vmmon
sudo modprobe -a vmmon
# 如果無法加載,就先執行下 sudo depmod 命令
執行完成上面操作之后,再啟動虛擬機就是可以的了。
參考:
