1
我使用Net :: SSH2在远程主机上运行慢管理命令。perl Net :: SSH2通道执行超时
的Perl 5.8.8 libssh2 1.2.2
我不断收到信道EXEC一个奇怪的 “超时”。 $chan->exec($command);
正在执行的命令通常运行长达一个小时(60分钟),执行过程中输出最少。
短命令正常工作。 约一分钟后,输出最少的慢速输出返回1。
我已将套接字设置为阻塞,并将超时设置为60分钟等等......没有任何帮助。
任何想法?
我希望与插槽上libssh或最坏的情况下解决这个问题。被调用的应用程序的工作方式,我不能依赖这种过程监控。 – peitur 2011-04-20 06:28:54
它不需要进行状态检查,只要你通过套接字推送某些东西,你应该没问题,或者你可以修改执行的命令,每隔几秒输出一些东西,无论是使用线程还是使用fork() ,我现在只是把东西扔到那里。 – Horus 2011-04-20 15:33:21