嵌入式设备ftp服务的实现

 

 

一般实现嵌入式的ftp服务,有两种方法:

①程序内部自己搭建ftp服务器,实现文件的操作(上传、下载、删除等),有很多已成功成型的源码;

②使用现成的源码,进行linux-arm移植。第二种方法更方便,本人使用Vsftpd-3.0.2服务器arm-linux移植到嵌入式设备。

本人使用现成的源码两种方法实现了:①stupid-ftpd;②vsftpd。

       stupid-ftpd方法能更快实现成功,但设置本地用户登录ftp密码失败,并且没有实现匿名用户和本地用户的删除设备内文件和重命名文件。当删除时,会提示权限问题。

vsftpd主要是配置文件vsftpd.conf、本地用户创建、嵌入式设备内对文件授权问题。

实现stupid-ftpd的操作步骤:参考 “嵌入式Linux的FTP服务端软件(stupid-ftpd)http://www.linuxidc.com/Linux/2012-03/56781.htm

 

一.实现vsftpd搭建ftp服务器操作步骤

参考“Vsftpd-3.0.2服务器arm-linux移植—mini2440开发板http://blog.csdn.net/evenness/article/details/17068403

1.下载源码

从网上下载window版的vsftpd-3.0.2源代码,可以参考:

嵌入式设备ftp服务的实现(源码及生成文件)-CSDN下载  https://download.csdn.net/download/aaa794708075/10480419

把压缩包放在虚拟机linux环境下(/opt),然后终端输入命令解压。

“tar xzvf vsftpd-3.0.2.tar.gz”

由于下载的源码包是ZIP压缩格式,所以解压的时候使用z,至于“xzvf”xz位置可以随意颠倒。解压完毕后进行授权。

再执行“chmod 777vsftpd-3.0.2 -R”

2.修改Makefile文件,修改编译环境

修改Makefile文件,修改编译环境。按实际情况填写,请仔细查看路径,我的是Makefile内修改如下:

CC =   arm-hisiv100nptl-linux-gcc

LiIBS=`vsf_findlibs.sh `  -lcrypt   //这个修改与否都可以,后面会有相应操作,目测是将脚本里的库生成静态库。

3.修改vsf_findlibs.sh

在vsf_findlibs.sh中,屏蔽51至59行。也就是屏蔽掉和和调用libcap库相关的项,因为arm-hisiv100nptl-linux编译环境里没有这个库(......\hisi-linux-nptl\arm-hisiv100-linux\ta

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值