こんにちは、Ubuntu 17.10にアップグレードした後、vmwareが起動しなくなりました。
私はメッセージを受け取ります:
/usr/lib/vmware/bin/vmware-modconfig: Relink `/lib/x86_64-linux-gnu/libbsd.so.0' with `/lib/x86_64-linux-gnu/librt.so.1' for IFUNC symbol `clock_gettime'
利用可能なパッチがあることを認識しており、これらを適用して再コンパイルしようとしています。 https://communities.vmware.com/thread/57137 のソリューションから実行しました。
cd ~
#Copy the vmmon source tar ball to your temporary location
cp /usr/lib/vmware/modules/source/vmmon.tar .
#Extract the tar ball
tar xf vmmon.tar
#Download the modified file that mkubecek posted and overwrite the one from the tar ball for VMware Workstation 12.5:
wget -O ./vmmon-only/linux/hostif.c https://raw.githubusercontent.com/mkubecek/vmware-Host-modules/b50848c985f1a6c0a341187346d77f0119d0a835/vmmon-only/linux/hostif.c
#Wrap up the newly modified files into a tar ball replacing the original one
Sudo tar cf /usr/lib/vmware/modules/source/vmmon.tar vmmon-only
#Rebuild the VMware kernel modules
Sudo vmware-modconfig --console --install-all
Failed to get gcc information.
gcc --version
gcc (Ubuntu 7.2.0-8ubuntu3) 7.2.0 ...
残念ながら、特定のgccバージョンに依存しているように思われるため、vmware-modconfigは失敗します。私は正しい軌道に乗っていますか?この問題に関する助けをいただければ幸いです。
EDITスティーブ、ありがとう。軽微な修正を含めました。仮想マシンを実行できることをテストして確認しました。
Sudo su
# do all below as root
cd /usr/lib/vmware/modules/source
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
# run vmware as normal user
/usr/lib/vmware/bin/vmware
Kubuntu 17.10でVMWare Workstation 12.5.7を動作させることができました。
/usr/lib/vmware/modules/source
::
vmmon.tar
およびvmnet.tar
を抽出します
Sudo tar -xf vmmon.tar
Sudo tar -xf vmnet.tar
これにより、vmmon-only
およびvmnet-only
ディレクトリが作成されます。
パッチを適用したhostif.c
を取得します
Sudo wget -O vmmon-only/linux/hostif.c https://raw.githubusercontent.com/mkubecek/vmware-Host-modules/b50848c985f1a6c0a341187346d77f0119d0a835/vmmon-only/linux/hostif.c
(注: https://communities.vmware.com/thread/57137 -VMWare Workstation 14の同様の修正も含まれています)
編集vmnet-only/bridge.c
:
639c639
< atomic_inc(&clone->users);
---
> atomic_inc((atomic_t*)&clone->users);
走る
make -C vmmon-only
make -C vmnet-only
cp -t /lib/modules/4.13.0-16-generic/misc *.ko
modprobe -r vmmon
insmod /lib/modules/4.13.0-16-generic/misc/vmmon.ko
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 # see https://communities.vmware.com/thread/572259
vmware-networks --start # see https://forum.chakralinux.org/viewtopic.php?id=8579
ユーザーとして:
/usr/lib/vmware/bin/vmware
(vmware-modconfig
の実行を防ぐため)
他のすべてのソリューションを試してみましたが、何も機能しませんでした。しかし、これらの手順はUbuntu 18.04、VMware 12.5.9でうまくいきました
git clone https://github.com/mkubecek/vmware-Host-modules.git
cd vmware-Host-modules
git checkout workstation-12.5.9 (change it to your version. it's important)
make && Sudo make install
cd /usr/lib/vmware/lib/libz.so.1
Sudo mv libz.so.1 libz.so.1.old
Sudo ln -s /lib/x86_64-linux-gnu/libz.so.1 .
Sudo depmod -a
Sudo /etc/init.d/vmware restart
参照:
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1715552
https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1715552/comments/29
によって説明されたバグ修正:スティーブンは他のバグに多くを導く:「gcc情報を取得できませんでした。」
最も簡単な解決策は、vmware player workstation 14.1をダウンロードです。
12.5バージョンではなくをインストールすると、上記の問題が解決します。
実行するには
chmod +x VMware-Player-14.1.1-7528167.x86_64.bundle
Sudo ./VMware-Player-14.1.1-7528167.x86_64.bundle
そして、グラフィカルインストーラーの指示に従います。
Stephen Wassellによる回答に加えて、VM Workstation 12.5.xバージョンをまだ実行している場合は、毎回.ko
を再コンパイルする必要があります。カーネルパッチ..
次のエラーが表示される場合があります:(Invalid module format)
# insmod /lib/modules/4.13.0-31-generic/misc/vmnet.ko
insmod: ERROR: could not insert module /lib/modules/4.13.0-31-generic/misc/vmnet.ko: Invalid module format
これは、カーネルパッチの後にubuntu-flavor-distrosのカーネルモジュールを更新し続けるためのツールです。
https://Gist.github.com/shadowbq/5897002b620b093ca7578b5f13c3f3a1
また、vmwareワークステーションを起動するための代替を使用できる単純なwrapper.sh
を含めたため、毎回vm-networkおよびvm-monカーネルモジュールが適切にロードされることを確認できます。
注:このスクリプトは、ソースファイルの 'tar'または 'patch'を展開しません。これは、Stephen Wassellによる元の手順に従ったカーネルパッチの後、カーネルモジュールを自動的に再コンパイルするためです。