ftp允许本地用户登录
vsftp.conf配置文件内容
anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
anon_upload_enable=YES
anon_mkdir_write_enable=YES
dirmessage_enable=YES
data_connection_timeout=300
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=NO
listen_ipv6=YES
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES
允许root用户登录
user_lists和ftpusers中取消root的限制
脚本内容
#!/bin/bash
#自动上传目录下的文件到远端,该脚本只能创建最后一级的目录,多级目录时需要在脚本中指定和在服务端事先创建好
# 使用非root用户时主要远端的目录是否有执行和创建的权限
localDir='/ftp/' #必须加上“/”
rsDir='/ftp'
cd $localDir
ip='xx.xxx.xxx.xxx'
for dir in `find * -type d`
do
/usr/bin/ftp -n<<EOF
open $ip
user root 密码
binary
cd $rsDir #切换到服务器端路径
mkdir $dir #在服务器端创建文件的上一级目录
cd $dir #切换到创建的目录下
lcd $localDir$dir #切换本地路径
prompt
mput *
close
bye
EOF
done