今天将vsftpd成功移植到我的arm平台,现将移植过程简单总结如下:
1. 下载vsftpd源码,这个不用多说,不知道在哪里下载可以问google。
2. 解压缩,然后编译,用交叉编译:make CC=arm-linux-gcc,此时编译会出现错误,大概是说找不到/lib/libcap.so这个库文件,我只是简单的修改了一下vsf_findlibs.sh文件中的该库的位置,如下:
locate_library /usr/local/arm/3.4.1/arm-linux/lib/libcap.so.1 && echo "/lib/libcap.so.1";
/usr/local/arm/3.4.1/arm-linux/lib/libcap.so.1是我的交叉编译的库文件路径(我不清楚这样改会不会有其他不稳定的隐患,但改后可以编译,也可以运行)。
3.将编译生成的vsftpd文件拷贝到arm平台的文件系统中,如/usr/local/sbin/下。并拷贝vsftpd.conf文件到文件系统的/etc中,在我的平台上,将改文件的内容修改为:
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
idle_session_timeout=60
data_connection_timeout=20
listen=YES
listen_port=21
ftp_username=download
secure_chroot_dir=/data
4. 修改完配置文件后,就可以运行了:
/usr/local/sbin/vsftpd &
用ps查看一下是否有该进程,如果进程存在,就表示ftp服务启动成功。