1. 为什么你需要跨系统文件共享?
如果你和我一样,经常在Windows和Ubuntu双系统之间切换,或者有一台Windows主机和一台Ubuntu服务器,那你肯定遇到过这个头疼的问题:文件怎么在两个系统之间传来传去?用U盘拷来拷去太原始,效率低还容易丢文件;用网盘同步吧,速度慢不说,大文件或者代码项目还经常出问题。我之前做嵌入式开发,在Windows上写代码,然后拿到Ubuntu下去编译、调试,每天都要传几十个文件,U盘都快被我插坏了。
这种跨系统文件共享的需求,其实特别普遍。比如,你可能在Windows上用Visual Studio或者一些图形化工具处理文档、图片,但你的开发环境、服务器或者特定的编译工具链却在Ubuntu上。又或者,你搭建了一个家庭媒体中心,主力电脑是Windows,但媒体服务器跑在Ubuntu上,电影、音乐库需要无缝访问。这时候,一个高效、稳定、透明的文件互传方案,就不是“锦上添花”,而是“雪中送炭”了。
我踩过不少坑,从最笨的U盘,到各种第三方软件,最后发现,其实系统自带的“原生”方案才是最靠谱的。它们稳定、速度快,而且一旦配置好,用起来就跟访问本地硬盘一样方便。这篇文章,我就把我这十年来在AI大模型和智能硬件开发中,最常用的三种跨系统文件共享方案——FTP、NFS和SSH(主要是SFTP/SCP)——的配置心得和实战经验,掰开揉碎了讲给你听。我会告诉你每种方法适合什么场景,具体怎么一步步配置,以及我遇到过哪些“坑”和怎么解决的。目标就一个:让你看完就能上手,彻底告别文件传输的烦恼。
2. 方案一:FTP - 经典通用的文件传输协议
FTP(文件传输协议)可以说是最老牌、最通用的文件传输方式了。它的好处是客户端支持极其广泛,几乎任何操作系统、任何设备上都能找到FTP客户端软件。对于偶尔的、不定向的文件传输,或者需要给多人提供文件下载的场景,FTP是个不错的选择。
2.1 在Ubuntu上快速搭建FTP服务器
Ubuntu上搭建FTP服务器非常简单,我们通常使用 vsftpd(Very Secure FTP Daemon),它轻量、安全且是Ubuntu仓库自带的。
首先,打开你的Ubuntu终端,更新软件包列表并安装 vsftpd:
sudo apt update
sudo apt install vsftpd -y
安装完成后,vsftpd 服务会自动启动。但默认配置比较保守,我们需要进行一些调整以满足日常共享需求。使用你喜欢的文本编辑器(如 nano 或 vim)来编辑配置文件:
sudo nano /etc/vsftpd.conf
在这个文件里,找到并修改或确保以下几行配置(如果前面有#注释符,记得去掉):
# 允许本地用户登录(这是必须的)
local_enable=YES
# 允许上传文件(写权限)
write_enable=YES
# 设置本地用户的文件掩码,上传的文件权限为 644,目录为 755
local_umask=022
# 禁止匿名用户登录,更安全
anonymous_enable=NO
# 将所有用户限制在其家目录中,防止访问系统其他文件(重要安全设置)
chroot_local_user=YES
# 为了解决某些客户端在启用chroot后的问题,添加这个设置
allow_writeable_chroot=YES
# 启用被动模式(PASV),对于在路由器或防火墙后的服务器很重要
pasv_enable=YES
# 设置被动模式使用的端口范围,方便在防火墙中开放
pasv_min_port=40000
pasv_max_port=50000
编辑完成后,保存并退出(在nano中是 Ctrl+X,然后按 Y,再按回车)。接着,重启 vsftpd 服务让配置生效:
sudo systemctl restart vsftpd
为了让FTP服务能随系统启动,我们还可以启用它:
sudo systemctl enable vsftpd
现在,你的Ubuntu FTP服务器就已经跑起来了。服务器地址就是你Ubuntu系统的IP地址。你可以在终端里用 ip addr 或 ifconfig 命令查看。
2.2 在Windows上使用FileZilla连接
在Windows端,我强烈推荐使用 FileZilla Client。它免费、开源、功能强大,而且支持FTP、SFTP等多种协议。
- 下载安装:去FileZilla官网下载Windows客户端并安装。
- 连接服务器:打开FileZilla,在顶部快速连接栏输入信息:
- 主机:填入你的Ubuntu机器的IP地址,例如
192.168.1.100。 - 用户名:你的Ubuntu登录用户名。
- 密码:对应用户的密码。
- 端口:保持默认的
21。
- 主机:填入你的Ubuntu机器的IP地址,例如
- 点击“快速连接”。第一次连接可能会弹出证书警告,点击确认即可。
连接成功后,你会发现界面分成了左右两栏。左边是你的Windows本地文件系统,右边就是Ubuntu服务器上的文件系统(默认是你用户的家目录,因为设置了chroot)。
传输文件简单到不可思议:直接在左右两个窗口之间拖拽文件或文件夹,FileZilla就会自动完成上传或下载。你可以


1万+

被折叠的 条评论
为什么被折叠?



