gpt4 book ai didi

python - IO错误 : [Errno 2] No such file - Paramiko put()

转载 作者:太空狗 更新时间:2023-10-29 22:16:21 30 4
gpt4 key购买 nike

我正在使用 Paramiko 通过 SFTP 上传文件使用 sftp.put(localFile, remoteFile)。如果需要,我会先创建必要的目录

    makeCommand = 'mkdir -p "' + remotePath + '"'
ssh.exec_command(makeCommand)

这有时是有效的,但我偶尔会收到以下错误:

    sftp.put(localFile, remoteFile)
File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 565, in put
File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 245, in open
File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 635, in _request
File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 682, in _read_response
File "build/bdist.macosx-10.8-intel/egg/paramiko/sftp_client.py", line 708, in _convert_status
IOError: [Errno 2] No such file

尽管本地文件确实存在(并且 localFile 是它的正确路径)并且远程路径已创建。有讨论herehere在类似的问题上,但那里提出的所有观点都没有帮助我。我的服务器支持 df -hi 命令。有人对此有任何建议或可能的解决方案吗?

编辑

根据下面的建议,我尝试使用 sftp.chdir(remoteDirectory) 更改工作目录,但是这个调用产生了与上面完全相同的错误。所以这似乎不仅仅是一个上传问题。有什么想法吗?

最佳答案

看来是远程文件夹权限问题。尽管远程文件夹是在文件上传之前创建的,但该文件夹的权限似乎阻止了上传。

问题链接到this问题 - 如果我在上传之前对要上传到的文件夹设置打开权限,程序可以正常上传。虽然对于权限问题,我应该得到 IOError: [Errno 13] Permission denied,但自从我进行了更改后,我没有遇到任何错误。

我不确定是服务器给 Paramiko 的响应是问题所在,还是 Paramiko 本身的错误导致 IOError: [Errno 2] No such file 而不是Errno 13,但这似乎已经解决了问题。

关于python - IO错误 : [Errno 2] No such file - Paramiko put(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15481934/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com