在 KVM(Kernel-based Virtual Machine)中,要实现虚拟机与宿主机之间的共享文件夹,通常需要借助于 VirtIO 或 9P 协议。以下是一个基本步骤:
-
安装 Guest Tools:
对于大多数现代 Linux 发行版,你可以安装 qemu-guest-agent 和 virtiofs-tools。对于 Windows 虚拟机,则可能需要安装 QEMU Integration Services。 -
配置共享目录:
在宿主机上创建一个用于共享的目录,例如/home/user/share
。修改虚拟机的 XML 配置文件(假设虚拟机名为
myvm
),添加共享目录挂载点:然后使用
virsh define /path/to/myvm.xml
重新加载配置。 -
在虚拟机内挂载共享目录:
对于支持 VirtIO-FS 的 Linux 虚拟机,可以直接挂载/mnt/share
(这里的/mnt/share
是虚拟机内的路径,可根据需要更改):mkdir /mnt/share mount -t virtiofs share /mnt/share
对于不支持 VirtIO-FS 或者是 Windows 虚拟机,可以使用旧的 9p 方法,在虚拟机内挂载:
# 对于Linux虚拟机 mkdir /mnt/share mount -t 9p -o trans=virtio,version=9p2000.L share /mnt/share # 对于Windows虚拟机,需要先安装 guest utilities 并在磁盘管理中找到并格式化新增的 9p 网络驱动器,然后通过 explorer 挂载。
-
实时共享:
如果需要在运行中的虚拟机中添加共享文件夹,可以在宿主机上使用命令动态添加:virsh attach-device myvm /path/to/new_share.xml
其中
new_share.xml
是包含新共享目录设置的 XML 配置片段。
请注意,不同版本和类型的虚拟机对共享文件夹的支持可能会有所不同,上述方法可能需要根据实际情况进行调整。
KVM Virtual Machine Manager 虚拟机如何实现共享文件夹?
网上的教程均有问题