Ubuntu 升级到 17.10 后 VMware Workstation 12 无法运行

Ubuntu 升级到 17.10 后 VMware Workstation 12 无法运行

我已经升级到 Ubuntu 17.10(从 17.04 开始)。一切似乎都正常,但是 VMware Workstation 12 无法启动。没有生成任何消息。请帮忙。

答案1

您需要升级到 VMWare Workstation 14。除非您修补它,否则 Workstation 12 将无法在 Ubuntu 17.10 中使用内核 (4.13)。修补程序可在此处获取:https://github.com/mkubecek/vmware-host-modules/commit/b50848c985f1

在终端中运行以下命令来修补(有两种方法可以执行此操作):

修补程序 1:

获得root用户访问权限:

sudo su
tar xvf vmmon.tar
tar xvf vmnet.tar
wget -O ./vmmon-only/linux/hostif.c https://raw.githubusercontent.com/mkubecek/vmware-host-modules/b50848c985f1a6c0a341187346d77f0119d0a835/vmmon-only/linux/hostif.c
vim vmnet-only/bridge.c
cd vmmon-only/
make
cd ../vmnet-only/
make
cd ..
mkdir /lib/modules/4.13.0-16-generic/misc
cp *.o /lib/modules/4.13.0-16-generic/misc
insmod /lib/modules/4.13.0-16-generic/misc/vmmon.o
insmod /lib/modules/4.13.0-16-generic/misc/vmnet.o
rm /usr/lib/vmware/lib/libz.so.1/libz.so.1
ln -s /lib/x86_64-linux-gnu/libz.so.1 /usr/lib/vmware/lib/libz.so.1/libz.so.1
vmware-networks --start
exit

以普通用户身份运行 VMWare:

/usr/lib/vmware/bin/vmware

或者

修补程序 2:

进入你的主目录,或者你可以临时存储文件的地方:

cd ~ [YOUR DIRECTORY]

将 vmmon 源 tar 包复制到您的临时位置:

cp /usr/lib/vmware/modules/source/vmmon.tar

提取 tar 包:

tar xf vmmon.tar

下载修改后的文件并覆盖 tar ball 中的内容:

wget -O ./vmmon-only/linux/hostif.c https://raw.githubusercontent.com/mkubecek/vmware-host-modules/b50848c985f1a6c0a341187346d77f0119d0a835/vmmon-only/linux/hostif.c

将新修改的文​​件打包成 tar 包并替换原始文件:

sudo tar cf /usr/lib/vmware/modules/source/vmmon.tar vmmon-only

重建 VMware 内核模块:

sudo vmware-modconfig --console --install-all

重新启动系统:

sudo reboot

需要修补的来源:

https://communities.vmware.com/thread/571370?start=0&tstart=0

Ubuntu 17.10 升级导致 VMWare Workstation 12.5 崩溃

甚至更好,我建议升级到 Workstation 14,这将删除 Workstation 12。

在终端中运行以下命令来安装 VMware Workstation Player 14:

mkdir ~/vmware
cd ~/vmware
wget -c https://download3.vmware.com/software/player/file/VMware-Player-14.1.1-7528167.x86_64.bundle

或者

点击此处下载:

https://my.vmware.com/en/web/vmware/free#desktop_end_user_computing/vmware_workstation_player/14_0

授予包权限:

sudo chmod u+x VMware-Player-14.1.1-7528167.x86_64.bundle

最后,安装:

sudo ./VMware-Player-14.1.1-7528167.x86_64.bundle

安装程序启动后,请按照屏幕上的说明完成安装。

选择“我接受许可协议中的条款”,然后单击“下一步”。启动时更新;选择“是”(如果需要)。

反馈;选择是或否。

许可证密钥是可选的(可以留空)。

在下一个屏幕上单击“安装”。

完成后关闭。

卸载

sudo vmware-installer -u vmware-player

希望这可以帮助。

答案2

使用 Charly 的脚本superuser.com/questions/1328401/vmware-workstation-vmmon-broken-on-ubuntu-18-04/,我能够在 16.04LTS 上为内核 4.15.0-29-generic 构建所需的模块。脚本末尾有一个拼写错误,sudo ln -s /lib/x86_64-linux-gnu/libz.so.1和之间不应该有换行符/usr/lib/vmware/lib/libz.so.1/libz.so.1

我建议的另一个补充是将sudo /etc/init.d/vmware restart命令添加到上述脚本的末尾。

因此经过调整的实际解决方案脚本是:

#!/bin/bash
VMWARE_VERSION=workstation-12.5.9
TMP_FOLDER=/tmp/patch-vmware
rm -fdr $TMP_FOLDER
mkdir -p $TMP_FOLDER
cd $TMP_FOLDER
git clone https://github.com/mkubecek/vmware-host-modules.git
cd $TMP_FOLDER/vmware-host-modules
git checkout $VMWARE_VERSION
git fetch
make
sudo make install
sudo rm /usr/lib/vmware/lib/libz.so.1/libz.so.1
sudo ln -s /lib/x86_64-linux-gnu/libz.so.1 /usr/lib/vmware/lib/libz.so.1/libz.so.1
sudo /etc/init.d/vmware restart

请注意,这只适用于Workstation 12.5.9,您可以通过运行轻松判断您拥有哪个版本vmware --version,并且您可以更新脚本以使其适用于其他版本......但我还没有测试过。

答案3

此修复的另一个附加组件Ubuntu 20.04 LTSUbuntu 22.04 LTS

您必须在 shell 中或桌面图标中使用文件的完整路径调用 vmplayer,如下所示:

ubuntu@ubuntu:~$ /usr/lib/vmware/bin/vmplayer 

如果你没有在这些更高版本的Ubuntu中,显然会选择一些不同版本的共享库,并且应用程序崩溃而是出现了分段错误!这包括修复桌面图标信息文件。

仅供参考 - 您也可以选择将 vmplayer 本身安装在其他位置/usr/lib。例如,要安装在以下位置,只需在运行安装程序包时/opt添加参数即可。--set-setting vmware-installer libdir /opt

相关内容