主机与虚拟机实现文件映射共享,核心方法是使用虚拟机软件的共享文件夹功能或配置网络共享(SMB/NFS),其中共享文件夹功能最简单,适合大多数桌面用户。
主机与虚拟机文件映射共享怎么设置
先说结论:你不需要U盘、网盘或者反复拖拽文件,虚拟机软件本身就内置了“共享文件夹”选项,打开虚拟机设置,找到共享文件夹路径,添加一个主机目录,虚拟机会自动把它挂载为一个网络盘符或目录,整个过程大约5分钟,不需要额外安装驱动(部分Linux系统需要装open-vm-tools或VBoxGuestAdditions)。
三种主流虚拟机共享方案对比
针对不同场景,业内专家指出,“没有一种方案通吃所有需求,选择标准是:你更看重速度还是兼容性”,常见方案如下:
| 方案 | 速度 | 配置难度 | 适用场景 |
|---|---|---|---|
| VMware共享文件夹 | 较快 | 极低 | Windows/Linux桌面虚拟机 |
| VirtualBox共享文件夹 | 较快 | 低 | 跨平台测试、开发环境 |
| SMB/NFS网络共享 | 受网卡性能影响 | 中等 | 多虚拟机同时访问、服务器场景 |
如果你的选择依据是“vmware和virtualbox共享文件夹对比哪个好用”,那么多数情况下VMware挂载更顺畅,VirtualBox对Linux支持稍显繁琐但完全免费。
以VMware Workstation为例的实操步骤
- 关闭虚拟机(或保持运行,但部分设置需重启生效)
- 点击菜单栏“虚拟机” → “设置”
- 切换到“选项”标签页,找到“共享文件夹”
- 选择“总是启用”
- 点击“添加”按钮,选择主机上要共享的物理路径,例如
E:\work或/Users/你的名字/Share - 勾选“启用此共享”,建议勾选“映射为网络驱动器”
- 启动虚拟机后,Windows系统里打开“此电脑”,能看到类似
\\vmware-host\Shared Folders\work的路径;Linux系统则挂载在/mnt/hgfs/work
如果你用的是

Ubuntu等Linux发行版,装好open-vm-tools后,执行sudo mount -t fuse.vmhgfs-fuse .host:/work /mnt/hgfs即可看到文件。
VirtualBox共享文件夹配置差异
VirtualBox的操作路径是:选中虚拟机 → “设置” → “共享文件夹” → 添加共享目录,注意勾选“自动挂载”和“固定分配”,Windows客户机需要安装增强功能(Guest Additions),Linux客户机则要执行:
sudo mkdir /mnt/share
sudo mount -t vboxsf work /mnt/share
这里的关键差异是:VirtualBox默认挂载后权限受限,需要在宿主机上把共享目录设为可读写。
笔记本电脑虚拟机映射哪个快:选择打开虚拟机的传输方式
很多人在意笔记本电脑虚拟机映射哪个快,其实瓶颈往往不在虚拟机软件,而在你共享的目录类型和磁盘类型。
固态硬盘直通与虚拟机磁盘缓存
- 如果你把虚拟机镜像存放在NVMe固态硬盘上,共享文件夹读写速度基本能达到600MB/s以上
- 如果是机械硬盘,速度会掉到80MB/s以下,属于正常现象
- 若共享的是移动硬盘或网络驱动器,速度取决于USB协议或WiFi带宽
想提升速度,建议把共享目录放在本地高速磁盘,并且不要勾选虚拟机设置中的“将虚拟机磁盘压缩以节省空间”选项,因为该选项会引入额外计算开销。
主机与虚拟机文件映射共享常见问题排查
遇到无法访问共享目录时,按下面顺序检查:
- 虚拟机是否安装了增强工具(VMware Tools/VBoxGuestAdditions)
- 防火墙是否拦截了文件共享端口(Windows客户机需要允许“文件和打印机共享”)
- 共享路径中是否包含中文或特殊符号,有的话改成英文路径
- 是否开启了“用户账户控制”(UAC)拦截,部分情况需要以管理员身份运行虚拟机窗口
家用电脑虚拟机文件共享设置费用说明
家用电脑场景下,家用电脑虚拟机文件共享设置费用实际上为零,因为VMware Workstation Player和个人版VirtualBox均为免费,唯一可能付费的场景是:你需要在Windows宿主机和macOS虚拟机之间共享文件,且不想自己配置,可能会用到第三方工具如Parallels Desktop(年费约600元左右),但严格来说这不属于传统“主机到虚拟机”映射,而是商业软件的集成方案。

如何通过SMB协议实现主机与虚拟机文件映射共享
当共享文件夹功能失灵或虚拟机不支持增强工具时,SMB网络共享是最可靠的备选方案,本质是:在主机上创建一个普通共享文件夹,虚拟机通过网络路径访问它。
Windows宿主机创建SMB共享
- 在主机上右键需要共享的文件夹 → “属性” → “共享” → 选择“Everyone”并设置读取/写入权限
- 打开“控制面板” → “网络和共享中心” → “高级共享设置” → 启用“网络发现”和“文件和打印机共享”
- 查看主机IP地址:命令行输入
ipconfig,记下IPv4地址,例如168.1.5 - 在虚拟机内打开资源管理器,地址栏输入
\\192.168.1.5\sharename,输入主机登录账户和密码
Linux宿主机配置NFS共享
如果你主机是Linux,虚拟机是Windows,用SMB比较麻烦,建议在主机上安装nfs-kernel-server,编辑/etc/exports加入:
/home/user/share 192.168.122.0/24(rw,sync,no_subtree_check)
重启NFS服务后,在虚拟机内挂载:
mkdir /mnt/nfs
mount -t nfs 192.168.1.10:/home/user/share /mnt/nfs
这类方法特别适合本地虚拟机集群测试场景,多个虚拟机同时读写主机文件,互不干扰。
主机与虚拟机双向文件同步的替代思路
除了共享文件夹映射,还可以用“同步文件夹”的思路,区别在于共享是实时访问主机文件,而同步是复制一份到虚拟机磁盘。
- 主机改文件 → 虚拟机实时可见,属于共享
- 主机改文件 → 虚拟机定时或手动同步,属于同步
- 常用工具:Syncthing(免费开源)、Resilio Sync(付费增强版)
对于文档编辑、代码开发,推荐共享文件夹方式;对于离线便携、断网恢复,推荐同步方式,同步工具的配置成本相对更高,非必要不建议上。

部分虚拟机共享后文件不显示的处理技巧
当你在VirtualBox里设置了共享,但Linux客户机内找不到挂载点时,试试手动加载vboxfs模块:
sudo modprobe vboxsf
sudo mount -t vboxsf 共享名 /mnt/share
如果仍然报错“mounting failed: No such device”,说明增强功能没有完全安装,重新执行apt install linux-headers-$(uname -r)后重启,再安装Guest Additions即可。
主机与虚拟机文件映射共享的最终建议
移动硬盘里拷来拷去、微信文件传输助手、搭建FTP服务器,这些旧办法在共享映射面前都算绕路,最稳妥的路径是:先尝试虚拟机自带的共享文件夹功能,失败后转为SMB共享,两种方案覆盖了95%以上的桌面用户需求,且不产生任何额外费用,遇到权限问题时,优先检查增强工具和防火墙,而不是盲目重装虚拟机。
主机与虚拟机文件映射共享常见问题QA
Q:共享文件夹在虚拟机里只读,改不了文件怎么办?
A:主机侧共享目录权限设为只读,或虚拟机内账户无写入权限,在Windows主机上,右键共享文件夹 → 属性 → 共享 → 权限,改为“读取/写入”;在Linux宿主机上,检查共享目录的属主和组权限,确保当前用户对目录有rwx权限,并重新添加共享。
Q:虚拟机关闭后共享文件夹还能访问吗?
A:不能,共享文件夹机制依赖虚拟机运行时挂载,虚拟机处于关闭状态时,主机文件和虚拟机镜像之间没有活动连接,如果想脱离虚拟机访问文件,应该直接打开虚拟机磁盘文件(如vmdk)所在的主机目录进行读写,但此时虚拟机磁盘格式可能不被Windows原生识别,需要额外工具。
Q:macOS主机和Windows虚拟机文件映射共享怎么操作最快?
A:macOS主机推荐使用Parallels Desktop的共享文件夹功能,直接在虚拟机配置里添加Mac目录,Windows虚拟机中自动映射为Z:盘,如果你使用VMware Fusion,操作路径为“虚拟机设置” → “共享” → 添加文件夹,原理与Workstation完全一致,两者均无需额外网络配置。