Linux Signal Reference
v1.0.1Browse POSIX signals with numbers, default actions, catchability, and practical examples.
Reference for all Linux/POSIX signals (SIGINT, SIGTERM, SIGSEGV, SIGKILL, SIGUSR1/2, etc.) — lists signal number, default action, description, and common use cases with shell and C code examples.
How to use- →Search by signal name (e.g. "SIGTERM") or number (e.g. "15") to jump to its definition.
- →Click any signal entry to see its default action, whether it can be caught or ignored, and typical scenarios.
- →Use the "kill -l" reference to map signal names to their numeric values for scripting.
- →Refer to the trap examples to write shell signal handlers using the trap built-in.
27 signals found
Hangup. Terminal closed or controlling process died. Often used to reload configuration.
kill -SIGHUP $(pidof nginx)Interrupt from keyboard (Ctrl+C). Requests graceful termination.
kill -SIGINT 12345Quit from keyboard (Ctrl+\). Like SIGINT but produces a core dump.
kill -SIGQUIT 12345Illegal instruction. Process attempted to execute an invalid CPU instruction.
kill -SIGILL 12345Trace/breakpoint trap. Used by debuggers.
Used internally by gdb/lldbAbort. Sent by abort() call when a fatal error is detected.
kill -SIGABRT 12345Bus error — invalid memory address alignment.
kill -SIGBUS 12345Floating point / arithmetic exception (e.g. division by zero).
kill -SIGFPE 12345Kill. Force-terminates the process immediately. Cannot be caught or ignored.
kill -9 12345User-defined signal 1. Application-specific meaning.
kill -SIGUSR1 12345Segmentation fault — invalid memory reference.
kill -SIGSEGV 12345User-defined signal 2. Application-specific meaning.
kill -SIGUSR2 12345Broken pipe — write to pipe with no reader.
Triggered automatically when pipe closesAlarm clock. Sent when timer set by alarm() or setitimer() expires.
Used for timeout implementationsTermination. Default kill signal. Requests graceful shutdown.
kill 12345 (default, same as kill -15)Child stopped or terminated. Sent to parent when child process state changes.
Handled in process supervisors like systemdContinue. Resume a stopped process.
kill -SIGCONT 12345Stop process. Cannot be caught or ignored. Like Ctrl+Z but programmatic.
kill -SIGSTOP 12345Terminal stop (Ctrl+Z). Unlike SIGSTOP, this can be caught.
Ctrl+Z in terminalTerminal input for background process — stops reading.
Sent automatically by kernelTerminal output for background process — stops writing.
Sent automatically by kernelUrgent condition on socket — out-of-band data available.
Used in TCP urgent data handlingCPU time limit exceeded (set with ulimit -t).
Triggered automatically by kernelFile size limit exceeded (set with ulimit -f).
Triggered automatically by kernelTerminal window size changed. Used by ncurses apps to redraw.
Sent when terminal is resizedI/O now possible on a file descriptor.
Used with O_ASYNC socket flagsBad system call. Process made an invalid syscall.
Triggered by seccomp policy violations