[已過時]
[Out of Date]
Ubuntu內核更新 不能運行 vmware
linux uefi 開啓安全引導之後不能運行VMware 。。。
更新:
2019.04.03:
內核更新後又不好使了:
4.18.0-17-generic #18-Ubuntu
幸虧uefi 有安全引導setup模式
sudo vmware-modconfig --console --install-all
Starting VMware services:
Virtual machine monitor failed
Virtual machine communication interface done
VM communication interface socket family done
Blocking file system done
Virtual ethernet failed
VMware Authentication Daemon done
Unable to start services
找了很多,都是把安全引導關了,,這什麼解決方式啊,(髒話)
話不多說
VMwareKB 的解答
https://kb.vmware.com/s/article/2146460
過段時間再翻譯
翻譯
面向小白:
$openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=VMware/"
$sudo /usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmmon)
$sudo /usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmnet)
$sudo mokutil --import MOK.der
重啓電腦在開機之前的uefi界面Enroll 密鑰
對大佬:
用openssl創建密鑰對 vmmom, vmnet 模塊簽名並導入到uefi
原文
Resolution
Notes:Workstation does not ship vmmon.ko and vmnet.ko in the bundle
currently. The two modules are built during the installation or the
first launch of workstation.
During the installation if the host provides the proper kernel headers and gcc, these two modules will be built silently. The
progress is logged into /tmp/vmware-root/vmware-PID.log.
When workstation is first launched, a dialog will pop up to ask you for the usable kernel headers and/or gcc. These two modules will
be built with window showing the progress and log printed on terminal.To correct the issue with secure boot enabled:
Generate a key pair using the openssl to sign vmmon and vmnet modules: $openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj "/CN=VMware/" Replace MOK with the name of the file you want for the key. Sign the modules using the generated key by running these commands: $sudo /usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmmon) $sudo /usr/src/linux-headers-`uname -r`/scripts/sign-file sha256 ./MOK.priv ./MOK.der $(modinfo -n vmnet) Import the public key to the system's MOK list by running this command: $mokutil --import MOK.der Confirm a password for this MOK enrollment request. Reboot your machine. Follow the instructions to complete the enrollment from the UEFI console. Note: Preceding commands are verified to work on Ubuntu 16.04 hosts. The general steps are applicable to all Linux distributions,
but specific Linux distributions might differ in commands.