1. 程式人生 > 其它 >Centos 安裝虛擬機器異常處理

Centos 安裝虛擬機器異常處理

宿主機作業系統:Centos7.9.2009 x64

GNOME Boxes

安裝GNOME桌面後自帶Boxes,號稱最先進的虛擬化技術,但是過於簡潔。
安裝了windows10後遇到幾個問題:
* 檢查音效卡驅動正常,但無法播放聲音;
* 轉發系統訊息提醒到宿主機異常
* 擴容(增加記憶體及硬碟分配)後重啟不生效

Oracle VM VirtualBox

安裝VirtualBox

# cd /etc/yum.repos.d/
# wget http://download.virtualbox.org/virtualbox/rpm/rhel/virtualbox.repo 
# yum install VirtualBox-6.1
#/usr/lib/virtualbox/vboxdrv.sh setup

然後安裝windows後發現,VirtualBox無法引導任何VM,提示There were problems setting up VirtualBox. To re-start the set-up process, run
/sbin/vboxconfig
as root. If your system is using EFI Secure Boot you may need to sign the
kernel modules (vboxdrv, vboxnetflt, vboxnetadp, vboxpci) before you can load
them. Please see your Linux system's documentation for more information.
出錯原因
BIOS設定的一個安全保護措施安全啟動secure boot,就是在任何在主機板上載入的作業系統或者硬體驅動程式執行時,都必須經過一個安全驗證,而開啟虛擬機器時,VirtualBox驅動器(其中的vboxdrv元件)無法通過這個安全驗證,不能執行,這就導致了虛擬機器無法啟動。
解決方案可以禁用secure boot,或者新增“安全金鑰”對這些核心模組進行簽名,這裡選擇後者

// 安裝mokutil軟體包
yum install mokutil
mkdir /root/signed-modules
cd /root/signed-modules
openssl req -new -x509 -newkey rsa:2048 -keyout MOK.priv -outform DER -out MOK.der -nodes -days 36500 -subj"/CN=VirtualBox/"
chmod 600 MOK.priv
//此命令將要求您新增密碼,下次重啟後需要此密碼
sudo mokutil --import MOK.der
// 重新啟動系統,出現藍屏,選擇Enroll MOK-> Continue->輸入先前的密碼,系統將啟動
/usr/src/kernels/$(uname -r)/scripts/sign-file sha256 /root/signed-modules/MOK.priv /root/signed-modules/MOK.der $(modinfo -n vboxdrv)
modprobe vboxdrv

然後安裝windows,以為萬事大吉了,結果發現有不少問題
1.系統卡頓,增加記憶體,cpu分配後有所緩解
2.網路掉線,使用下載工具兩三分鐘後莫名掉線,用的NAT
3.介面解析度問題

VMware

終極解決方案
VMware Workstation Pro 文件
https://docs.vmware.com/cn/VMware-Workstation-Pro/index.html
VMware Workstation Player 文件
https://docs.vmware.com/cn/VMware-Workstation-Player-for-Windows/index.html
檢視受支援的主機作業系統的列表,VMware 相容性指南
https://www.vmware.com/resources/compatibility/search.php?deviceCategory=software&details=1&partner=272&operatingSystems=202&productNames=3&page=1&display_interval=10&sortColumn=Partner&sortOrder=Asc&testConfig=16
支援在CentOS 7.x x86(64-bit) 上安裝Workstation 16.0,15.5,15.1,15.0,14.0,16.2,16.1
訪客作業系統安裝說明
http://partnerweb.vmware.com/GOSIG/home.html
centos7安裝說明
http://partnerweb.vmware.com/GOSIG/CentOS_7.html#VMCG

當然,道路是曲折的,還是遇到了無法引導任何VM的問題,參照VirtualBox類似的解決方案

// 安裝mokutil軟體包
yum install mokutil
mkdir /root/signed-modules
cd /root/signed-modules
//為vmmon和vmnet元件生成金鑰對,VMW.der 是公鑰,VMW.priv是私鑰,VMW是金鑰的名字,也可以改成別的
openssl req -new -x509 -newkey rsa:2048 -keyout VMW.priv -outform DER -out VMW.der -nodes -days 36500 -subj "/CN=VMware/"
sudo /usr/src/kernels/$(uname -r)/scripts/sign-file sha256 ./VMW.priv ./VMW.der $(modinfo -n vmmon)
sudo /usr/src/kernels/$(uname -r)/scripts/sign-file sha256 ./VMW.priv ./VMW.der $(modinfo -n vmnet)
//此命令將要求您新增密碼,下次重啟後需要此密碼
sudo mokutil --import VMW.der
// 重新啟動系統,出現藍屏,選擇Enroll MOK-> Continue->輸入先前的密碼,系統將啟動
modprobe vmmon
modprobe vmnet

然後正常使用了,評價VMware:專業