【问题标题】:FTPClient - 550 permission deniedFTPClient - 550 权限被拒绝
【发布时间】:2016-03-08 13:43:14
【问题描述】:

我在 Windows 7 机器上运行 java 1.7.0_21,我尝试删除 ftp ubuntu-server 上的文件。以下代码 sn-p 显示了我的工作。奇怪的是,文件有读、写和执行权限。包含文件夹也是如此。当我询问 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;
        }

【问题讨论】:

  • 您是否使用标准 ftp 客户端检查过您的服务器行为?
  • 是的,我做到了。当我尝试使用 filezilla 删除 ftp 文件时,我无法使用该用户删除它。即使我用root登录,也没办法。包含文件夹的权限为 777...
  • 所以绝对不是Java问题。您的 FTP 服务器配置一定有问题。请看那里。
  • 是的!你的第一个问题让我大开眼界。我每次都尝试用腻子删除文件,这很有效……很清楚,因为腻子没有通过 ftp 协议和端口连接。然后,当我尝试使用 ftp 客户端(filezilla)时,我看到了结果。原因是.. ftp 服务器配置没有所需的写入权限... 非常感谢您的提示。这是正确的观点,

标签: java windows ubuntu ftp


【解决方案1】:

我也有类似的问题。一旦我做了以下一切现在都很好。

对于 FTP,仅仅拥有文件和目录是不够的。服务和守护进程 FTP 必须正确配置才能写入和创建文件等。

在 Ubuntu 中: 编辑 /etc/vsftpd.conf

sudo gedit /etc/vsftpd.conf

并且在行中

#write_enable=YES

去掉前面的#即,

write_enable=YES

最后重启服务:(这非常重要

sudo service  vsftpd restart

【讨论】:

    猜你喜欢
    • 2014-07-04
    • 1970-01-01
    • 1970-01-01
    • 2011-12-08
    • 2013-11-10
    • 2012-01-07
    • 1970-01-01
    • 1970-01-01
    • 2015-08-30
    相关资源
    最近更新 更多