ftplib.error_perm: 553 无法创建文件。 (Python 2.4.4)

2023-12-04

我正在写入我要通过 FTP 访问的用户的主目录,因此权限应该不是问题。 FTP 在 FileZilla 中运行。

我检查了 vsftp.conf 并做了local_enable=YES change

On a Debian4使用 Python 2.4.4 的系统(我无法升级它),我将此代码与 ftplib 一起使用

>>> f = ftplib.FTP('address', 'user', 'password')
>>> f.cwd('/home/user/some/dir/')
'250 Directory successfully changed.'
>>> myfile = '/full/path/of/file.txt'
>>> o = open(myfile, 'rb')
>>> f.storbinary('STOR ' + myfile, o)
Traceback (most recent call last):
File "<stdin>", line 1, in ?
File "/usr/lib/python2.4/ftplib.py", line 415, in storbinary
    conn = self.transfercmd(cmd)
  File "/usr/lib/python2.4/ftplib.py", line 345, in transfercmd
    return self.ntransfercmd(cmd, rest)[0]
  File "/usr/lib/python2.4/ftplib.py", line 327, in ntransfercmd
    resp = self.sendcmd(cmd)
  File "/usr/lib/python2.4/ftplib.py", line 241, in sendcmd
    return self.getresp()
  File "/usr/lib/python2.4/ftplib.py", line 216, in getresp
    raise error_perm, resp
ftplib.error_perm: 553 Could not create file.

有什么想法为什么会失败吗?


您不是在写入主目录,而是在写入/full/path/of/file.txt:

myfile = '/full/path/of/file.txt'
...
f.storbinary('STOR ' + myfile, o)

您只能使用带有以下内容的文件名STOR命令(一旦“cwd”已经是正确的目标路径):

f.cwd('/home/user/some/dir/')
f.storbinary('STOR file.txt', o)

或远程主机的正确绝对路径:

f.storbinary('STOR /home/user/some/dir/file.txt', o)
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

ftplib.error_perm: 553 无法创建文件。 (Python 2.4.4) 的相关文章

随机推荐

  • 具有多个标头的 Ionic 4 原生 http POST

    以下是我从 Ionic 应用程序执行 http post 的方式 import HTTP from ionic native http ngx someAction assetId number userId number var asse
  • Python websockets,订阅多个频道

    我正在尝试同时连接到多个通道 并通过 python websocket 库从推送 API 接收消息 考虑下面的代码 您将如何连接到多个通道 该代码是从此处获得并稍加修改的 https pypi python org pypi websock
  • 使用 Bing Maps Quadkeys 作为 Openlayers 3 Tile 源

    我有许多图块源 它们在旧的 Silverlight 应用程序中使用 Bing Maps 的 Quadkey 系统 我想在新的 Openlayers 3 地图中使用它们 我找到了几个函数示例 这些函数会将这些源转换为 Leaflet js 但
  • 使用扩展修改浏览器 UI?

    是否有 API 可以修改 Chrome 扩展或 WebExtensions 中的常规浏览器 UI 例如 我想修改选项卡栏 以便它可以显示多行选项卡 而无需创建位于地址栏下方的工具栏 或者简单地向导航栏等添加一些样式 我似乎找不到一个 API
  • “for filename in os.listdir”导致错误“FileNotFoundError:[Errno 2]没有这样的文件或目录”

    我尝试列出非工作目录中的目录中的文件 import os for filename in os listdir home pc folder logs user1 path home pc folder logs name of file
  • 当 get 和 is 都存在时,JSTL EL 访问器翻译优先级?

    这是一个由两部分组成的问题 我有一个名为 active 的带有 char 属性的 person 对象 Person 有一个 getActive 方法 它按预期返回一个 char 在我的 JSTL EL 中 我有以下内容
  • 垂直连接制表符分隔的 txt 文件

    input1 input2 output 是制表符分隔的 txt 文件 如果输入1是 a b c 1 2 3 输入2是 e r t 那么我希望输出是 a b c 1 2 3 e r t 我尝试通过学习使用 python 连接文件Python
  • MongoRepository JSON 日期查询 (Spring)

    我正在尝试使用自己的查询来查询 mongo 存储库 Repository public interface LogEntryRepository extends MongoRepository
  • 了解 libx264 输出 [关闭]

    Closed 这个问题不符合堆栈溢出指南 目前不接受答案 我在 ffmpeg 中使用 libx264 进行编码 最后我得到了以下输出 谁能指导我理解和解释这一点 有任何参考 文档吗 01 01 06 34 43 650 I stderr 6
  • 迭代包含嵌套数组的 pandas 数据框列

    我希望你能帮我解决这个问题 我在下面有这些数据 列名称随便 data file0090 84 55 189 248 100 18 68 115 88 file6565 86 58 189 24 10 118 68 11 8 我需要将第 0
  • Celery 单元测试重试

    我目前正在为我的 celery 任务编写单元测试 并想测试我的任务是否正在重试 注意 ALWAYS EAGER 在测试设置中设置为 True app shared task bind True soft time limit 600 aut
  • Arduino 频率为 11.0592MHz。修改Timer0、delayMicroseconds()

    我在 Arduino 环境中使用 11 0592MHz 的 ATMega328P 我发现delayMicroseconds 函数快了大约27 原因是 wiring c 中的代码假设时钟速度现在为 8MHz 现在我尝试修复它 我发现了不同的帖
  • 如何安装本地 gem?

    如果我将 gem 文件下载到计算机中的某个文件夹中 我可以稍后使用它进行安装吗gem install 另外 您可以使用gem install local path to gem filename gem 这将跳过您离开时发生的通常的 gem
  • 从 VBA 调用 Python 脚本

    我在 Excel 中从 vba 调用 python 脚本时遇到问题 我阅读了解决相同问题的其他线程 但是当我运行代码时 Python 屏幕闪烁 然后消失 仅供参考 我下载了适用于 Windows 10 的 python 3 6 5 并将其添
  • 使用 JavaScript 中的 Dart 类

    我有一个 Dart 类 foo dart class Foo void talk print Hello 将 foo dart 编译为 JavaScript 后 我 希望能够像这样使用 Foo var foo new Foo from fo
  • java.lang.NoClassDefFoundError:org/apache/commons/lang/Validate

    为什么会发生以下情况以及如何解决 Exception in thread main java lang NoClassDefFoundError org apache commons lang Validate at org jsoup D
  • Pygame 如何修复“尾随像素”?

    在图像中 红色轨迹是当我在精灵周围添加边界矩形时 pygame 创建的轨迹 精灵也可以做到这一点 最简单的解决方案是在每次重绘后将表面清除为黑色 然而 尝试在整个主表面上这样做并不是一个好主意 我怎样才能解决这个问题 通常你会这样做 def
  • Java 中 for 循环转换为 while 循环

    我需要将这个 for 循环转换为 while 循环 这样我就可以避免使用中断 double array new double 100 Scanner scan new Scanner System in for int index 0 in
  • 单击 Facebook 通知后应用程序启动时,请求 ID 不可用

    Facebook 应用程序是使用 iOS 本机应用程序设置的 并使用另一个应用程序的捆绑 ID 和应用商店 ID 启用 在当前情况下 以下是可能的 1 向朋友发送应用程序请求 2 请求徽章出现在好友的Facebook中 3 单击请求将启动我
  • ftplib.error_perm: 553 无法创建文件。 (Python 2.4.4)

    我正在写入我要通过 FTP 访问的用户的主目录 因此权限应该不是问题 FTP 在 FileZilla 中运行 我检查了 vsftp conf 并做了local enable YES change On a Debian4使用 Python