我在Windows 7机器上运行java 1.7.0_21,我尝试删除ftp ubuntu-server上的文件。以下代码片段显示了我的操作。奇怪的是,该文件具有读,写和执行权限。包含文件夹也是。当我问bPermisison我收到真实,但我无法删除此文件.... replyString给出错误550权限被拒绝。 剪切相同的代码(和实现)在另一个ftp服务器上正常工作。 我搜索的时间很长,但我没有找到任何提示。有人知道出了什么问题吗?
感谢您的帮助。
String sFilePath = FileUtil.concatPath(sParamRemotedir, oFTPFile.getName(), "/");
boolean bPermission = FTPFile.hasPermission(FTPFile.USER_ACCESS, FTPFile.WRITE_PERMISSION);
boolean bDeleted = oFTPClient.deleteFile(sFilePath);
sReplyString = oFTPClient.getReplyString();
if(bRetrieveOK && !bDeleted) {
m_oDialogError.show(ErrorText.ERROR_TRASYSTHREAD_FTPMOVE_DELETEERROR, oFTPFile.getName(), oFTPClient.getReplyString());
bOK = false;
}
答案 0 :(得分:1)
我也有类似的问题。一旦我做了以下一切,现在一切都很好。
使用FTP,文件和目录的所有者是不够的。必须正确配置服务和守护程序FTP才能编写和创建文件等。
在Ubuntu中: 编辑 /etc/vsftpd.conf
sudo gedit /etc/vsftpd.conf
并在行
#write_enable=YES
删除前面的#,
write_enable=YES
最后重启服务:(这是非常重要)
sudo service vsftpd restart