Где Ubuntu 14.04 сбрасывает файлы ядра?
Я включил неограниченный размер файла ядра, используя ulimit:
ulimit -a
core file size (blocks, -c) unlimited
...
Я полагаю, что запустил дамп ядра, но не могу найти файл ядра у себя дома, var/... и т.д...
Знаете ли вы, где Ubuntu настраивает расположение дампа ядра?
3 ответа
Я думаю, что это больше относится к ядру Linux, чем к конкретному Ubuntu. Проверять, выписываться
cat /proc/sys/kernel/core_pattern
Проверьте справочную страницу файла ядра
По умолчанию ядро Ubuntu настроено на использование apport для регистрации coredumps. Вы можете переопределить это, переписав /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