首页 > 代码库 > LXT5架构-嵌入式Ftp服务器Vsftpd交叉编译与配置使用(ARMv7)
LXT5架构-嵌入式Ftp服务器Vsftpd交叉编译与配置使用(ARMv7)
Vsftpd是一款在Linux发行版中最受欢迎的Ftp服务器程序,特点是小巧轻快,安全易用,Vsftpd也是LXT5架构中Ftp服务器首选软件包。
1. 交叉编译libcap(如果需要!?)
a. 下载:https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-2.24.tar.gz
tar -zxvf libcap-2.24.tar.gz
cd libcap-2.24
b. 生成libcap/_makenames(x86)
make clean
make
mv ./libcap/_makenames ./libcap/_makenames_x86
c. 修改Make.Rules
...
else
prefix= (指向ARM编译器usr路径)
exec_prefix=$(prefix)
lib_prefix=$(exec_prefix)
inc_prefix=$(prefix)
man_prefix=$(prefix)/share
endif
...
...
CC := arm-arago-linux-gnueabi-gcc
CFLAGS := -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
...
d. 修改libcap/Makefile
...
ifeq ($(LIBATTR),yes)
FILES += cap_file
#LDFLAGS += -lattr
#DEPS = -lattr
endif
...
...
cap_names.h: _makenames
./_makenames_x86 > cap_names.h
...
e. 修改libcap/cap_file.c
...
#define XATTR_SECURITY_PREFIX "security."
#define XATTR_NAME_CAPS XATTR_SECURITY_PREFIX "capability"
...
f. 交叉编译
make clean
make
make install
2. 交叉编译Vsftpd
a. 解压
tar -zxvf vsftpd-3.0.2.tar.gz
cd vsftpd-3.0.2
b. 修改Makefile
...
CC = arm-arago-linux-gnueabi-gcc
INSTALL = install
...
...
#LIBS = `./vsf_findlibs.sh`
LIBS = -lcap -lpam
LINK = -Wl,-s
...
...
install:
$(INSTALL) -d -m 755 /home/vsftpd/sbin/;
$(INSTALL) -m 755 vsftpd /home/vsftpd/sbin/vsftpd;
clean:
...
c. 交叉编译
make clean
make
make install
d. 配置文件(vsftpd.conf)
anonymous_enable=NO
local_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to blah FTP service.
ls_recurse_enable=YES
listen=YES
3. 安装使用(ARMv7硬件系统)
a. 配置文件安装
root@am335xt5:/home# cp /home/vsftpd/vsftpd.conf /etc
b. 启动vsftpd
root@am335xt5:/home# mkdir /usr/share/empty
root@am335xt5:/home# /home/vsftpd/sbin/vsftpd &
c. 添加用户
root@am335xt5:/home# adduser ftptest
--> passwd: 123456
d. 测试
windows --> cmd --> ftp board_ip (ftptest@123456)
或
浏览器: ftp://board_ip (ftptest@123456)
(作者 冯青华 信庭嵌入式工作室(www.xteda.com)- CEO )
<转载请注名来路>
1. 交叉编译libcap(如果需要!?)
a. 下载:https://www.kernel.org/pub/linux/libs/security/linux-privs/libcap2/libcap-2.24.tar.gz
tar -zxvf libcap-2.24.tar.gz
cd libcap-2.24
b. 生成libcap/_makenames(x86)
make clean
make
mv ./libcap/_makenames ./libcap/_makenames_x86
c. 修改Make.Rules
...
else
prefix= (指向ARM编译器usr路径)
exec_prefix=$(prefix)
lib_prefix=$(exec_prefix)
inc_prefix=$(prefix)
man_prefix=$(prefix)/share
endif
...
...
CC := arm-arago-linux-gnueabi-gcc
CFLAGS := -O2 -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
...
d. 修改libcap/Makefile
...
ifeq ($(LIBATTR),yes)
FILES += cap_file
#LDFLAGS += -lattr
#DEPS = -lattr
endif
...
...
cap_names.h: _makenames
./_makenames_x86 > cap_names.h
...
e. 修改libcap/cap_file.c
...
#define XATTR_SECURITY_PREFIX "security."
#define XATTR_NAME_CAPS XATTR_SECURITY_PREFIX "capability"
...
f. 交叉编译
make clean
make
make install
2. 交叉编译Vsftpd
a. 解压
tar -zxvf vsftpd-3.0.2.tar.gz
cd vsftpd-3.0.2
b. 修改Makefile
...
CC = arm-arago-linux-gnueabi-gcc
INSTALL = install
...
...
#LIBS = `./vsf_findlibs.sh`
LIBS = -lcap -lpam
LINK = -Wl,-s
...
...
install:
$(INSTALL) -d -m 755 /home/vsftpd/sbin/;
$(INSTALL) -m 755 vsftpd /home/vsftpd/sbin/vsftpd;
clean:
...
c. 交叉编译
make clean
make
make install
d. 配置文件(vsftpd.conf)
anonymous_enable=NO
local_enable=YES
write_enable=YES
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
chown_uploads=YES
xferlog_file=/var/log/vsftpd.log
xferlog_std_format=YES
async_abor_enable=YES
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to blah FTP service.
ls_recurse_enable=YES
listen=YES
3. 安装使用(ARMv7硬件系统)
a. 配置文件安装
root@am335xt5:/home# cp /home/vsftpd/vsftpd.conf /etc
b. 启动vsftpd
root@am335xt5:/home# mkdir /usr/share/empty
root@am335xt5:/home# /home/vsftpd/sbin/vsftpd &
c. 添加用户
root@am335xt5:/home# adduser ftptest
--> passwd: 123456
d. 测试
windows --> cmd --> ftp board_ip (ftptest@123456)
或
浏览器: ftp://board_ip (ftptest@123456)
(作者 冯青华 信庭嵌入式工作室(www.xteda.com)- CEO )
<转载请注名来路>
LXT5架构-嵌入式Ftp服务器Vsftpd交叉编译与配置使用(ARMv7)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。