java操作远端ftp文件失败

本文记录了在使用Hutool FTP工具类进行文件上传和清理时遇到的问题及解决方法。问题1中,个人构建的FTP对象无法上传文件,而同事的可以,通过设置FTP被动模式解决了问题。问题2涉及到文件权限问题,由于文件所有者不同,导致无法删除,通过修改文件所有者解决了删除权限问题。
摘要由CSDN通过智能技术生成

问题1 使用hutool的ftp工具类上传文件,其他两个同事的都可以进行上传,我构建的对象不能进行上传

使用hutool的ftp工具类上传文件,其他两个同事的都可以进行上传,我构建的对象不能进行上传

代码

上传失败代码:

Ftp ftp = new Ftp(backupConfig.getFtpAddress(),
				  backupConfig.getFtpPort(), 
				  backupConfig.getFtpAccount(), 
				  backupConfig.getFtpPassword())
boolean upload = ftp.upload(backupConfig.getFtpBackupPath(), file);

上述代码一直上传失败之后的话就进行了百度大法,发现要给FTP设置被动模式

Ftp ftp = new Ftp(backupConfig.getFtpAddress(),
				  backupConfig.getFtpPort(), 
				  backupConfig.getFtpAccount(), 
				  backupConfig.getFtpPassword()).setMode(FtpMode.Passive);
boolean upload = ftp.upload(backupConfig.getFtpBackupPath(), file);

修改了被动模式后文件上传成功.

问题定位

1:防火墙问题 关闭电脑防火墙发现并没有影响,依旧上传失败
2:端口问题(待验证).

ftp主动被动模式的区别

自行搜索哈,这个很多解释.

问题2 使用hutool的ftp工具类清理过期文件,不能清理

使用hutool的ftp工具类清理过期文件,不能清理

ftp.delFile(ftpBackupPath + StrUtil.SLASH + file);

直接使用hutool工具类进行文件清理

问题定位

linux服务器中,文件所属者并不是代码中的ftp登录人,所以代码中的登录人无权限进行文件删除,修改文件的所属人即可.

**加粗样式**
修改红色框中的文件所有者即可
使用命令为

chown [-R] 账号名称 文件或目录
chown [-R] 账号名称:用户组名称 文件或目录
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值