配置宿主机与虚拟机的共享文件夹
时间: 2025-06-19 19:29:27 浏览: 31
<think>我们参考用户提供的引用资料,总结出在VMware和VirtualBox两种虚拟机环境下配置共享文件夹的方法。用户的目标是传输镜像文件到虚拟机,因此共享文件夹是最便捷的方式。###🖥️一、VMware配置共享文件夹(Windows宿主机→Ubuntu虚拟机)**步骤1:安装VMwareTools**1.启动Ubuntu虚拟机2.点击VMware菜单:`虚拟机→安装VMwareTools`3.在虚拟机中自动挂载VMwareTools镜像,解压安装包:```bashtar-zxvf/media/你的用户名/VMwareTools-*.tar.gz-C/tmp```4.执行安装:```bashcd/tmp/vmware-tools-distrib/sudo./vmware-install.pl#全部按回车使用默认配置```**步骤2:配置共享文件夹**1.在VMware中设置共享目录:-关闭虚拟机→`虚拟机设置→选项→共享文件夹`-选择`总是启用`→添加宿主机上的目录(如`D:\vm_share`)2.在Ubuntu中手动挂载(临时):```bashmkdir~/sharevmhgfs-fuse.host:/共享文件夹名~/share-oallow_other```3.**永久挂载(推荐)**:修改`/etc/fstab`文件,添加:```bash.host:/共享文件夹名/mnt/hgfsfuse.vmhgfs-fuseallow_other,defaults00```创建挂载点并生效:```bashsudomkdir-p/mnt/hgfssudomount-a```>⚠️若报错`usethe'nonempty'mountoption`,改用:>```bash>sudovmhgfs-fuse.host://mnt/hgfs-ononempty-oallow_other-ouid=1000-ogid=1000>```>其中`uid`和`gid`通过`id`命令查看[^4]。###📦二、VirtualBox配置共享文件夹(Windows宿主机→Linux虚拟机)**步骤1:安装增强功能**1.启动虚拟机→点击菜单:`设备→安装增强功能`2.挂载增强功能镜像→执行安装:```bashsudosh/media/你的用户名/VBox_GAs_*/VBoxLinuxAdditions.run```**步骤2:设置共享文件夹**1.关闭虚拟机→`设置→共享文件夹`2.添加路径:选择宿主机目录(如`D:\vb_share`),命名(如`vb_share`),勾选`自动挂载`和`固定分配`3.在虚拟机中创建挂载点并挂载:```bashsudomkdir/mnt/vb_sharesudomount-tvboxsfvb_share/mnt/vb_share```4.**开机自动挂载**:编辑`/etc/fstab`,添加:```bashvb_share/mnt/vb_sharevboxsfdefaults00```>💡解决符号链接问题(可选):>```bash>VBoxManagesetextradata虚拟机名VBoxInternal2/SharedFoldersEnableSymlinksCreate/共享文件夹名1>```###🔄三、传输镜像文件到虚拟机配置完成后:1.将`harbor.rs.nlecloud.com_xuper_elasticsearch_5.6.13.tar`放入宿主机的共享目录(如`D:\vm_share`)2.在虚拟机中访问共享位置:-VMware:`/mnt/hgfs/`-VirtualBox:`/mnt/vb_share/`3.直接加载Docker镜像:```bashcd/mnt/hgfs#或/mnt/vb_sharedockerload-iharbor...tar```###⚠️四、权限问题处理若提示`Permissiondenied`:```bash#将当前用户加入vboxsf组(VirtualBox)sudousermod-aGvboxsf$USER#或修改共享目录权限(VMware)sudochmod777/mnt/hgfs```###📊对比两种方案|特性|VMware|VirtualBox||---------------------|---------------------------------|-----------------------------||共享文件夹性能|⭐⭐⭐⭐(hgfs内核驱动)|⭐⭐⭐(vboxsf)||大文件支持|✅更适合GB级镜像传输|⚠️超大文件可能不稳定||双向拖放/粘贴板|需单独启用|需单独启用[^2]||配置复杂度|中等(需编译驱动)|简单(自带增强功能)|>💎推荐:**VMware的hgfs性能更优**,适合传输Docker镜像等大文件[^4]。---###相关问题1.为什么VMware共享文件夹挂载后显示为空?2.VirtualBox共享文件夹如何解决符号链接(symlink)失效问题?[^3]3.如何验证共享文件夹的读写性能?4.除了共享文件夹,还有哪些跨平台文件传输方法?5.Docker加载镜像时出现"nospaceleftondevice"错误如何解决?[^1]:VMware共享文件夹配置与Samba方案对比[^2]:VirtualBox桥接网络与共享文件夹配置[^3]:VirtualBox符号链接支持与安全限制[^4]:VMware大文件传输优化与权限配置</think>### 🛠️ 如何配置宿主机与虚拟机共享文件夹(以传输镜像文件)
#### 一、VMware 虚拟机配置(Windows 宿主机 → Linux 虚拟机)
**步骤1:启用共享功能**
1. **关闭虚拟机** → 右键虚拟机 → `设置` → `选项` → `共享文件夹`
2. 选择 `总是启用` → 点击 `添加` 按钮
3. 指定宿主机共享目录(如 `D:\vm_share`)和共享名称(如 `vm_share`)
**步骤2:虚拟机内挂载(Ubuntu/CentOS 示例)**
```bash
# 创建挂载点
sudo mkdir /mnt/hgfs
# 手动挂载(临时)
sudo /usr/bin/vmhgfs-fuse .host:/vm_share /mnt/hgfs -o nonempty -o allow_other
# 永久挂载(编辑fstab)
echo ".host:/vm_share /mnt/hgfs fuse.vmhgfs-fuse allow_other,defaults 0 0" | sudo tee -a /etc/fstab
sudo mount -a # 立即生效
```
**步骤3:传输镜像文件**
1. 将 `harbor.rs.nlecloud.com_xuper_elasticsearch_5.6.13.tar` 放入宿主机 `D:\vm_share`
2. 在虚拟机中访问:
```bash
cd /mnt/hgfs
ls # 应能看到镜像文件
```
> ⚠️ **权限问题解决**(如报错 `uid/gid` 问题):
> ```bash
> # 查询当前用户ID
> id -u $USER # 输出如1000
> id -g $USER # 输出如1000
>
> # 重新挂载(替换实际ID)
> sudo vmhgfs-fuse .host:/ /mnt/hgfs -o nonempty -o allow_other -o uid=1000 -o gid=1000
> ```
---
#### 二、VirtualBox 虚拟机配置(Windows 宿主机 → Linux 虚拟机)
**步骤1:安装增强功能**
1. 启动虚拟机 → 菜单栏 `设备` → `安装增强功能`
2. 在虚拟机内执行:
```bash
sudo sh /media/*/VBoxLinuxAdditions.run
```
**步骤2:配置共享文件夹**
1. **关闭虚拟机** → `设置` → `共享文件夹`
2. 添加宿主机路径(如 `D:\vb_share`)和文件夹名称(如 `vb_share`)
3. 勾选 `自动挂载` 和 `固定分配`
**步骤3:虚拟机内访问**
```bash
# 访问自动挂载点
cd /media/sf_vb_share
# 手动创建挂载点(可选)
sudo mkdir /mnt/vbox
sudo mount -t vboxsf vb_share /mnt/vbox
```
**步骤4:传输文件**
1. 镜像文件放入宿主机 `D:\vb_share`
2. 虚拟机内查看:
```bash
ls /media/sf_vb_share # 或 /mnt/vbox
```
---
#### 三、通用传输操作(两种环境通用)
```bash
# 进入共享目录
cd /mnt/hgfs # VMware
cd /media/sf_vb_share # VirtualBox
# 加载Docker镜像
docker load -i harbor.rs.nlecloud.com_xuper_elasticsearch_5.6.13.tar
# 验证结果
docker images | grep elasticsearch
```
---
### ⚠️ 注意事项
1. **权限问题**:
- VirtualBox:需将用户加入 `vboxsf` 组
```bash
sudo usermod -aG vboxsf $USER
```
- VMware:使用 `-o allow_other` 挂载参数
2. **大文件支持**:
- 共享目录需使用 NTFS/exFAT 格式(FAT32 不支持 >4GB 文件)
- 建议共享分区预留 1.5 倍镜像大小的空间
3. **网络备份方案**:
```bash
# 若共享文件夹失效,可用SCP应急传输
scp harbor.*.tar user@虚拟机IP:/tmp/
```
> 💡 **性能提示**:对于超大型文件(>10GB),建议使用 VMware 的 `hgfs` 驱动(性能优于 VirtualBox 的 `vboxsf`)[^4]
---
### 相关问题
1. 为什么共享文件夹在虚拟机中显示为空?
2. 如何解决 VirtualBox 共享文件夹的符号链接(symlink)失效问题?[^3]
3. VMware Tools 安装失败如何手动修复?
4. 如何配置虚拟机与宿主机双向剪贴板共享?[^2]
5. Docker 加载镜像时出现 "no space left on device" 错误如何处理?
[^1]: VMware 共享文件夹与 Samba 方案对比
[^2]: VirtualBox 双向剪贴板配置方法
[^3]: VirtualBox 符号链接支持配置
[^4]: VMware 大文件传输性能优化
阅读全文
相关推荐

















