一、ftp和tftp的区别
参考:
注意FTP和TFTP合同是有区别的ftp 服务器 linux,两者不一样!
二、开发板移植TFTP服务器
参考:
1.软件安装
确保busybox工具已然添加了inetd和tftpd工具
2.更改配置文件vi/etc/inetd.conf
确保开发板系统早已存在此文件,假若不存在,请自行创建该文件,文件内容见下边介绍。
右图是在Zynq上实现tftp功能的事例:
tftpd应当被用作inetd服务,在/etc/inetd.conf中配置tftfd服务,添加下边的内容:
69 dgram udp nowait root tftpd tftpd -l /home/tftp
其中/home/tftp为tftp服务器的指定目录,顾客端可自此目录下载所需的文件。需创建和更改此目录的权限。
3.创建Tftp服务器根目录/home/tftp,并更改权限
cd /home
mkdir /home/tftp
chmod 777 tftp
4.启动inetd服务
/usr/sbin/inetd
可以将此添加到板卡的/etc/profile文件后linux伊甸园,让此inetd服务开机自启动。
5.查看tftp服务是否开启
ps查看inetd是否运行。
6.使用另外一块板卡测试tftp功能
TFTP服务器:主控板卡
TFTP顾客端:数采板卡
1)主控板的IP地址,早已搭建了TFTP服务。
在/home/tftp目录下存了一个test文件
2)在数采板上使用tftp获取主控板的test文件
TFTP使用,作为顾客端从服务器获取文件:
三、开发板移植FTP服务器
vsftpd即verysecureFTPdaemon(十分安全的FTP进程),是一个基于GPL发布的类UNIX类操作系统上运行的服务器的名子(是一种守护进程),可以运行在例如Linux、BSD、Solaris、HP-UX以及Irix等系统里面。vsftpd支持好多其他传统的FTP服务器不支持的良好特点。使用vsftpd可以在Linux/Unix系统上搭建一个安全、高性能、稳定性好的轻量级FTP服务器。
3.1交叉编译步骤
下载源码
参考:
版本:vsftpd-2.3.4.tar.gz
解压缩
配置
更改Makefile:CC=arm-linux-gnueabihf-gcc
编译
make
1)make前先更改vsf_findlibs.sh文件linux手机,不然会报错,更改如下:
屏蔽掉上面的三行;
2)make时假如报错如下:
解决办法:更改Makefile
在CC前面添加“-lcrypt”
3)make成功后:
make后,当前目录下会生成两个文件:vsftpd和vsftpd.conf,这两个文件是我们要用的。
3.2开发板配置(本地用户登入)
1)将编译生成的vsftpd工具放置在目录/usr/bin下,vsftpd.conf配置文件放置在/etc目录下;
2)更改配置文件vsftpd.conf:
不容许匿名登陆,容许本地帐户登入;
3)在开发板上创建一个本地用户:
用户名:heat密码:123456
adduserheat
输入密码
这儿创建的是用户heat
4)打开vsftpd服务
/usr/bin/vsftpd &
注意ftp 服务器 linux,旁边还有一个&。假如要让vsftpd开机启动,可以将该添加到/etc/profile或则rc.local文件最后。
++++++++++++++++++++++++++++++++++++++++++
转入PC机上测试,打开DOS命令行,联接ftp
++++++++++++++++++++++++++++++++++++++++++
PC机DOS下:
1)联接出现问题
解决办法:
在/etc/vsftpd.conf文件内加入ftp_username=nobody保存,重启vsftp服务
2)继续出现问题:
解决办法:
出现里面的错误,则须要完善/usr/share/empty目录。mkdir/usr/share/empty
3)正常联接
从开发板取文件,文件置于了开发板用户/home/heat目录下,ftp服务器的默认路径是用户根目录
开发板侧:
3.3开发板配置(匿名用户登入)
参考:
==================================================
修改配置文件
vim /etc/vsftpd.conf
匿名模式
anonymous_enable=YES
local_enable=NO
write_enable=YES
anon_upload_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
listen=YES
==================================================
开发板上执行:
adduser nobody
mkdir -p /usr/share/empty/
mkdir -p /var/ftp/
adduser -h /var/ftp ftp
==========================================
==========================================
FTP默认须要一个nobody用户
FTP默认须要一个empty目录
FTP匿名模式默认须要一个FTP用户
-h限定ftp用户的工作目录为/var/ftp
注意:一旦限定了ftp用户的工作目录,该目录不能具有写权限,否则会报错,这个前面会说明。例如前面的/var/ftp,ftp目录不能具有写权限。chmoda-w/var/ftp消除用房主目录的写权限
本文原创地址://gulass.cn/srjxfytxyqbj.html编辑:刘遄,审核员:暂无