在虚拟机(ubuntu)中访问 windows 主机的 ftp 或共享文件夹,需要根据具体需求选择方案。以下是最实用、最安全的解决方案(无需额外配置 ftp 服务,直接使用 windows 原生共享):
推荐方案:通过 smb/cifs 访问 windows 共享文件夹(最简单、最常用)
为什么不用 ftp?
windows 本身不提供 ftp 服务(需额外安装 iis),而 smb 是 windows 原生支持的共享协议,速度更快、更安全。
步骤 1:在 windows 上设置共享文件夹(关键!)
创建共享文件夹
- 右键文件夹 → 属性 → 共享 → 高级共享 → 勾选 “共享此文件夹” → 设置共享名(如
ubuntu_share)。 - 点击 “权限” → 添加
everyone→ 勾选 “读取/写入” → 确定。
关闭密码保护共享(重要!避免登录问题)
- windows 搜索 “高级共享设置” → 网络发现 → 关闭密码保护共享。
获取 windows ip 地址
- 在 windows 命令提示符执行
ipconfig→ 记下 ipv4 地址(如192.168.1.100)。
步骤 2:在 ubuntu 虚拟机中访问共享(5 分钟搞定)
方法 1:使用图形界面(最简单)
- 打开 文件管理器 → 左侧边栏点击 “网络”。
- 输入地址:
smb://192.168.1.100(替换为你的 windows ip)。 - 点击 “连接” → 无需密码(因已关闭密码保护)→ 直接访问共享文件夹。
方法 2:终端命令(快速操作)
# 1. 安装 smb 客户端 sudo apt update && sudo apt install -y smbclient # 2. 查看 windows 共享列表(可选) smbclient -l //192.168.1.100 -u % # 3. 进入共享文件夹(无需密码) smbclient //192.168.1.100/ubuntu_share
输入 ls 查看文件,quit 退出。
步骤 3:挂载到本地目录(永久可用)
# 创建挂载点 sudo mkdir -p /mnt/windows_share # 挂载共享(替换为你的 windows ip 和共享名) sudo mount -t cifs -o username=,password= //192.168.1.100/ubuntu_share /mnt/windows_share # 验证 ls /mnt/windows_share
无需密码:因为已关闭密码保护共享,所以 username= 和 password= 为空。
常见问题解决
| 问题 | 解决方案 |
|---|---|
| 连接被拒绝 | 1. 检查 windows 防火墙:允许 **“文件和打印机共享”**2. 确认 windows ip 正确(ipconfig) |
| 权限错误 | 1. 在 windows 共享权限中添加 everyone2. 关闭密码保护共享(关键!) |
| 无法挂载 | 1. 安装 cifs-utils:sudo apt install -y cifs-utils2. 检查共享名是否正确(大小写敏感) |
| 速度慢 | 1. 确保虚拟机网络模式是 桥接模式(非 nat)2. 在 windows 里关闭 “公用网络”(在“网络和共享中心”) |
为什么推荐 smb 而不是 ftp?
| 方案 | 优点 | 缺点 |
|---|---|---|
| smb/cifs | ✅ windows 原生支持✅ 无需额外配置✅ 速度更快✅ 无需密码 | ❌ 需关闭密码保护(但安全风险极低) |
| ftp | ❌ 需安装 iis❌ 明文传输(不安全)❌ 配置复杂 | ✅ 无 |
安全提示:关闭密码保护共享仅影响局域网内访问,不会暴露到公网(内网安全)。
验证步骤(确保一切正常)
在 windows 上:创建一个测试文件 test.txt 到共享文件夹。
在 ubuntu 中:
ls /mnt/windows_share # 应看到 test.txt echo "hello from ubuntu" > /mnt/windows_share/ubuntu_test.txt
在 windows 上:检查共享文件夹,确认 ubuntu_test.txt 已生成。
附加:如果必须用 ftp(不推荐)
仅当 windows 上已安装 iis ftp 服务 时使用(需额外配置)。
在 windows 上:
- 安装 iis → 勾选 ftp 服务 → 创建 ftp 站点。
- 设置用户名/密码(如
ftpuser/password)。
在 ubuntu 中:
sudo apt install -y ftp ftp 192.168.1.100 # 连接 ftp 服务器 # 输入用户名/密码
强烈建议不要用 ftp:明文传输密码,且 windows 默认不提供 ftp 服务。
最终总结
| 需求 | 推荐方案 | 命令/操作 |
|---|---|---|
| 快速访问 windows 文件 | smb 共享 | smbclient //192.168.1.100/share |
| 永久挂载到 ubuntu | smb 挂载 | sudo mount -t cifs //192.168.1.100/share /mnt/share |
| 避免密码 | 关闭 windows 密码保护共享 | 在 windows 高级共享设置中关闭 |
成功标志:
在 ubuntu 中能看到 windows 共享文件夹内容,且能创建/删除文件。
到此这篇关于虚拟机ubuntu访问windows的ftp或共享文件夹的解决方案的文章就介绍到这了,更多相关ubuntu访问windows ftp或共享文件夹内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!
发表评论