虹科工业树莓派
卓越性能
丰富接口
宽温设计,适应严苛环境
★★★★★
在工业树莓派应用中,由于网络限制可能无法直接从外网拉取资源,此时通过FTP(文件传输协议)将PC端的资源传输至树莓派,是一个非常实用的解决方案。本教程将详细介绍两种在树莓派上实现FTP传输的方法,并附带常见问题与提示,帮助您快速掌握。
一、FTP是什么?为什么用FTP?
FTP(File Transfer Protocol,文件传输协议)是互联网上用于在两台计算机之间传输文件的协议。简单来说,支持FTP协议的服务器就是FTP服务器。它广泛应用于资源共享,具有以下特点:
- 使用两个平行连接:控制连接(传输用户身份、口令、目录切换等命令)和数据连接(专门传输文件)。
- 维持用户状态:在一个会话期间,服务器需要记录用户的当前目录等状态,因此会限制并发用户数量。
- 支持双向传输:用户既可以从远程计算机下载文件,也可以将本地文件上传至远程计算机。
小贴士:FTP具有跨平台特性,在Windows、Linux、UNIX系统中均可实现互传文件,非常适合工业边缘计算场景。
二、两种实现方法
以下介绍安装FTP服务器(vsftpd)和使用SFTP(基于SSH)两种方式,您可以根据实际需求灵活选择。
方法一:安装FTP服务器(vsftpd)
适用场景:需要标准FTP协议支持,兼容多种FTP客户端软件。
步骤:
- 首先尝试直接安装:
若安装成功,切换到root权限后跳到第7步;否则继续执行以下操作。sudo apt-get install vsftpd - 若提示“找不到包”,说明需要更换软件源。如下图:

- 切换到root权限:
(后续操作默认具有root权限)sudo su - 编辑源文件:
删除原内容,替换为以下内容:nano /etc/apt/sources.list
nano保存退出:按Ctrl+X → 按Y确认 → 按回车键。deb http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main non-free contrib rpi deb-src http://mirrors.tuna.tsinghua.edu.cn/raspbian/raspbian/ stretch main non-free contrib rpi
- 编辑第二个源文件:
删除原内容,替换为:nano /etc/apt/sources.list.d/raspi.listdeb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui
- 执行更新:
更新速度取决于网络环境。如果顺利,跳到第8步。apt-get update
- 若update超时或耗时过长:按Ctrl+C终止,然后进入目录:
cd /etc/apt/sources.list.d/
编辑revpi.list和teamviewer-revpi.list两个文件,在每行前添加#注释掉,再重新执行apt-get update。 - 安装vsftpd:
耐心等待安装完成。apt-get install vsftpd - 编辑配置:
找到如下行,去掉前面的nano /etc/vsftpd.conf#:
改为:#write_enable=YES
保存并退出。write_enable=YES - 启动FTP服务:
service vsftpd start - 使用FTP客户端(以FileZilla为例)连接:
- 下载FileZilla客户端版:https://filezilla-project.org/download.php?type=client#close
- 输入树莓派的IP地址、用户名(pi)、密码,点击“快速连接”。

- 连接时可能出现安全提示,点击确认即可。注意:上传的文件权限需要根据实际需求调整。

- 建议:文件尽量上传到
/home/pi目录,其他系统目录存在权限限制,可能导致上传失败。
- 关闭FTP服务:
service vsftpd stop
方法二:使用SFTP(需要FTP软件支持SFTP)
适用场景:树莓派上无需额外安装软件,只需利用已有的SSH服务即可。
步骤(以FileZilla为例):
- 打开FileZilla,点击菜单栏“文件” → “站点管理器” → “新站点”,自定义一个名称(例如“MyRevPi”)。

- 在“常规”选项卡中:
- 协议:选择“SFTP - SSH File Transfer Protocol”
- 登录类型:选择“正常”
- 主机:输入树莓派的IP地址
- 用户:输入
pi - 密码:输入对应的密码

- 连接成功后,即可像操作本地文件夹一样上传/下载文件。

小贴士:SFTP基于SSH,默认端口为22,无需额外开启FTP端口,安全性更高。
三、两种方法对比总结
| 方法 | 优点 | 缺点 |
| 安装FTP服务器 | 兼容性强,支持多种FTP客户端,不限定特定软件 | 需要联网安装FTP服务器,并手动编辑配置文件 |
| 使用SFTP | 树莓派上无需安装额外软件,开箱即用 | 需要FTP客户端支持SFTP协议,例如FileZilla |
四、常见问题 & 解答
- Q:安装vsftpd时提示“E: Unable to locate package vsftpd”怎么办?
A:通常是由于软件源配置问题导致的。请按照方法一中的第3~7步更换清华镜像源,并注释掉其他可能冲突的源文件(revpi.list、teamviewer-revpi.list),然后重新执行apt-get update和apt-get install vsftpd。 - Q:连接FTP时一直超时或失败?
A:请检查树莓派IP地址是否正确,以及vsftpd服务是否已启动(执行service vsftpd status查看)。同时,确保树莓派和PC处于同一局域网,且防火墙没有屏蔽FTP端口(默认21)。 - Q:上传文件到某些目录失败,提示“550 Permission denied”?
A:FTP默认以pi用户身份登录,只能向用户主目录(/home/pi)写入。其他系统目录(如/root、/etc)需要root权限。建议先将文件上传到/home/pi,再通过SSH命令移动到目标位置。 - Q:使用SFTP连接时,提示“无法连接到服务器”?
A:请确认树莓派已开启SSH服务(通常默认开启,可用systemctl status ssh检查)。如果修改过SSH端口,需要在FileZilla站点管理器的高级设置中指定对应端口。 - Q:FTP传输速度很慢怎么办?
A:首先检查网络质量(有线连接通常比Wi-Fi更稳定)。对于大文件传输,可考虑先压缩再传输。另外,SFTP由于加密开销,速度可能略低于普通FTP,但安全性更高。
通过以上两种方法,您可以灵活地在工业树莓派和PC之间进行文件传输,有效解决资源拉取受限的问题。根据实际网络环境和需求选择最适合的方案即可。
虹科--工业物联网
虹科是一家在工业物联网IIoT行业拥有超过3年经验的高科技公司,与世界顶级公司包括EXOR、Eurotech、Unitronics、Matrikon、KUNBUS、VDOO、Esper等携手合作,提供先进的高端工业4.0 工业触摸屏、高端边缘计算机、IoT开发框架、PLC与HMI一体机、OPC UA、工业级树莓派、SCADA、预测性维护等解决方案。物联网事业部所有成员均受过专业培训,并获得专业资格认证,平均3年以上的技术经验和专业水平赢得了客户的高度赞誉。我们积极参与行业协会的工作,为推广先进技术普及做出了重要贡献。至今,虹科已为行业内诸多用户提供从硬件到软件的全面方案,并参与和协助了众多OEM的设备研发与移植项目,以及终端用户的智能工厂和工业4.0升级改造项目。
