[О блоге]
[наверх]
[пред]
[2022-06-27 21:43:17+03:00]
[763addc2e593a89a365040923567746f948155a9]
Темы: [systemd]
Coredump в современном GNU/Linux
У меня падает программа под Ubuntu (работает она только под GNU/Linux).
Segfault. Нужно засунуть в отладчик. А где .core? В отличии от *BSD
систем, тут эти файлы не создаются. ulimit -c unlimited не помог --
файлы всё равно не появляются. Во время быстрого поиска в Интернете
видело упоминание coredumpctl, которого не нашёл в своей установке.
Спросил коллег на работе: оказывается эту штуку надо ставить отдельно,
штатно в системе не идёт. Дожили... ставить что-то дополнительно в
систему чтобы получить coredump-ы. А ведь прежде они просто так,
бесплатно, без регистрации и SMS предоставлялись.
[оставить комментарий]
- комментарий 0:
From: kmeaw
Date: 2022-06-29 22:59:27Z
А что написано в sysctl kernel.core_pattern? Если systemd-coredump, то
они складываются в /var/lib/systemd/coredump. Если хочется максимально
простого поведения, то в этот sysctl можно записать строку "core", и
тогда корка попадёт в рабочую директорию падающего процесса.
- комментарий 1:
From: Sergey Matveev
Date: 2022-06-30 11:04:09Z
*** kmeaw [2022-06-30 01:58]:
>А что написано в sysctl kernel.core_pattern? Если systemd-coredump, то
>они складываются в /var/lib/systemd/coredump. Если хочется максимально
>простого поведения, то в этот sysctl можно записать строку "core", и
>тогда корка попадёт в рабочую директорию падающего процесса.
Видел где-то упоминание core_pattern, менял его на core, но только после
установки systemd-coredump сообразил что он скидывал dump в "core" файл,
а я рефлекторно искал "программа.core" и думал что ничего не создаётся.
Сейчас там выставлен путь с coredump-ом.