2

Linux(Ubuntu)で、インターネットに接続されているかどうか(またはeth0が接続されているかどうか)をプログラムで確認したいと思います。

これを行っているのは、接続が失われる可能性が非常に高いシステムでネットワーク接続を必要とするプログラムを作成しているためです。

ですから、定期的に実行して確認できるスクリプトを考えていました。

良い提案をいただけますか?

4

3 に答える 3

6

これがあなたが望むことを達成する簡単なスクリプトです:

EMAIL=youremail@something.com
ping -c 5 8.8.8.8 >> /dev/null

if [ $? -eq  0 ]
    then
    echo "Able to reach internet!" | mail $EMAIL
else
    echo "Unable to reach internet!" | mail $EMAIL
fi

明らかに、あなたはあなたの目標が編集であることに応じて何か他のことをするためにメールを変えることができます:説明するために、これはあなたが接続されていることを確認するためにグーグルdnsサーバーにpingし、あなたに何らかの方法でメールを送ります。もちろん、障害が発生した場合の電子メール部分は、ネットワーク上にローカルの電子メールサーバーがある場合にのみ機能します。

于 2012-06-11T20:05:29.477 に答える
1

/sbin/ifconfigスクリプトを作成するための優れた「アダプタステータスの取得」コマンドになります。

cronスクリプトを実行するための優れた方法になります。

于 2012-06-11T20:02:24.487 に答える
0

pingまた、離れたサーバー(できれwgetば接続したいサーバー)に提案します。ネットワークはローカルキャンパスではうまく機能する可能性がありますが、大陸間接続ではうまく機能しません(たとえば、一部のケーブルが切断されているため)。

于 2012-06-12T06:02:13.083 に答える