Linux命令等待SSH服务器启动
发布时间:2020-12-13 17:20:16 所属栏目:Linux 来源:网络整理
导读:我有一个脚本,它创建一个虚拟机,并给我一个IP地址. 然后我想做这样的事情: waitforssh 192.168.2.38 ssh 192.168.2.38 它将等待机器启动并ssh响应,然后ssh进入它. waitforssh是我需要找到的命令. nmap,netcat,fping还是ping这个工作?我尝试过netcat,但如果
我有一个脚本,它创建一个虚拟机,并给我一个IP地址.
然后我想做这样的事情: waitforssh 192.168.2.38 && ssh 192.168.2.38 它将等待机器启动并ssh响应,然后ssh进入它. waitforssh是我需要找到的命令. nmap,netcat,fping还是ping这个工作?我尝试过netcat,但如果主机无法访问,它会在几秒内放弃. 它需要处理机器本身正在启动的事实,并且可能需要一些时间来响应网络数据包. 解决方法
我没有主机,我可以ssh并控制它是否正常,但这应该工作:
while ! ssh <ip> do echo "Trying again..." done 或者更明确的shell脚本: #!/bin/sh ssh $1 while test $? -gt 0 do sleep 5 # highly recommended - if it's in your local network,it can try an awful lot pretty quick... echo "Trying again..." ssh $1 done 保存为(比方说)waitforssh.sh然后用sh waitforssh.sh调用它192.168.2.38 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |