我在suse上面安装了vsftp,配置好ftp服务器,然后用java编写一个上传文件的应用,在java程序执行上传之前需要到ftp服务器上面去创建文件夹,如何配置ftp服务器能够让java程序一次创建多级目录?
我现在java里面用的方法是FTPClint.makeDirectory("abc/ds")
vsftp的配置是这样的
pasv_min_port=30000
pasv_max_port=30100
write_enable=YES
use_localtime=YES
local_enable=YES
local_umask=022
ascii_upload_enable=YES
ascii_download_enable=YES
ftpd_banner=Welcome to blah FTP service.
userlist_enable=YES
chroot_local_user=YES
ls_recurse_enable=YES
anon_umask=022
listen=YES
xferlog_std_format=YES
这个权限是这样子的,需要JAVA程序有权限去ftp根目录去创建目录。假设的你是用ftp 这个用户名去运行vsftpd的,vsftpd的根目录的ower是ftp,你也要用ftp用户名去运行JAVA程序,用root用户也可以,不考虑安全的前提下。这样就是可以在vs ftpd服务的根目录创建目录与文件了。
######回复 @王建观 :两种方法:(1),通过JAVA程序调用shell 命令,"mkdir -p abs/ccc/ddd/eee",(2).通过JAVA程序里用递归循环方式创建目录。######我用的就是ftp的用户,能创建一级目录,但是假如说是 abc/adas/aa这样就创建不了 直接传 abv 就能创建一个abv的文件夹
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。