嵌入式linux下ftp服务移植

嵌入式linux下ftp服务移植

  • 前言
    • 使用ftp可以将文件快速的上传到ftp服务器或者下载文件,很方便的在PC端与ARM板之间进行文件传输
    • 一、准备软件包
    • 二、交叉编译
    • 三、修改配置
    • 四、创建用户并测试

前言

使用ftp可以将文件快速的上传到ftp服务器或者下载文件,很方便的在PC端与ARM板之间进行文件传输

一、准备软件包

     我这里使用的是 vsftpd-2.1.2.tar.gz,  解压 (tar -zxvf vsftpd-2.1.2.tar.gz)

二、交叉编译

    1.进入解压后的文件夹, 修改Makefile: (修改交叉编译工具我这里使用的是arm-linux-gnueabihf-gcc)
      将CC=gcc 修改为 CC=arm-linux-gnueabihf-gcc  -lcrypt
    2.修改vsf_findlibs.sh脚本文件:屏蔽#Look for libcap部分,版本不同,代码可能不同,2.1.2版本代码如下:
      #if locate_library /lib/libcap.so.1; then
      #  echo "/lib/libcap.so.1";
      #elif locate_library /lib/libcap.so.2; then
      #  echo "/lib/libcap.so.2";
      #else
      #  locate_library /usr/lib/libcap.so && echo "-lcap";
      #  locate_library /lib/libcap.so && echo "-lcap";
      #fi
    3.执行  make , 会生成几个可执行文件,如vsftpd。

三、修改配置

    1.将vsftpd拷贝到arm板/usr/sbin目录下
    2.拷贝vsftpd.conf到arm板/etc目录下,并修改该文件,具体配置如下
      anonymous_enable=YES   // 允许匿名用户
      local_enable=YES // 本地访问
      write_enable=YES
      local_umask=077
      anon_upload_enable=YES
      anon_mkdir_write_enable=YES
      dirmessage_enable=YES
      xferlog_enable=YES
      connect_from_port_20=YES
    	。。。
      其他默认,也可按需配置
      在文档最后加入:
      listen_port=21
      pam_service_name=vsftpd
      ftp_username=ftp
      anon_root=/home/ftp
    3.创建文件夹
       mkdir /var/ftp
       mkdir /var/ftp/pub
       chmod 777 /var/ftp/pub
       注:需与vsftpd.conf中的配置一致
       mkdir /usr/share/empty

四、创建用户并测试

    1.执行命令 adduser ftpuser 
       跟随提示设置密码
    2.执行命令 vsftp & 运行ftp
    3.PC端打开ftp客户端,输入ip, 用户名、密码、端口默认21   连接,测试

你可能感兴趣的:(嵌入式linux下ftp服务移植)