debian 12 中和 windows 虚拟机共享文件新方案:virtio-fs

我简述一下步骤,防止新手踩坑:

  1. 安装virt-manager,使用sudo adduser $USER libvirt添加当前用户到libvirt用户组中
  2. 创建 windows 虚拟机,注意不要使用qemu:///session,否则无法使用 virtio-fs
  3. 在 details 界面的 Memory 节中开启 shared memory
  4. 点击 Add Hardware 添加一个 File System,Source Path 填写你要共享的主机文件夹的路径,Target Path 填写 windows 虚拟机中的共享分区名称
  5. 下载驱动 https://fedorapeople.org/groups/virt/virtio-win/direct-downloads/latest-virtio/virtio-win-guest-tools.exe
  6. 下载 winfsp Releases · winfsp/winfsp · GitHub
  7. 进入 windows 虚拟机,安装以上两个软件
  8. 重启虚拟机(必须),打开服务管理界面并找到VirtioFsSvc服务,设置让其开机自启即可

最后说明一下,因为VirtioFsSvc服务在重启之后才会出现,所以必须要重启。

3 个赞

我的 Windows virtiofs 刚消失不久……

那你现在用啥方案?

1 个赞

这个方法可以让guest可以访问主机文件夹。

如果主机想访问guest的文件夹,应该怎么操作?

没有办法。

如果你只是想传文件到主机,直接拷贝到主机文件夹就行了。

如果你真的要访问 guest 的文件夹,大概只能使用桥接网络,然后在 guest 内开 ftp 之类的服务了。

更新:
这个方案中,主机的共享文件夹是挂载到 guest 文件系统里的,所以你可以把这个文件夹当成 guest 自己的来用,这样应该能满足你的需求了。

我看了下。我的笔记里面应该用的是这两种方法。

我现在没有在用 Windows 虚拟机了。另外 virtiofs 在 Windows 下也有些问题,不能执行文件,需要先复制到虚拟机硬盘里再运行。

最新版已经可以执行文件了(需要管理员权限的也可以执行),特来回复一下。