虚拟机Ubuntu访问Windows的FTP或共享文件夹的解决方案

 更新时间:2026年01月07日 09:18:22   作者:bosins  
在虚拟机(Ubuntu)中访问 Windows 主机的 FTP 或共享文件夹,需要根据具体需求选择方案,以下是最实用、最安全的解决方案,需要的朋友可以参考下

在虚拟机(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:使用图形界面(最简单)

  1. 打开 文件管理器 → 左侧边栏点击 “网络”
  2. 输入地址:smb://192.168.1.100(替换为你的 Windows IP)。
  3. 点击 “连接” → 无需密码(因已关闭密码保护)→ 直接访问共享文件夹。

方法 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-utilssudo 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
永久挂载到 UbuntuSMB 挂载sudo mount -t cifs //192.168.1.100/share /mnt/share
避免密码关闭 Windows 密码保护共享在 Windows 高级共享设置中关闭

成功标志
在 Ubuntu 中能看到 Windows 共享文件夹内容,且能创建/删除文件。

到此这篇关于虚拟机Ubuntu访问Windows的FTP或共享文件夹的解决方案的文章就介绍到这了,更多相关Ubuntu访问Windows FTP或共享文件夹内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • GTK treeview原理及使用方法解析

    GTK treeview原理及使用方法解析

    这篇文章主要介绍了GTK treeview原理及使用方法解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • Linux系统修改环境变量的常用方法

    Linux系统修改环境变量的常用方法

    这篇文章主要给大家介绍了Linux系统修改环境变量的常用方法,文中通过代码示例给大家介绍的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下
    2024-02-02
  • Linux 基于CentOS的LNMP 服务器部署标准 新手简明版

    Linux 基于CentOS的LNMP 服务器部署标准 新手简明版

    Linux 基于CentOS的LNMP 服务器部署标准 新手简明版,需要配置centos服务器的朋友可以参考下。
    2011-01-01
  • 技术小白也能搞定的Linux安装Jenkins+cpolar教程!

    技术小白也能搞定的Linux安装Jenkins+cpolar教程!

    亲爱的技术小白,你是否曾想过在自己的Linux系统上安装Jenkins和cpolar?如果你的答案是肯定的,那么恭喜你,你找对了地方,这个教程将教你如何轻松搞定这两个强大的工具的安装,让你在技术世界里游刃有余,别再犹豫了,让我们一起踏上这趟精彩的旅程吧!
    2024-02-02
  • Apache No space left on device: mod_rewrite: could not create rewrite_log_lock Configuration Failed

    Apache No space left on device: mod_rewrite: could not creat

    这篇文章主要介绍了Apache No space left on device: mod_rewrite: could not create rewrite_log_lock Configuration Failed问题的解决方法,需要的朋友可以参考下
    2014-09-09
  • SpringBoot + Vue 项目部署上线到Linux 服务器的教程详解

    SpringBoot + Vue 项目部署上线到Linux 服务器的教程详解

    这篇文章主要介绍了SpringBoot + Vue 项目部署上线到Linux 服务器,本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-08-08
  • Linux中环境变量配置的步骤详解

    Linux中环境变量配置的步骤详解

    Linux中环境变量包括系统级和用户级,系统级的环境变量是每个登录到系统的用户都要读取的系统变量,而用户级的环境变量则是该用户使用系统时加载的环境变量。所以下面这篇文章主要给大家介绍了关于Linux中环境变量配置的相关资料,需要的朋友可以参考下。
    2017-07-07
  • Apache James配置连接达梦数据库的步骤

    Apache James配置连接达梦数据库的步骤

    本文介绍了如何配置Apache James邮件服务器以连接达梦数据库,包括导入JDBC驱动、修改配置文件和SQL语句,并提供了解决启动报错的方法
    2024-09-09
  • linux系统对外开放3306、8080等端口,防火墙设置详解

    linux系统对外开放3306、8080等端口,防火墙设置详解

    这篇文章主要介绍了linux系统对外开放3306、8080等端口,防火墙设置,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-05-05
  • Ubuntu 18.04上安装Apache、MySQL、PHP、LAMP的完整教程

    Ubuntu 18.04上安装Apache、MySQL、PHP、LAMP的完整教程

    这篇文章主要介绍了Ubuntu 18.04上安装Apache, MySQL, PHP, LAMP的完整教程,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-12-12

最新评论