コアダンプファイルを生成し続けるプロセスがありますが、どのプロセスであるかはわかりません。クラッシュユーティリティを使用してコアダンプファイルを分析するための指示に従いました。新しいリポジトリをインストールする必要があり、インストールが中断されました。これで実行中なので、次のようになります。
crash: /usr/lib/debug/lib/modules/3.10.0-229.14.1.el7.x86_64/vmlinux and /home/user/d336599/core.26061 do not match!
解決策を知っていますか?
答え1
コアダンプにこのコマンドを使用すると、コアダンプfile
ファイルを生成した実行可能ファイルの名前を知らせることができます。
その後、gdb <executable file> <core dump file>
起動され、gdb
コマンドbt
はgdb
プログラムがクラッシュするバックトレースを生成します。
ただし、実行可能ファイルからデバッグシンボルが削除された場合、バックトレースでは多くの情報が提供されないことがわかります。この場合、実行可能ファイルの別のデバッグシンボルテーブルファイル(バージョンが正確に一致する必要がある)を見つけて、-s <symbol table file>
gdbコマンド呼び出しに追加する必要があるかもしれません。
コアダンプが切り捨てられると、ディスク容量が不足する可能性が高くなります(あなたの意見で述べたように)。コアファイル名は、/home/user/d336599/core.26061
RHEL7 sysctlのデフォルト値が使用可能であることを示しますkernel.core_pattern = "core"
。kernel.core_uses_pid = 1
sysctlに絶対パス名を指定すると、kernel.core_pattern
より多くのスペースを持つ別のディスクにコアダンプをリダイレクトできます。コアをダンプしたプログラムを所有しているユーザーがディレクトリに書き込むことができることを確認してください。
バラよりman 5 core
kernel.core_pattern
コアダンプファイルが作成される場所を指定する方法と名前を指定する方法の詳細。