ulimitを使用して、無制限のコアファイルサイズを有効にしました。
ulimit -a
core file size (blocks, -c) unlimited
...
コアダンプをトリガーしたと思いますが、自宅、var / ...などでコアファイルを見つけることができません。
Ubuntuがコアダンプの場所を構成する場所を知っていますか?
ulimitを使用して、無制限のコアファイルサイズを有効にしました。
ulimit -a
core file size (blocks, -c) unlimited
...
コアダンプをトリガーしたと思いますが、自宅、var / ...などでコアファイルを見つけることができません。
Ubuntuがコアダンプの場所を構成する場所を知っていますか?
回答:
これは、特定のUbuntuのものよりもLinuxカーネルのものだと思います。チェックアウト
cat /proc/sys/kernel/core_pattern
チェックアウトコアファイルのmanページを
/proc/sys/kernel/core_pattern
ファイルを見つける場所でコマンドを実行しても、明確ではありません。
cd /usr/share/apport/apport
動作しません。
デフォルトでは、Ubuntuカーネルはapportを使用してコアダンプを記録するように設定されています。上書きすることでこれを上書きできます。詳細については/proc/sys/kernel/core_pattern
、「コアダンプファイルの命名」セクションman core
を参照してください。例えば:
echo '/tmp/core.%e.%p.%t' | sudo tee /proc/sys/kernel/core_pattern
Apportはコアダンプを書き込み/var/crash/_path_to_program.userid.crash
、それだけでメインのUbuntuのaptリポジトリからインストールしたアプリケーションのためにそうします。
apportの詳細:https : //wiki.ubuntu.com/Apport
Ubuntu 16.04.3 LTSでは、私のコアダンプは次の場所にありました。
/var/lib/systemd/coredump/core.application-name.0.24d47e89526c4c7e90953998d2c33d1e.19672.1516049424000000000000
で実行するにはgdb
、次を実行します:
apt install gdb
gdb /path/to/your/binary/application-name /var/lib/systemd/coredump/core.application-name.0.24d47e89526c4c7e90953998d2c33d1e.19672.1516049424000000000000