あなたがpingについて尋ねたことは知っています。他にも考慮すべき点があります。
「稼働時間」を取得するためのより合理的な方法は、wtpmx、utmp、またはこれを目的としたその他のファイルなどのデータベースにクエリを実行するものを使用することです。ping プロトコルである ICMP は、使用中のシステムでは無視される可能性があり、無視されることになります。返却できなかったからといって、必ずしもシステムがダウンしているとは限りません。または、システムが機能していません。多くの理由が考えられます。
最新の UNIX ボックスでアップタイムを取得することを検討する 1 つの方法:
ssh remoteserver 'uptime'
また、ping を実行している「理由」も考慮してください。
ping は、システムが動作しているかどうか、および ping パケットに応答しているかどうかを確認するのに役立ちますが、システムが実際に機能しているかどうかはわかりません。これはおそらくあなたが確実に知りたいことです。たとえば、データベース サーバーまたはメール サーバーで、ハングしたプロセスが発生している場合があります。そのため、ping には応答しますが、意図したことはほとんど実行されません。ping だけでなく、より便利なコマンドを作成することもできます。サーバー上の 24 時間 365 日運用データベースに 1 分に 1 回ログインし、「OKAY」などの無害なものをエコーする SQL スクリプトを実行します。例えば、
select 'OKAY' from dual;