我认为我需要比 Ubuntu 存储库中更新的 OVMF 固件来更新我的 Windows 10 VM。最好的方法是什么?

我认为我需要比 Ubuntu 存储库中更新的 OVMF 固件来更新我的 Windows 10 VM。最好的方法是什么?

我有一个 Windows qemu-KVM 虚拟机,无法使用 Windows KB5012170 更新进行更新。

我很确定这个问题和 GitHub 上这个帖子中描述的问题一样https://github.com/tianocore/edk2/discussions/3221

该问题似乎是由于使用较旧的 OVMF 文件造成的,而解决方法是使用较新的 OVMF 文件。

我正在使用 ubuntu 20.04.5,我的 OVMF 版本是 0~20191122.bd85bf54-2ubuntu3.3

我当前的 ovmf 文件:

OVMF_CODE.fd     OVMF_CODE.secboot.fd  OVMF_VARS.ms.fd
OVMF_CODE.ms.fd  OVMF_VARS.fd          OVMF_VARS.snakeoil.fd

我可以直接从 Debian 11 存储库中使用 OVMF_CODE_4M.fd 文件吗?此评论还是我需要自己构建它们?更改现有虚拟机上的固件会遇到问题吗?

答案1

我的情况和你一模一样。我运行的是 Mint 20.2,它基于 Ubuntu 20.04,我无法在 Windows 11 VM 上安装 KB5012170 更新。我基本上浏览了和你相同的所有链接。

我无法回答 Debian 11 版 OVMF 是否有效,但我可以确认在 Ubuntu 中构建自己的 OVMF 更新版本是有效的。安装后,我能够更新 Windows。

以下是我所遵循的步骤,使用了以下资源:

KVM:为虚拟机构建最新的 OVMF 固件

最新稳定版本无法在 Ubuntu 20.04 上构建 #2988

如何在 Ubuntu 20.04 LTS 上安装 NASM | 在 Ubuntu(Linux)中安装 NASM Assembler TAR.GZ 文件

更新 NASM

mkdir nasm; cd nasm/
wget https://www.nasm.us/pub/nasm/releasebuilds/2.15.05/nasm-2.15.05.tar.gz
tar xvfz nasm-2.15.05.tar.gz 
cd nasm-2.15.05/
./configure
make
sudo make install
nasm --version

构建 OVMF

 mkdir -p uuefi; cd uuefi/
 git clone https://github.com/tianocore/edk2.git
 cd edk2/
 git submodule update --init
 source ./edksetup.sh 
 make -C BaseTools/
 OvmfPkg/build.sh -a X64 -b RELEASE
 find Build -name OVMF.fd

安装 OVMF

关闭您的虚拟机。

sudo cp -a Build/OvmfX64/RELEASE_GCC5/FV/OVMF.fd /usr/share/OVMF/
sudo chown root.root /usr/share/OVMF/OVMF.fd 
sudo virsh edit <virtual machine name>

改变

<loader readonly='yes' type='pflash'>/usr/share/OVMF/OVMF_CODE.fd</loader>

<loader readonly='yes' type='pflash'>/usr/share/OVMF/OVMF.fd</loader>

保存并退出,然后启动虚拟机。我不得不重置我的登录 PIN,但之后我就能安装 KB5012170 更新了。

相关内容