给嵌入式Linux开发板移植ftp服务器,简单好用。方便Windows去访问开发板内部数据

  1. 源码下载

stupid-ftpd是开源的,链接:Stupid-FTPd - Browse /stupid-ftpd/V1_5beta at SourceForge.net

2.修改Makfile

根据实际情况 ,修改Makefile,将gcc修改为交叉编译工具链的gcc,

比如arm-linux-gnueabihf-gcc。若要静态编译,在CFLAGS后面添加"-static"选项。建议加此选项,否则移植到arm开发板会出现缺少库的错误。

通过命令:tar -zxvf stupid-ftpd-1.5beta.tar.gz   解压缩

cd stupid-ftpd          进入目录

打开Makfile文件,只需要修改俩处,下面已经修改

Makefile for the linux version of stupid-ftpd
#
#
#CC=mips-linux-gnu-gcc -EL          #修改
OBJS=ftpcommand.o ftpdconfig.o command.o ls.o stupid-ftpd.o
DOBJS=ftpcommand.do ftpdconfig.do command.do ls.do stupid-ftpd.do
POBJS=ftpcommand.po ftpdconfig.po command.po ls.po stupid-ftpd.po
LIBS=
CFLAGS=-O2 -Wall -Wstrict-prototypes -static    #修改
DCFLAGS=-g -DDEBUG -Wall -Wstrict-prototypes
PCFLAGS=-g -DDEBUG -Wall -Wstrict-prototypes -Wcast-align -Wwrite-strings -Wconversion -Waggregate-return -Wmissing-prototypes -Wmissing-declarations -Wredundant-decls -Wnested-externs
EXEC=stupid-ftpd.Linux6.SUFFIXES: .c .o .do .poall: $(OBJS)$(CC) $(CFLAGS) -o $(EXEC) $(OBJS) $(LIBS)debug: $(DOBJS)$(CC) $(DCFLAGS) -o $(EXEC) $(DOBJS) $(LIBS)pedantic: $(POBJS)$(CC) $(PCFLAGS) -o $(EXEC) $(POBJS) $(LIBS)clean:rm -f $(OBJS) $(DOBJS) $(POBJS) $(EXEC) *~.c.o:$(CC) $(CFLAGS) -c -o $@ $<.c.do:$(CC) $(DCFLAGS) -c -o $@ $<.c.po:$(CC) $(PCFLAGS) -c -o $@ $<install:install -m 755 -s ./stupid-ftpd /usr/local/bin/stupid-ftpdinstall -m 700 -d /etc/stupid-ftpdinstall -m 755 -d /usr/local/stupid-ftpdinstall -m 600 ./stupid-ftpd.conf /etc/stupid-ftpd/stupid-ftpd.conf

3.编译

执行make,编译生成名字为stupid-ftpd.Linux6可执行文件和名字为stupid-ftpd.conf一个配置文件。

4.修改配置文件

打开stupid-ftpd.conf文件,该程序运行需要配置文件,以下的配置已经被修改并验证,是可以用的。但前提是运行在嵌入式Linux系统下,21端口没有被占用。

#
# This is a config-file for stupid-ftpd
# ------------------------------------
#
# The standard path should be /etc/stupid-ftpd.conf
# You can define other paths by using the "-f" option
# when starting stupid-ftpd.
#
#
# ATTENTION: 1) Remember, that the server is running with YOUR permissions.
#            It will fail to access other users directory, unless it is
#            root, but it also allows to access ALL YOUR directories,
#            which are deeper in a user's root-dir and YOU HAVE access to.
#            2) To solve the problem, the best way is to define a group-ID
#           for stupid-ftpd.
#       Or if you aren't root: set the MAIN root (serverroot=) to
#       the highest directory depth which is possible.
#            3) REMEMBER: DO NOT PUT THIS FILE in an accessible directory!!!
#               There are passwords defined here. The safest place is
#               outside the serverroot.# Server operation mode:
# daemon      - quiet in background #守护进程式运行
# interactive - standard mode    #交互式运行mode=daemon  #守护进程式运行在后台# chroot to#serverroot=/var/ftp
#serverroot=/home/ftpuser  #若需要增加用户,开放此处,用户名可自定义
serverroot=/  #将ftp的根目录设置为/目录下,在windows打开该ftp,就能访问/目录# type of chroot
# real    - kernel chroot(), high security, but needs root privileges
# virtual - no real chroot(), software side (virtual) chroot#changeroottype=virtualchangeroottype=real# Port number for the FTP-Protocolport=21   #默认为ftp的端口号。# Maximum users allowed to log inmaxusers=10# Message Of The Day (motd)
# It will be displayed after the login procedure.#motd=/tmp/stupid-ftpd.motd# Message on quit
# It will be displayed when quitting.#byemsg=/tmp/stupid-ftpd.bye# Log#log=/tmp/stupid-ftpd.log# User list:
# Format:  user=<login> <passwd> <subdir> <maxlogins> <flags>
#       <login>     user name
#       <passwd>    password or * for anonymous access
#       <subdir>    (internally appended to serverroot)
#               the user has access to the WHOLE SUBTREE,
#               if the server has access to it
#               <maxlogins> maximal logins with this usertype
#       <flags>     D - download
#               U - upload + making directories
#               O - overwrite existing files
#               M - allows multiple logins
#               E - allows erase operations
#               A - allows EVERYTHING(!)
#
# user ftp is mapped to user anonymous, don't forget this
#
# Examples:
# user=user1 passx /tmp  2 D
#      - login: user1, passwd: passx, max login twice (different IPs!)
#        only download rights from directory /tmp
# user=user2 passy /home/user2 0 DU
#      - login: user2, passwd: passy, no login count limit (different IPs!)
#        download+upload rights to directory /home/user2
# user=user3 passz /home/user3 5 DUOM
#      - login: user3, passwd: passz, max login count 5 (even from same IP)
#        download+upload+overwrite rights to directory /home/user3
# user=user4 passq /tmp 10 -
#      - login: user4, passwd: passq, max login count 10 (even from same IP)
#        look-only rights at directory /tmp
#
# SEE: ATTENTION remark on the top of this file !!!user=anonymous  *    /    5   A   #匿名用户登录到/目录
#user=ftpuser  123456   /    5   A  #用户名密码登录到/目录,可以更改指定目录# Banned hosts
# "*" and "?" are allowed here#ban=192.168.*
#ban=localhost
#ban=*.banme.com# Ban message (displayed to user who is banned)
# Please don't use more than 70 characters.#banmsg=Go away !# Login/password timeoutlogin-timeout=120# Timeout (while logged in)timeout=240

将可执行文件stupid-ftpd.Linux6拷贝至开发板的sbin目录下,配置文件stupid-ftpd.conf拷贝至开发板的etc目录下,至此移植完成

  1. 5.测试ftp

stupid-ftpd.Linux6 -f /etc/stupid-ftpd.conf 使用-f指定配置文件位置

然后再"我的电脑"输入:ftp://192.168.x.x/就可以进入到/目录下

这里可以仅可以文件拖拽删除

也可以使用filezilla软件连接:

打开软件后,点击右上角文件选择站点管理器,建立新的站点,选择加密类型和登录类型就可以登录

arm开发板嵌入式Linux的ftp软件相关推荐

  1. 电脑向linux板卡传文件,ARM 开发板嵌入式linux系统与主机PC通过串口传输文件

    ARM 开发板嵌入式linux系统与主机PC通过串口传输文件 本来以为按以下两篇文章就可以几步轻松搞定这个问题,没想到遇到两个小麻烦: 1,我用的xp虚拟机下redhat9.0做主机,按照下面第一篇文 ...

  2. ARM 开发板嵌入式linux系统与主机PC通过串口传输文件

    嵌入式linux系统与主机通过串口传输文件 我想如果要从PC机下载东西到开发板的嵌入式linux系统里面,很多人首先会想到用tftp sftp等网络工具从网口下载.但如果网络用不了,只能通过串口下载怎 ...

  3. arm开发板嵌入式 linux 修改开机启动logo,ARM开发板 嵌入式Linux 修改开机启动LOGO...

    1.嵌入式 Linux LOGO显示原理 嵌入式Linux是直接在FrameBuffer的基础上.直接显示一个ppm格式的图象.它 kernel/drivers/video/fbcon.c中的fbco ...

  4. Friendly ARM开发板安装Linux系统教程

    友善之臂ARM9开发板安装Linux系统教程 前言:智能蘑菇房项目的运行环境是友善之臂ARM9开发板,所以需要在上面灌一个linux系统,下面我来简单介绍一下. 准备 读卡器 SD卡 串口线一根(US ...

  5. 【分享】4412开发板-嵌入式Linux开发须要掌握的基础知识和技能

    本文转自迅为电子论坛:http://www.topeetboard.com 1.Linux 基础 安装Linux操作系统 Linux文件系统 Linux经常使用命令 Linux启动过程具体解释 熟悉L ...

  6. STM32MP157开发板嵌入式Linux指南资料

    iTOP-STM32MP157开发板资料全面升级了!现手册资料,由两部分组成: 开发板使用手册+开发指南手册 目前两份手册资料编写有1700页左右,后续资料会不断更新,不断完善,帮助用户快速入门,大大 ...

  7. 基于ARM开发板或linux工控机的远程操作的小结

    需求: (1).黑龙江现场A处有一个一直在执行任务的工控机(或ARM板),该板子处在一个局域网192.xxx.2.1网段,局域网可以联网: (2).本地为深圳的C处,网络处在2.1网段:需求就是C处远 ...

  8. apache arm 交叉编译_Apache 2移植到Arm开发板的过程整理——如何交叉编译Apache 2

    话说要在arm开发板的linux系统中运行apache服务器,需要在pc linux系统中交叉编译Apache源码,在网上参考了很多资料都是1.3版本的,最后终于找到apache 2移植到arm开发板 ...

  9. windows、虚拟机和ARM开发板3者互ping

    嵌入式开发中常用的开发方式:windows上做实际开发,虚拟机上装Linux当服务器交叉编译程序, ARM开发板运行程序.通常三者连接时,会遇到各种问题,此文档就是从分析到实例解决该问题. 更多详情, ...

最新文章

  1. mysql数据库常见进阶使用
  2. DWZ+Uploadify +JSON 多文件上传
  3. Aspose.Words如何在文档中添加水印
  4. jpa执行sql脚本_JPA persistence.xml SQL脚本定义
  5. J2EE开发之常用开源框架介绍
  6. python断点调试_「Python调试器」,快速定位各种疑难杂症!!!
  7. 使用mysqlimport导入包含主键自增长属性的表
  8. visio 2013破解
  9. 重启计算机可以使用什么组合键,win10系统重启电脑的快捷键是什么呢?
  10. 分数阶微分_分数微分特征
  11. React 备忘录 v16
  12. Signature on Pocket PC
  13. 工业农业消防自动检测及报警云方案
  14. 实现表格内容第一行居中,其他行与第一行左对齐
  15. C#--throw的几种抛异常方式及区别
  16. HaploMerger2: 从高杂合二倍体基因组组装中重建单倍型
  17. Jetson Xavier NX (11) -- NX介绍与系统烧录
  18. Java语音SDK接口开发经验及具体开发实现
  19. 【微信小程序】全局分享和页面分享
  20. DVD-光盘刻录(笔记本、台式机)

热门文章

  1. Training: PHP LFI (Exploit, PHP, Training)
  2. RSA加密(3.0)
  3. 怎么做好Java性能优化
  4. AI 建模师 素养手冊(2)
  5. SQL Server 2012 唯一约束(定义唯一约束、删除唯一约束)
  6. 英语语法工具 | 那些可以纠正英语文章中语法的神器们
  7. 昆明第十二中学计算机笔试题目,昆明市第十二中学2015年招考笔试、面试、课堂考核安排公告...
  8. 迈向图形化:dialog工具
  9. 完全解读:用最小二乘法求模型参数
  10. 2022icpc昆明