完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
环境:vsftpd-3.0.2, 硬件:OK335XS,虚拟机:ubuntu12.04(32位开发板自带) (1) 修改vsf_findlibs.sh 屏蔽53、54、57行 50 # Look for libcap (capabilities) 51 if locate_library /lib/libcap.so.1; then 52 echo "/lib/libcap.so.1"; 53 #elif locate_library /lib/libcap.so.2; then 54 # echo "/lib/libcap.so.2"; 55 else 56 locate_library /usr/lib/libcap.so && echo "-lcap"; 57 # locate_library /lib/libcap.so && echo "-lcap"; 58 locate_library /lib64/libcap.so && echo "-lcap"; 59 fi (2) 修改Makefile # Makefile for systems with GNU tools #CC = gcc CC = /usr/local/arm/cross/am335xt3/devkit/bin/arm-arago-linux-gnueabi-gcc INSTALL = install IFLAGS = -idirafter dummyinc #CFLAGS = -g CFLAGS = -O2 -fPIE -fstack-protector --param=ssp-buffer-size=4 -Wall -W -Wshadow -Werror -Wformat-security -D_FORTIFY_SOURCE=2 #-pedantic -Wconversion LIBS = `./vsf_findlibs.sh`-lcap -lpam LINK = -Wl,-s LDFLAGS = -fPIE -pie -Wl,-z,relro -Wl,-z,now 保存后退出执行make (3)执行 arm-arago-linux-gnueabi-readelf -d vsftpd 显示需要哪些库 0x00000001 (NEEDED) Shared library: [libcap.so.2] 0x00000001 (NEEDED) Shared library: [libpam.so.0] 0x00000001 (NEEDED) Shared library: [libc.so.6] 0x00000001 (NEEDED) Shared library: [ld-linux.so.3] 拷贝共享库至/rootfs/lib,把生成的vsftpd 拷贝到跟文件系统的***in目录下,把vsftpd.conf文件拷贝到 根文件系统的/rootfs/etc目录下。 (4)修改配置文件vsftpd.conf 修改内容为: anonymous_enable=YES write_enable=YES anon_upload_enable=YES anon_mkdir_write_enable=YES dirmessage_enable=YES connect_from_port_20=YES chown_uploads=YES chown_username=ftp xferlog_std_format=YES #nopriv_user=ftp async_abor_enable=YES ascii_upload_enable=YES ascii_download_enable=YES ls_recurse_enable=YES listen=YES listen_port=21 anon_other_write_enable=YES (5)开发板根文件系统创建必要的目录: mkdir-p /var/ftp/pub mkdir -p /usr/share/empty chown root:root/var/ftp chmod 755 /home/rootfs/var/ftp cd /var/ftp chmod 777 pub (6)创建用户 /etc/group文件至少要有root: root:*:0: /etc/passwd文件增加ftp和nobody用户: root::0:0:root:/:/bin/sh ftp::14:50:FTPUser:/var/ftp: nobody:*:99:99:Nobody:/: (7)缺少libattr.so.1共享库,需拷贝至/lib; (8)开发板执行vsftpd /etc/vsftpd.conf & 遇到问题: (1)虚拟机ubuntu执行ftp 192.168.0.232显示信息: root@ubuntu:~# ftp 192.168.0.232 Connected to 192.168.0.232. 220 (vsFTPd 3.0.2) Name (192.168.0.232:root): ftp 331 Please specify the password. Password: 230 Login successful. Remote system type is UNIX. Using binary mode to transfer files. ftp> ftp> ftp> ftp> ftp> ls 200 PORT command successful. Consider using PASV. 500 OOPS: socket 在我输入ls命令时出现“200 PORT command successful. Consider using PASV.500 OOPS: socket”。无法连接arm了。在xshell尝试也是出现“500 OOPS: socket”,断开了。 这个问题我网上查了很多资料尝试了,但是一直没解决。希望技术支持和各位大牛帮忙指导。先谢谢了。期待你们的回复。谢谢! |
|
相关推荐
4个回答
|
|
|
|
|
|
看看是否开启了selinux,如果开了,关了试试
|
|
|
|
改linux内核
|
|
|
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
基于米尔瑞芯微RK3576核心板/开发板的人脸疲劳检测应用方案
569 浏览 0 评论
839 浏览 1 评论
737 浏览 1 评论
1957 浏览 1 评论
3204 浏览 1 评论
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2024-12-23 07:53 , Processed in 0.592410 second(s), Total 46, Slave 40 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191 工商网监 湘ICP备2023018690号