Ruby Net-SFTP没有响应

Ruby Net-SFTP没有响应,第1张

概述我正在尝试使用Net :: SFTP将文件上传到SFTP站点. 问题是Ruby进程永远不会返回.它被冻结,卡住,永无止境……我必须让Ctrl-C让它停下来. >我可以使用sftp在命令行中连接到ftp服务器. >我在Linux(Ubuntu)和Snow Leopard上尝试过这个代码,它做了同样的事情. >安装了最新版本的Net :: SSH和Net :: SFTP. >来自宝石清单网: > ne 我正在尝试使用Net :: SFTP将文件上传到SFTP站点.

问题是Ruby进程永远不会返回.它被冻结,卡住,永无止境……我必须让Ctrl-C让它停下来.

>我可以使用sftp在命令行中连接到ftp服务器.
>我在linux(Ubuntu)和SNow Leopard上尝试过这个代码,它做了同样的事情.
>安装了最新版本的Net :: SSH和Net :: SFTP.

>来自宝石清单网:

> net-sftp(2.0.5)
> net-ssh(2.1.4)

>散列参数的不同组合(参见下面的代码)
>尝试调用Net :: SFTP.start而不是先创建SSH会话.
>当我使用命令行工具登录并请求版本时,服务器以“SFTP协议版本3”响应.
>我正在运行Ruby 1.8.7(2010-08-16 patchlevel 302)[i686-darwin10.7.0]

调试输出来自:详细(最后几行):

D,[2011-07-29T17:30:52.692192 #19399] DEBUG -- tcpsocket[80c06478]: read 36 bytesD,[2011-07-29T17:30:52.692609 #19399] DEBUG -- tcpsocket[80c06478]: received packet nr 7 type 99 len 12I,[2011-07-29T17:30:52.692751 #19399]  INFO -- net.ssh.connection.session[80bd5da0]: channel_success: 0D,[2011-07-29T17:30:52.692817 #19399] DEBUG -- net.sftp.session[80bd5c24]: sftp subsystem successfully startedD,[2011-07-29T17:30:52.693625 #19399] DEBUG -- tcpsocket[80c06478]: @R_120_4403@ packet nr 8 type 94 len 28D,[2011-07-29T17:30:52.693834 #19399] DEBUG -- tcpsocket[80c06478]: sent 52 bytes

示例代码:

require 'rubygems'require 'net/sftp'FTP = "someftpsite"FTP_USER_name = "user"FTP_PASSWORD = "password"hash = {:password => FTP_PASSWORD,:verbose => :deBUG,:keys=>[""],:auth_methods => ["password"],:timeout => 5,:port=>22}begin    Net::SSH.start(FTP,FTP_USER_name,hash) do |test|    test.sftp.upload!("localfile","remotefile")endrescue Exception => err    puts "error:#{err.inspect}"end

编辑:2011年8月22日

这似乎与SFTP服务器的交互性有关.我通过使用expect创建一个shell脚本并从Ruby中运行来运行该文件来解决这个问题. shell脚本在运行时创建.这看起来真的很乱,但这是我能够使用Ruby工作的唯一方法.如果其他人有建议,我很乐意找到更好的方法来做到这一点.

解决方法 您可以使用公钥/私钥身份验证. http://net-ssh.rubyforge.org/ssh/v1/chapter-2.html#s2 总结

以上是内存溢出为你收集整理的Ruby Net-SFTP没有响应全部内容,希望文章能够帮你解决Ruby Net-SFTP没有响应所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1266414.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-08
下一篇 2022-06-08

发表评论

登录后才能评论

评论列表(0条)

保存