![修改 qemu 而不破坏我当前的安装](https://linux22.com/image/678437/%E4%BF%AE%E6%94%B9%20qemu%20%E8%80%8C%E4%B8%8D%E7%A0%B4%E5%9D%8F%E6%88%91%E5%BD%93%E5%89%8D%E7%9A%84%E5%AE%89%E8%A3%85.png)
我目前在我的 Debian 笔记本电脑上安装了 kvm:
kvm --version
QEMU emulator version 2.1.2 (Debian 1:2.1+dfsg-12+deb8u5a),
我想将其修改为支持嵌套虚拟化(ESXi VM)。
这个小教程似乎完全符合我的要求,但我对这部分感到困惑:
Patch and compile QEMU
cd /opt
sudo git clone https://github.com/qemu/qemu.git
cd qemu
sudo curl "https://gist.githubusercontent.com/jcpowermac/3d9c732be08404302083/raw/ba97ceceefb2ffb085fa8da0f5f5a6142127454e/qemu.patch" | sudo patch -p1
sudo ./configure --enable-kvm --target-list=x86_64-linux-user,x86_64-softmmu
sudo make -j8
sudo wget "https://gist.githubusercontent.com/jcpowermac/36bfa62cd60781264b3f/raw/f26aa286d5ab85f17555141e04ab549e10727475/qemu-kvm"
他这样做之后说:
这将使我们原来的 QEMU 安装保持不变,这可能是一件好事。接下来我们需要定义一个虚拟机。
但这让我想知道如何使用这个修改后的版本来代替我当前的版本?以这种方式构建修改后的 qemu 真的不会覆盖我当前的版本吗?当我运行 virsh 时它会指向哪个版本?
答案1
只需通过其完全限定路径访问它,它将安装在 /opt 中。如教程中所述,libvirt 中的域 XML 包含一个部分,该部分将虚拟机指向要使用的正确 QEMU 程序。
不过,我不明白上述补丁的意义何在,因为它似乎只是简单地覆盖了可以在 libvirt XML 中设置的 vmport 设置……据我所知,使用 KVM 进行嵌套所需的唯一操作是通过 modprobe.d 在模块中启用它。您可能想先尝试不使用补丁,或者找到更新的源。