vsftp
编译
tar -vxzf vsftpd-3.0.3.tar.gz
cd cd vsftpd-3.0.3
vim build_vsftp.sh
build_vsftp.sh
#! /bin/sh
make CC=arm-linux-gnueabihf-gcc
移植
拷贝 vsftpd–>/rootfs/usr/sbin/
拷贝 vsftpd.conf–>/rootfs/etc/
chmod +x vsftpd
sudo cp vsftpd /home/li/linux/share/rootfs/usr/sbin/
sudo cp vsftpd.conf /home/li/linux/share/rootfs/etc/
配置 vsftpd.conf
开发板操作
cd /etc
vi vsftpd.conf
local_enable=YES //取消前面的“#”
write_enable=YES //取消前面的“#”
创建文件
mkdir /home
mkdir /usr/share/empty -p
mkdir /var/log -p
touch /var/log/vsftpd.log
vsftpd 创建用户
vsftpd 默认需要两个用户,这两个用户名分别为:“ftp”和“nobody”。
adduser ftp
adduser nobody
启动ftp
vsftpd &
//开机自启动
vi /etc/init.d/rcS
vsftpd &
报错1 frp软件连接报错
capability: warning: `vsftpd’ uses 32-bit capabilities (legacy support in use)
解决方法
可以使用不收影响,移植 libcap库
报错2 frp软件连接报错
响应: 500 OOPS: vsftpd: refusing to run with writable root inside chroot()
原因:
从2.3.5之后,vsftpd增强了安全检查,如果用户被限定在了其主目录下,则该用户的主目录不能再具有写权限了!如果检查发现还有写权限,就会报该错误。
解决方法:
用命令chmod a-w /home/ftp去除用户主目录的写权限,注意把目录替换成你自己的。或者
vi vsftpd.conf
allow_writeable_chroot=YES //添加