web-dev-qa-db-ja.com

Ubuntuは、実行したことがないプログラムのクラッシュを検出します

atopを使用して、topの上にいくつかの基本的なものを取得します。私はこれを多くのシステムで使用しましたが、最初に実行したときに「浮動小数点例外」を出力して終了する場合があることを認識しています。

私が理解できない部分は、基本的なapt-get install atop 2つのことが起こります。

  • Ubuntuはエラーを報告することを説明するダイアログを表示します。詳細をクリックすると、atopの浮動小数点例外であることを示します。
  • 起動時に同じエラーが再び表示されます

プログラムを実際に実行するとエラーが発生する可能性がありますが、インストール直後にエラーが発生するのはどういうわけか(何らかの理由で実行されていることを示すもの)および起動時にatopが実行されるのはなぜですか起動後にこれらのエラーを表示するのは自分自身ですか?

2
Kristopher Ives

atopがインストールされると、バックグラウンドで実行し続けるシステムサービスもインストールされます。サービスはコンピューターが起動されるたびに開始されます。

さらに、パッケージには、インストール前、インストール後、削除前、および削除後に自動的に実行されるスクリプトを含めることができます(多くの場合、スクリプトが含まれています)。

atopの場合、/var/lib/dpkg/info/atop.postinstを実行するインストール後スクリプト(invoke-rc.d atop start)があります。これはDebianベースのシステムでは非常に典型的なものです。サービスをインストールすると、自動的に開始されます。

それで、このatopサービスは何をするのでしょうか? /etc/init.d/atopを読み取ると、最終的に次を実行します($CURDAYは現在の日付を表します。たとえば、執筆時の20161220)。

/usr/bin/atop -a -w /var/log/atop/atop_$CURDAY 600

マニュアルページによると、これは1つのatopコマンドを常に実行し続け、/var/log/atopの下に生データを10分(600秒)ごと、永久に(マシンがシャットダウンされるまで)書き込みます。これにより、ユーザーは現在の使用状況だけでなく、システムの過去の使用状況を調べることができます。 manページのRAW DATA STORAGEセクションをご覧ください。

これで、atopがマシン上でクラッシュするように見えるため、パッケージのインストール時(およびサービスの開始時)に1回、コンピューターの起動時に1回のクラッシュが発生します(これによりサービスが開始されます)。真夜中にサービスを再起動するcronジョブもあるため(毎日新しいログファイルが使用されます)、真夜中にもう1つクラッシュします。

コマンドラインからatopを実行するだけで、サービスを気にしない場合は、Sudo update-rc.d atop disableを実行して無効にすることができます。

4
Adrien Beau