This walks you through the entire post-mortem debugging flow when something crashes in production and you need to analyze the core file. It covers enabling core dumps with ulimit and systemd's coredumpctl, loading cores in GDB and LLDB, and solving the perennial "no symbols" problem with both debuginfod and manual debug packages. The workflows are complete enough that you can copy-paste commands during an incident. Especially useful if you've inherited a stripped production binary and need to map it back to debug symbols, or if you're triaging a segfault without being able to reproduce it. The systemd integration section is worth having bookmarked since coredumpctl syntax is easy to forget under pressure.

skills.sh installs
828
GitHub stars
279
last updated
Aug 21, 2026

Install

$ npx -y skills add mohitmishra786/low-level-dev-skills --skill core-dumps --agent claude-code

Installs into .claude/skills of the current project.

Files

Core Dumps

Purpose

Guide agents through enabling, collecting, and analysing core dumps for post-mortem crash investigation without rerunning the buggy program.

Triggers

  • "My program crashed in production — how do I analyse the core?"
  • "How do I enable core dumps on Linux?"
  • "I have a core file but no symbols / source"
  • "How do I use debuginfod to get symbols for a core?"
  • "coredumpctl show me the crash"

Workflow

1. Enable core dumps (Linux)

# Per-session (lost on logout)
ulimit -c unlimited

# Persistent (add to /etc/security/limits.conf)
*   soft   core   unlimited
*   hard   core   unlimited

# Check current limit
ulimit -c

# Set core pattern (where and how cores are named)
# Default: 'core' in CWD — often not useful
sudo sysctl -w kernel.core_pattern=/tmp/core-%e-%p-%t
# %e = executable, %p = PID, %t = timestamp

# Persistent (add to /etc/sysctl.d/99-core.conf)
kernel.core_pattern=/tmp/core-%e-%p-%t
kernel.core_uses_pid=1

2. systemd/coredumpctl (modern Linux)

If systemd manages core dumps (common on Ubuntu 20+, Fedora, Arch):

# List recent crashes
coredumpctl list

# Show details of the latest crash
coredumpctl info

Sponsors

Details

Repository
github.com/mohitmishra786/low-level-dev-skills
Category
Debugging
First seen
Jun 3, 2026

More from mohitmishra786/low-level-dev-skills

All 54

Recommended

More Debugging
1daymade avatarscrapling-skilldaymade/claude-code-skillsInstall, troubleshoot, and use Scrapling CLI to extract HTML, Markdown, or text from webpages. Use this skill whenever the user mentions Scrapling, `uv tool ins827skills.sh installs
2mindrally avatarblazormindrally/skillsGuidelines for Blazor development including component lifecycle, state management, and performance optimization823skills.sh installs
3mindrally avatargeneral-best-practicesmindrally/skillsGeneral software development best practices covering code quality, testing, security, performance, and maintainability across technology stacks818skills.sh installs
4mindrally avatarrustmindrally/skillsExpert in Rust development with focus on safety, performance, and async programming806skills.sh installs
5railwayapp avatarmetricsrailwayapp/railway-skillsThis skill should be used when the user asks about resource usage, CPU, memory, network, disk, or service performance. Covers questions like "how much memory is794skills.sh installs
6AgriciDaniel avatarads-optimizeAgriciDaniel/claude-adsDiagnose and draft or explicitly apply paid-ad optimizations using evidence, financial constraints, experiments, and capability-gated adapters. Use for campaign789skills.sh installs