Когда я выполняю программу, над которой я работаю, происходит сбой со следующим сообщением:
...
Aborted (core dumped)
Однако дамп ядра не создается. Основные дампы были написаны ранее, и я не помню, чтобы я что-то изменил.
Когда я бегу, ulimit -a
я возвращаюсь,
$ ulimit -a
core file size (blocks, -c) unlimited
...
Другие моменты,
- Я проверил, что мой пользователь может создавать файлы в текущем каталоге.
- Я читал о
/proc/sys/fs/suid_dumpable
. В настоящее время он установлен на 0 на моей машине. Я пытался изменить его на 1 или 2, но без разницы. - Я также пытался запустить программу от имени пользователя root, но это тоже не имело значения.
К сожалению, я не помню, когда я смог произвести последний успешный дамп памяти.
sudo systemd-coredumpctl
показывает все недостающие дампы ядра. Ваше решение сработало, но только после перезагрузки системы.systemd
Онsystemd-sysctl.service
просто запускаетсяsysctl
в нужной точке загрузки и обрабатывает его вручную при изменениях. И не создавайте и не перезаписывайте файлы конфигурации, не изучая, для чего они предназначены, и их содержимого.50-coredump.conf
, чтобы применить настройки в текущей загрузке, мне пришлось запустить изменение настройки sysctl вручную, см. Stackoverflow.com/q/2065912/427545 .sysctl -w kernel.core_pattern="core"
Возможно, вы захотите использовать
coredumpctl
команду, чтобы либо получить дамп ядра, либо запустить на нем gdb. Это «одобренный systemd» метод борьбы с ними. : - /В определенном смысле приятно, что systemd захватывает все эти вещи, потому что через некоторое время автоматически их стирает, а также облегчает загрузку аварийных дампов для отчетов об ошибках.
Но это было резкое изменение с небольшим количеством уведомлений или подсказок для людей, которые знали, как работает coredumps до того, как включился systemd. Даже удаление файла с именем 'core.pid.txt' с инструкциями по использованию coredumpctl для получения coredump, а также о том, как отключить создание
.txt
файлов, было бы большой помощью, даже если бы они также засоряли Файловая система на некоторое время.источник