升级Linux内核导致vmware无法使用(vmnet模块无法编译)解决方案
2020-12-13 03:11
标签:linux内核 vmware vmnet ubuntu14.04 linux3.13 最近将ubuntu升级到了14.04,出现了vmware无法启动的情况。具体表现为:每次启动的时候都会弹出一个VMWare Kernel Module Updater的对话框,要求根据当前内核版本重新编译一些内核模块,但是其中网络模块vmnet总是编译失败。 查找相关资料发现原因在于升级到ubuntu 14.04之后现在的Linux内核版本是3.13,这个内核版本修改了一些底层函数,而VMWare的相关源码包还没有来得及修改相关代码。由于是内核版本的问题,所以同样的问题也大量出现在Fedora等系统上。 因此同样的问题可以继续存在于3.14, 3.15等后续版本中。 解决方法为修改vmnet模块的源码包中的两处代码。 1,获取root权限,进入相关目录: su cd /usr/lib/vmware/modules/source 2,解压vmnet源码包(得到vmnet-only文件夹): tar -xf vmnet.tar 3,备份原来的文件: mv vmnet.tar vmnet.tar.bak 4,修改源文件filter.c: 4.1,修改206行的:VNetFilterHookFn(const unsigned int hooknum // IN: 为:VNetFilterHookFn(const struct nf_hook_ops *ops, // IN: 4.2,修改255行的: transmit = (hooknum == VMW_NF_INET_POST_ROUTING); 为: transmit = (ops->hooknum == VMW_NF_INET_POST_ROUTING); 5,打包修改过的文件,删除无用的文件 tar -uf vmnet.tar vmnet-only rm -rf vmnet-only 6,重新编译内核模块,启动vmware 可以直接点击vmware workstation的图标,启动自动检测和编译过程;也可以通过命令: vmware-modconfig --console --install-all 感谢:Bearox和Garrett Skjelstad http://blog.csdn.net/bearox/article/details/21294609 http://ping8888.com/2013/12/13/vmware-modules-kernel-3-13/
原载于http://blog.csdn.net/yanxiangtianji
转载请注明出处 升级Linux内核导致vmware无法使用(vmnet模块无法编译)解决方案,搜素材,soscw.com 升级Linux内核导致vmware无法使用(vmnet模块无法编译)解决方案 标签:linux内核 vmware vmnet ubuntu14.04 linux3.13 原文地址:http://blog.csdn.net/yanxiangtianji/article/details/25656335
上一篇:NX二次开发-算法篇-找相切面
下一篇:Python进阶小结
文章标题:升级Linux内核导致vmware无法使用(vmnet模块无法编译)解决方案
文章链接:http://soscw.com/essay/27141.html