1
Pythonスクリプトを使用しています。私のサーバーが利用可能な場合にのみ動作します。だから、スクリプトが始まる前に、私は自分のサーバーにpingをするか、むしろサーバーの可用性をチェックしたい。Pythonでサーバーにルート権限がない場合にpingを実行します
既に関連するいくつかの質問があります。 例えば
-
response = pyping.ping('Your IP') if response.ret_code == 0: print("reachable") else: print("unreachable")
-
response = os.system("ping -c 1 " + hostname)
これらの答えだけrootユーザーとして、よく働きます! 私は、次のエラーメッセージが表示されます、一般的なユーザーとして、このソリューションを使用する場合:
ping: Lacking privilege for raw socket.
私はジェンキンスジョブでこのスクリプトを実行しているため、一般的なユーザーとして、持っていることを行うことができ、ソリューションを必要としますルートとして実行するオプションではありません。
pingする必要がありますか? HTTP GETまたは単純なUDPパケットはどうですか? –
うーん、私はそれについて考えなかった。私の心に来る最初のものはpingしていたので、私はpingでそれを解決しようとしています。それは短くてシンプルです。しかし、他の解決方法があれば、下記の回答として書くことができます。 – Oni1
なぜあなたは空室状況をチェックしようとしていますか?既知のポート上で実行中のサービスを使用しようとする前に、すばやくチェックしようとしていますか?はいの場合は、最初にpingを実行してから「本物の」サービスに接続するのではなく、サービスに接続しようとします。 –