so embarrassing nix.desertthunder.dev
dotfiles docs src debug.md
1.5 kB · 72 lines
Markdown
at main

Debugging System Services #

This is a quick checklist for debugging services.

Systemd Units #

List failed system services:

systemctl --failed

List failed user services:

systemctl --user --failed

Inspect one unit and its recent logs:

systemctl status display-manager.service
systemctl --user status noctalia.service

Use status for a human-readable snapshot. It includes runtime state and recent journal lines, while show is better for scripts.[1]

Journal Logs #

journalctl reads systemd's structured journal and supports filters such as the current boot, system or user journal, unit names, and grep-style message matches.[2]

Read the current boot only:

journalctl -b --no-pager
journalctl --user -b --no-pager

Filter to a unit:

journalctl -b -u display-manager.service --no-pager
journalctl --user -b --user-unit noctalia.service --no-pager

Search messages for a word or regex:

journalctl --user -b -g 'noctalia|umbriel|pam' --no-pager

Crashes #

coredumpctl debug opens the matching core in a debugger, and info PID prints metadata plus stack trace details when they are available.[3]

List and inspect coredumps:

coredumpctl list
coredumpctl info PID
coredumpctl debug PID

  1. https://man7.org/linux/man-pages/man1/systemctl.1.html ↩︎

  2. https://man7.org/linux/man-pages/man1/journalctl.1.html ↩︎

  3. https://man7.org/linux/man-pages/man1/coredumpctl.1.html ↩︎