项目场景:
在Ubuntu系统安装了VMWare虚拟机,已开始还能打开VMWare,能进入正常VM界面。最近怎么进入不了VM主界面。启动虚拟机发现报错:Unable to install all modules. See ****;
问题描述
1、启动VMware:提示内核需要升级。
2、点击“install”:
3、过一会会弹出:
4、打开 /tmp/vmware*/vmware-236931.log 文件,如下:
提示:编译vmmon 出现错误。
5、使用命令查看一下VMware状态:
sudo /etc/init.d/vmware start
结果如下:
原因分析:
经分析: 是由于Ubuntu系统内核版本升级,导致Vmware内核模块编译出现问题。
解决方案:
如果有内核版本升级时,VM在启动时会重新编译安装。但也会出现VM内核编译不过的问题。需要手动编译
vmmon
和vmnet
模块安装。
查看VMware版本号: vmware -v
虽然VM启动不起来,但命令还是可以用的。
编译安装缺失模块
1、获取对应的模块仓库
$ git clone https://github.com/mkubecek/vmware-host-modules
2、查看分支:
# cd vmware-host-modules# git branch -a
分支有以下:
获取的Vmware
版本信息指定分支,以workstation-*
和player-*
指定workstation
和player版本。在上面我的版本是16.2.3
# git checkout workstation-16.2.3
3、编译并安装
# sudo make
# sudo make install
4、查看本机内核
# cat /proc/version
我本机如下:版本是5.15.0-76-generic
或者通过
# uname -r
5.15.0-76-generic
5、执行编译安装后,生成的模块会安装到/lib/modules/5.15.0-76-generic/misc
# ll /lib/modules/5.15.0-76-generic/misc
总用量 292
drwxr-xr-x 2 root root 4096 7月 11 17:06 ./
drwxr-xr-x 6 root root 4096 7月 11 17:06 ../
-rwxr-xr-x 1 root root 181368 7月 11 17:06 vmmon.ko*
-rwxr-xr-x 1 root root 103664 7月 11 17:06 vmnet.ko*
6、最后重新加载所有vmware
模块服务:
# sudo /etc/init.d/vmware start
Starting VMware services:Virtual machine monitor doneVirtual machine communication interface doneVM communication interface socket family doneVirtual ethernet doneVMware Authentication Daemon doneShared Memory Available done
7、重新启动VM,启动OK。
后记:
如果Ubuntu有内核版本升级的话,
vmmon
和vmnet
模块需要重新编译安装。默认情况下,VM启动时会重新编译安装这些模块,但也会出现本文的情况,就需要重新编译。