Linux環境下でのコアファイルを生成する方法

  そして、ハングアップ、原因を見つけることがしばしば困難であるが、コアのLinuxカーネルファイルは、一般的に、Linux環境下でのクラッシュ時に異常なプロセスに情報を記録するプロセスを我々に提供しています。しかし、コア・ファイルは、次の手順、スイッチを設定する必要があります。

  1、スイッチはコマンドを入力し、開くかどうかを確認するためにコアファイルを生成します。#ulimitの-a

  私たちは、コアファイルサイズの最初の行が有効になっていない、0であることがわかります。

  図2に示すように、#ulimit -c [バイト]を使用すると、システムは、コアファイルサイズを生成できるようにするために提供されてもよいです。

ulimitの-c 0は、コアファイルを生成しません。
 
ulimitの-c 100セットのコアは、100Kまでのファイル
 
ulimit -c無制限のファイルサイズは、コアを制限しません
  #ulimitの-c無制限実行し、その後のulimitは、コアを表示-a

 

  ベンは、このプロセスがコアファイルを生成することができます崩壊、唯一のシェルで効果を取ることができ、この方法では、恒久的な方法については、以下を言いました:

  #vim / etc / profileをした後、プロファイルファイルを追加、編集モードに入ります

ulimitの-c無制限

   保存して終了し、サーバーを再起動して、変更ファイルには、サーバーを再起動し、すぐに有効にするには、ソースファイルを使用しない、効果、または#sourceは/ etc / profileを取るために長い時間です。

  3.生成されたファイルのパスと名前を指定し、#1のvim /etc/sysctl.confファイルを実行し、編集モードに入り、次の2行を追加します

kernel.core_pattern = / VAR /コア/ core_%E_%P
kernel.core_uses_pid = 0

  

  #sysctlを-p /etc/sysctl.confをして、VARコアの下にディレクトリを作成し、すぐに変更を有効にするです。

  次のようにcore_patternという名前のパラメータは次のとおりです。

ダンプ・ファイルの最大サイズC%

%はEダンプ・ファイル名

ダンプ・プロセスの実際のグループID%のG

%のHホスト名

%PダンププロセスPID

このシグナルの%Sはコアダンプにつながります

(1970年1月1日から効力を秒数を数える)%tの時間をダンプ

%u 所dump进程的实际用户ID

  4、# kill -s SIGSEGV $$ ,执行命令,可以看到/var/core下生成了一个core文件,说明已经设置成功。

 

  好了,接下来进程出问题就可以用core文件调试了。

 

 

  

おすすめ

転載: www.cnblogs.com/JohanChan/p/11245723.html