アプリケーション開発ポータルサイト
ServerNote.NET
カテゴリー【Ubuntu
Ubuntuでcore dumpedとなってるのにcoreが出力されない場合
POSTED BY
2023-04-07

Ubuntu Server 21.10にて、

Segmentation fault (core dumped)

と出たのに、カレントディレクトリにcoreファイルが出力されない。

ulimit -a
core file size              (blocks, -c) unlimited

となっているのにかかわらず、である。これの対処はsuになって行う。

sudo -s
sysctl -a | grep core_pattern

kernel.core_pattern = |/usr/share/apport/apport %p %s %c %d %P %E

この謎のapportなるものが邪魔しているっぽいので無効にする。

vi /etc/default/apport

# set this to 0 to disable apport, or to 1 to enable it
# you can temporarily override this with
# sudo service apport start force_start=1
#enabled=1
enabled=0

として、0にする。

sysctl設定のメモリロードは/procにあるので、以下core.実行ファイル.プロセスIDの形式でcoreを吐かせる設定をする。

echo 'core.%e.%p' > /proc/sys/kernel/core_pattern
sysctl -a | grep core_pattern

kernel.core_pattern = core.%e.%p

これでとりあえずcoreが出来るが、再起動すると元に戻るので、sysctl.conf.dにファイルを設置する。

vi /etc/sysctl.d/10-core-dump.conf

kernel.core_pattern = core.%e.%p

などとしておけばOK。

※本記事は当サイト管理人の個人的な備忘録です。本記事の参照又は付随ソースコード利用後にいかなる損害が発生しても当サイト及び管理人は一切責任を負いません。
※本記事内容の無断転載を禁じます。
【WEBMASTER/管理人】
自営業プログラマーです。お仕事ください!
ご連絡は以下アドレスまでお願いします★

【キーワード検索】