如何使用 Windows 客户机正确配置 Virt-Manager (QEMU/KVM)

如何使用 Windows 客户机正确配置 Virt-Manager (QEMU/KVM)

我目前正在切换到 Virt-Manager (QEMU/KVM) 并放弃 VirtualBox(因为它很慢),但我发现 Virt-Manager 很难配置。在 VBox 和 VMware 中,您所要做的就是安装客户机附加组件,然后一切都会正常工作,包括显示、文件夹共享等。

我希望有一个 Windows 客户机(7 或 10),至少有一个可用的网络、显示驱动程序和文件夹共享。设置文件系统直通似乎在 Windows 客户机中不起作用(我也厌倦了尝试桑巴上班)。

创建具有工作显示和共享功能的 Windows 客户机的正确方法是什么?也许我错过了一些依赖项或 Virt-Manager 特定设置?

我遵循的“如何做”指南:

我尝试了nautilus-share,以及手动/etc/samba/smb.conf配置,并尝试使用 在客户操作系统中挂载文件夹\\IP.ADDRESS\SHARED_FOLDER,但没有任何效果。


编辑

遗憾的是,Windows 客户机不支持 3D 加速...我想我现在还是坚持使用 VirtualBox/VMware 吧...

供将来参考,以下是我在基于 Ubuntu 的 18.04 LTS(具体来说,Pop! OS 18.04)上完全正常工作的网络、显示和文件夹共享 QEMU/KVM 设置。最初,我使用安装了 KVM 的 Android 模拟器进行开发。因此,我决定从 VBox 和 VMware 切换到 Virt-Manager 进行操作系统测试,主要用于我在 Windows 中使用的软件,因为它也针对基于内核的虚拟机并且速度更快。

设置

1.安装并验证虚拟机

$ sudo apt install qemu-kvm libvirt-bin ubuntu-vm-builder bridge-utils
$ kvm-ok

需要重新启动才能正常工作。

2.安装 Red Hat虚拟机管理器

$ sudo apt install virt-manager

3.创建 Windows 虚拟机:

我使用动态分配的 QCOW2 存储格式:

$ sudo qemu-img create -f qcow2 /var/lib/libvirt/images/test-vm.qcow2 30G

使用 VirtIO 类型的存储和网络(需要VirtIO 驱动程序):

VirtIO 存储

VirtIO 网络

包含 VirtIO 驱动程序映像文件:

VirtIO 驱动程序

4.Windows 客户机安装:

加载 VirtIO 存储和网络驱动程序(并继续标准安装):

Windows VirtIO 存储驱动程序

对于网络驱动程序,在安装过程中加载时,您可能看不到任何列出的驱动程序。当我在网络接口中使用 NAT 而不是在桥接模式下使用时,就会发生这种情况。如果是这种情况,那么您可以稍后手动更新驱动程序。

Windows VirtIO 网络驱动程序

5.安装和配置桑巴对于通过网络共享的基本公共文件夹:

在主机操作系统上安装 Samba:

$ sudo apt install samba

添加基本​​的公共文件夹配置:

$ sudo nano /etc/samba/smb.conf

添加以下几行:

[Public]
  comment = Public shared folder
  path = /path/to/public/folder
  read only = yes
  guest ok = true
  acl allow execute always = true

重新启动 Samba 服务(或执行完整的reboot):

$ testparm
$ sudo service smbd restart

然后,您可以使用以下命令映射 Windows 客户机中的文件夹\\<host-ip-address>\Public

Windows 映射共享文件夹

Windows 映射共享文件夹

6.下载SPICE 访客工具用于显示器和其他 VirtIO 驱动程序等。

然后,您可以使用公共共享文件夹将其安装到 Windows 客户操作系统。

答案1

将所有必需的驱动程序安装到 Windows 客户机的最简单方法是使用SPICE Guest Tools Windows 安装程序. 下载中spice-guest-tools-最新版.exe应该始终为您提供最新版本。

该软件包包括 Windows QXL/WDDM 显示驱动程序以及 KVM 提供的虚拟硬件的所有 virtio 驱动程序,并一次性安装它们。

请注意,KVM 不向 Windows 客户机提供文件共享。您仍需要自行设置 Samba。

答案2

也许对于未来的读者来说,关于文件共享部分,你也可以反过来看。在 Windows VM 上创建共享,然后将该共享挂载到 Linux 主机上。

我正在使用桥接网络连接,不确定它是否适用于 NAT。

这更容易设置(无需在主机上设置 samba 服务器),但需要在 VM 启动后挂载文件夹。适合偶尔使用,不适合日常使用。

在 Linux 主机上安装共享(到 windows_vm 文件夹)看起来像这样:sudo mount -t cifs //WINDOWS_HOSTNAME/SHARE_NAME windows_vm -o user=windowsUserName,pass=windowsPassword,uid=1000,gid=1000

需要 uid 和 gid,以便文件属于本地用户而不是 root。

相关内容