游乐游手机版
首页/AI热点日报/热点详情

工业树莓派FTP服务器传输文件的两种方法

类型:热点整理2026-07-13
在工业树莓派上可通过两种方式实现FTP文件传输:安装vsftpd搭建标准FTP服务器,或利用已有SSH服务直接使用SFTP。前者兼容性强但需额外配置,后者无需安装软件且安全性更高。建议将文件上传至 home pi目录以避免权限问题。

虹科工业树莓派

卓越性能

丰富接口

宽温设计,适应严苛环境

★★★★★

在工业树莓派应用中,由于网络限制可能无法直接从外网拉取资源,此时通过FTP(文件传输协议)将PC端的资源传输至树莓派,是一个非常实用的解决方案。本教程将详细介绍两种在树莓派上实现FTP传输的方法,并附带常见问题与提示,帮助您快速掌握。

一、FTP是什么?为什么用FTP?

FTP(File Transfer Protocol,文件传输协议)是互联网上用于在两台计算机之间传输文件的协议。简单来说,支持FTP协议的服务器就是FTP服务器。它广泛应用于资源共享,具有以下特点:

  • 使用两个平行连接:控制连接(传输用户身份、口令、目录切换等命令)和数据连接(专门传输文件)。
  • 维持用户状态:在一个会话期间,服务器需要记录用户的当前目录等状态,因此会限制并发用户数量。
  • 支持双向传输:用户既可以从远程计算机下载文件,也可以将本地文件上传至远程计算机。

小贴士:FTP具有跨平台特性,在Windows、Linux、UNIX系统中均可实现互传文件,非常适合工业边缘计算场景。

二、两种实现方法

以下介绍安装FTP服务器(vsftpd)使用SFTP(基于SSH)两种方式,您可以根据实际需求灵活选择。

方法一:安装FTP服务器(vsftpd)

适用场景:需要标准FTP协议支持,兼容多种FTP客户端软件。

步骤:

  1. 首先尝试直接安装:
    sudo apt-get install vsftpd
    若安装成功,切换到root权限后跳到第7步;否则继续执行以下操作。
  2. 若提示“找不到包”,说明需要更换软件源。如下图:
  3. 切换到root权限:
    sudo su
    (后续操作默认具有root权限)
  4. 编辑源文件:
    nano /etc/apt/sources.list
    删除原内容,替换为以下内容:
    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保存退出:按Ctrl+X → 按Y确认 → 按回车键。
  5. 编辑第二个源文件:
    nano /etc/apt/sources.list.d/raspi.list
    删除原内容,替换为:
    deb http://mirrors.tuna.tsinghua.edu.cn/raspberrypi/ stretch main ui
  6. 执行更新:
    apt-get update
    更新速度取决于网络环境。如果顺利,跳到第8步。
  7. 若update超时或耗时过长:按Ctrl+C终止,然后进入目录:
    cd /etc/apt/sources.list.d/

    编辑revpi.listteamviewer-revpi.list两个文件,在每行前添加#注释掉,再重新执行apt-get update
  8. 安装vsftpd:
    apt-get install vsftpd
    耐心等待安装完成。
  9. 编辑配置:
    nano /etc/vsftpd.conf
    找到如下行,去掉前面的#
    #write_enable=YES
    改为:
    write_enable=YES
    保存并退出。
  10. 启动FTP服务:
    service vsftpd start
  11. 使用FTP客户端(以FileZilla为例)连接:
    • 下载FileZilla客户端版:https://filezilla-project.org/download.php?type=client#close
    • 输入树莓派的IP地址、用户名(pi)、密码,点击“快速连接”。
    • 连接时可能出现安全提示,点击确认即可。注意:上传的文件权限需要根据实际需求调整。
    • 建议:文件尽量上传到/home/pi目录,其他系统目录存在权限限制,可能导致上传失败。
  12. 关闭FTP服务:
    service vsftpd stop

方法二:使用SFTP(需要FTP软件支持SFTP)

适用场景:树莓派上无需额外安装软件,只需利用已有的SSH服务即可。

步骤(以FileZilla为例):

  1. 打开FileZilla,点击菜单栏“文件” → “站点管理器” → “新站点”,自定义一个名称(例如“MyRevPi”)。
  2. 在“常规”选项卡中:
    • 协议:选择“SFTP - SSH File Transfer Protocol”
    • 登录类型:选择“正常”
    • 主机:输入树莓派的IP地址
    • 用户:输入pi
    • 密码:输入对应的密码
    点击“连接”。
  3. 连接成功后,即可像操作本地文件夹一样上传/下载文件。

小贴士: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 updateapt-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升级改造项目。

来源:https://m.elecfans.com/article/2118188.html

相关热点

继续查看同栏目近期热点。

延伸阅读

补充最近整理过的热点入口。