2013-02-07 19 views
8

セグメント違反後にコアダンプが生成されました。これが起こったときにシステム時刻を見る方法はありますか?コアダンプからシステム時間を取得するにはどうすればよいですか?

このメタ情報なしで私に送信されたコアダンプファイルの作成時間は使用できません。

+9

私は、あなたがどこかに現在の時刻を含む何らかの変数を知っていない限り、かなり難しいと思います。次回は、ファイルを 'tar zcf core.tar.gz core'でパックするように顧客に依頼してください。すると、スペースが少なくて済み、タイムスタンプはtarアーカイブに残されます。 –

+1

関連(ただしSolarisの場合):http://stackoverflow.com/questions/10739334/get-the-creation-time-from-core-dump –

+0

ほとんどのファイルシステムでは作成時間が保存されていないので、それは驚くことではありません情報は利用できません。 –

答えて

3

デフォルトではシステム時間は(残念ながら)コアファイルに保存されません。あなたにはいくつかのオプションがあります。それらの1つは、システム時刻を含むようにコアファイルの名前を変更することです。

この詳細についてはhereをご覧ください。

基本的に、コアファイルの名前に "%t"を貼り付けたいとします。

カスタムカーネルを実行している場合、さらに多くのオプションがあります。

例えば、elf_prstatus構造を変更して、他のものを含めることができます。これは、棚の工具が常に幸せになるわけではないため、痛みを伴わないオプションです。カスタムファイルをコアファイルに追加し、アプリケーション固有の情報を追加して、readelfを使用してダンプして検査することができます。

0

コアが生成されたディレクトリの "ls -lrt"を実行すると、コアダンプが作成されたときにチェックされます。

+0

コアファイルがある場所から別の場所にコピーされた場合は、質問者は「このメタ情報なしで私に送られたので、コアダンプファイルの作成時間を使用できません」と述べています。 – amrith

+0

はい私の悪い..唯一の方法は、ディレクトリに 'ls -lrt'を実行し、コアダンプを送るよう頼むことです。これは私が以前のプロジェクトでやっていたことです。 –

関連する問題