【发布时间】:2016-05-24 19:09:45
【问题描述】:
我有一个通过 ssh 运行一些命令的简单功能,这里是一个例子:
...
Net::SSH.start( self.host, self.user, config: true, keys: [self.pem_key] ) do| ssh |
result = ssh.exec! self.command
...
它工作正常,除非我忘记配置远程主机(例如在 ~/.ssh/authorized 中添加密钥)并且我的应用程序卡在密码请求上:
Completed 200 OK in 246ms (Views: 238.1ms | ActiveRecord: 4.3ms)
Started POST "/xxx" for ::1 at 2016-05-24 13:43:11 +0300
Processing by XXX::XXXController#run_now as JS
Parameters: {"id"=>"2"}
XXX::Check Load (0.3ms) SELECT ...
(0.1ms) BEGIN
SQL (0.3ms) UPDATE ...
(0.3ms) COMMIT
Text will be echoed in the clear. Please install the HighLine or Termios libraries to suppress echoed text.
some_user@some_host's password:
如何为这种情况设置超时或如何完全排除这种情况(引发一些错误?)
【问题讨论】:
标签: ruby-on-rails ruby net-ssh