ftp(vsftp) 在Cortex-A9 ARM CPU s5p4418上的移植

1   VSFTPD概述
    vsftpd即very secure FTP daemon(非常安全的FTP进程),是一个基于GPL发布的类UNIX类操作系统上运行的服务器的名字(是一种守护进程),可以运行在诸如Linux、BSD、Solaris、HP-UX以及Irix等系统上面。vsftpd支持很多其他传统的FTP服务器不支持的良好特性。使用 vsftpd 可以在 Linux/Unix 系统上搭建一个安全、高性能、稳定性好的轻量级FTP服务器。
   我们在嵌入式ARM开发板平台上运行vsftpd 服务器,通过ftp可以很方便的在开发主机和目标平台之间进行文件传输。

2   VSFTP移植
2.1 下载软件源码包
下载最新版本源码包vsftpd-3.0.2.tar.gz,下载链接:
http://pan.baidu.com/s/1bpzUIuV 密码:gd2b

2.2  解压配置
#tar  zxvf  vsftpd-3.0.2.tar.gz
#cd  vsftpd-3.0.2
        打开Makefile文件后,修改 CC 变量的值,修改后如下:
CC = arm-linux-gcc

2.3  编译
#make
编译成功后,会在源码目录下生成vsftpd 和 vsftpd.conf,这两个文件是我们要用的。

3  部署VSFTPD到ARM开发平台
3.1 修改vsftpd.conf 配置文件
打开vsftpd.conf 配置文件,打开如下配置选项(将下面配置选项前面的#去掉),修改后的vsftpd.conf 配置文件如下所示:
anonymous_enable=NO
local_enable=YES
write_enable=YES
dirmessage_enable=YES
connect_from_port_20=YES
listen=YES

3.2  下载vsftpd和vsftpd.conf 到ARM目标平台
通过网络或SD卡将vsftpd 复制到 目标平台的 /usr/bin目录下, 复制vsftpd.conf  到 /etc/ 目录下。

3.3  在目标板添加相关相关目录和用户
#adduser nobody                  // vsftpd默认配置需要
#mkdir /usr/share/empty          // vsftpd默认配置需要
#adduser ftpadmin                 // 创建本地用于FTP登录的用户
Changing password for ftpadmin
New password: 
Retype password: 
Password for ftpadmin changed by root
输入ftpadmin的登录密码为 123456

3.4  打开vsftpd
配置完之后,在目标板上打开vsftp,命令:
#vsftpd &
4   测试vsftp
在WINDOW上安装FTP客户端FileZilla,FileZilla下载链接:
链接:http://pan.baidu.com/s/1boKDmYb 密码:eoui

运行FTP客户端FileZilla,在主机栏输入目标平台ARM开发板的IP地址,用户名输入刚刚创建的用户名 ftpadmin,密码输入: 123456,点击快速链接,即可成功连接到ARM开发板平台的FTP服务器,默认连接目录是 /home/ftpadmin ,连接成功后,就可以通过FTP在开发主机和目标平台之间上传和下载文件了。如下图所示:



物联网嵌入式研发精英特训营是由湖南量子嵌入式学院研发的物联网嵌入式系统学习课程,课程以培养满足企业需求的嵌入式研发工程师为目标,采取线上,线下相结合;视频和直播相结合的学习模式。嵌入式的核心基础课程采用视频和直播相结合的学习模式,有专职老师定制课程学习计划,批改作业,学生视频学习;每周固定时间由专职老师提供学习指导,重点,难点讲解,解答学生学习过程当中的疑问;每年的暑假和寒假举办面授嵌入式项目实训营,参加VIP课程学习的学员可免费参加,由专职老师带领同学们完成一个或多个企业实训项目,包括四轴飞行器, WIFI智能机器人,智能仓库监控系统等。想进一步了解嵌入式研发精英特训营的同学可以加QQ咨询老师, 咨询QQ: 223 778 0074 曹老师