1 <?xml version='
1.0'
?> <!--*-nxml-*-->
2 <!DOCTYPE refentry PUBLIC
"-//OASIS//DTD DocBook XML V4.2//EN"
3 "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
6 SPDX-License-Identifier: LGPL-2.1+
9 <refentry id=
"coredumpctl" conditional='ENABLE_COREDUMP'
10 xmlns:
xi=
"http://www.w3.org/2001/XInclude">
13 <title>coredumpctl
</title>
14 <productname>systemd
</productname>
18 <refentrytitle>coredumpctl
</refentrytitle>
19 <manvolnum>1</manvolnum>
23 <refname>coredumpctl
</refname>
24 <refpurpose>Retrieve and process saved core dumps and metadata
</refpurpose>
29 <command>coredumpctl
</command>
30 <arg choice=
"opt" rep=
"repeat">OPTIONS
</arg>
31 <arg choice=
"req">COMMAND
</arg>
32 <arg choice=
"opt" rep=
"repeat">PID|COMM|EXE|MATCH
</arg>
37 <title>Description
</title>
39 <para><command>coredumpctl
</command> is a tool that can be used to retrieve and process core
40 dumps and metadata which were saved by
41 <citerefentry><refentrytitle>systemd-coredump
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
46 <title>Options
</title>
48 <para>The following options are understood:
</para>
52 <xi:include href=
"standard-options.xml" xpointer=
"help" />
53 <xi:include href=
"standard-options.xml" xpointer=
"version" />
56 <term><option>--no-legend
</option></term>
58 <listitem><para>Do not print column headers.
</para></listitem>
61 <xi:include href=
"standard-options.xml" xpointer=
"no-pager" />
64 <term><option>-
1</option></term>
66 <listitem><para>Show information of a single core dump only, instead of listing
67 all known core dumps.
</para></listitem>
71 <term><option>-S
</option></term>
72 <term><option>--since
</option></term>
74 <listitem><para>Only print entries which are since the specified date.
</para></listitem>
78 <term><option>-U
</option></term>
79 <term><option>--until
</option></term>
81 <listitem><para>Only print entries which are until the specified date.
</para></listitem>
85 <term><option>-r
</option></term>
86 <term><option>--reverse
</option></term>
88 <listitem><para>Reverse output so that the newest entries are displayed first.
93 <term><option>-F
</option> <replaceable>FIELD
</replaceable></term>
94 <term><option>--field=
</option><replaceable>FIELD
</replaceable></term>
96 <listitem><para>Print all possible data values the specified
97 field takes in matching core dump entries of the
98 journal.
</para></listitem>
102 <term><option>-o
</option> <replaceable>FILE
</replaceable></term>
103 <term><option>--output=
</option><replaceable>FILE
</replaceable></term>
105 <listitem><para>Write the core to
<option>FILE
</option>.
110 <term><option>--debugger=
</option><replaceable>DEBUGGER
</replaceable></term>
112 <listitem><para>Use the given debugger for the
<command>debug
</command>
113 command. If not given and
<varname>$SYSTEMD_DEBUGGER
</varname> is unset, then
114 <citerefentry><refentrytitle>gdb
</refentrytitle><manvolnum>1</manvolnum></citerefentry>
115 will be used.
</para></listitem>
119 <term><option>-D
</option> <replaceable>DIR
</replaceable></term>
120 <term><option>--directory=
</option><replaceable>DIR
</replaceable></term>
122 <listitem><para>Use the journal files in the specified
<option>DIR
</option>.
127 <term><option>-q
</option></term>
128 <term><option>--quiet
</option></term>
130 <listitem><para>Suppresses informational messages about lack
131 of access to journal files and possible in-flight coredumps.
138 <title>Commands
</title>
140 <para>The following commands are understood:
</para>
144 <term><command>list
</command></term>
146 <listitem><para>List core dumps captured in the journal
147 matching specified characteristics. If no command is
148 specified, this is the implied default.
</para>
150 <para>The output is designed to be human readable and contains list contains
151 a table with the following columns:
</para>
155 <listitem><para>The timestamp of the crash, as reported by the kernel.
</para>
161 <listitem><para>The identifier of the process that crashed.
</para>
168 <listitem><para>The user and group identifiers of the process that crashed.
</para>
174 <listitem><para>The signal that caused the process to crash, when applicable.
179 <term>COREFILE
</term>
180 <listitem><para>Information whether the coredump was stored, and whether
181 it is still accessible:
<literal>none
</literal> means the core was
182 not stored,
<literal>-
</literal> means that it was not available (for
183 example because the process was not terminated by a signal),
184 <literal>present
</literal> means that the core file is accessible by the
185 current user,
<literal>journal
</literal> means that the core was stored
186 in the
<literal>journal
</literal>,
<literal>truncated
</literal> is the
187 same as one of the previous two, but the core was too large and was not
188 stored in its entirety,
<literal>error
</literal> means that the core file
189 cannot be accessed, most likely because of insufficient permissions, and
190 <literal>missing
</literal> means that the core was stored in a file, but
191 this file has since been removed.
</para></listitem>
196 <listitem><para>The full path to the executable. For backtraces of scripts
197 this is the name of the interpreter.
</para></listitem>
201 <para>It's worth noting that different restrictions apply to
202 data saved in the journal and core dump files saved in
203 <filename>/var/lib/systemd/coredump
</filename>, see overview in
204 <citerefentry><refentrytitle>systemd-coredump
</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
205 Thus it may very well happen that a particular core dump is still listed
206 in the journal while its corresponding core dump file has already been
207 removed.
</para></listitem>
211 <term><command>info
</command></term>
213 <listitem><para>Show detailed information about the last core dump
214 or core dumps matching specified characteristics
215 captured in the journal.
</para></listitem>
219 <term><command>dump
</command></term>
221 <listitem><para>Extract the last core dump matching specified
222 characteristics. The core dump will be written on standard
223 output, unless an output file is specified with
224 <option>--output=
</option>.
</para></listitem>
228 <term><command>debug
</command></term>
230 <listitem><para>Invoke a debugger on the last core dump
231 matching specified characteristics. By default,
232 <citerefentry><refentrytitle>gdb
</refentrytitle><manvolnum>1</manvolnum></citerefentry>
233 will be used. This may be changed using the
<option>--debugger=
</option>
234 option or the
<varname>$SYSTEMD_DEBUGGER
</varname> environment
235 variable.
</para></listitem>
243 <title>Matching
</title>
245 <para>A match can be:
</para>
249 <term><replaceable>PID
</replaceable></term>
251 <listitem><para>Process ID of the
253 core. An integer.
</para></listitem>
257 <term><replaceable>COMM
</replaceable></term>
259 <listitem><para>Name of the executable (matches
260 <option>COREDUMP_COMM=
</option>). Must not contain slashes.
265 <term><replaceable>EXE
</replaceable></term>
267 <listitem><para>Path to the executable (matches
268 <option>COREDUMP_EXE=
</option>). Must contain at least one
269 slash.
</para></listitem>
273 <term><replaceable>MATCH
</replaceable></term>
275 <listitem><para>General journalctl match filter, must contain an equals
276 sign (
<literal>=
</literal>). See
277 <citerefentry><refentrytitle>journalctl
</refentrytitle><manvolnum>1</manvolnum></citerefentry>.
284 <title>Exit status
</title>
285 <para>On success,
0 is returned; otherwise, a non-zero failure
286 code is returned. Not finding any matching core dumps is treated as
292 <title>Environment
</title>
294 <variablelist class='environment-variables'
>
296 <term><varname>$SYSTEMD_DEBUGGER
</varname></term>
297 <listitem><para>Use the given debugger for the
<command>debug
</command>
298 command. See the
<option>--debugger=
</option> option.
</para></listitem>
304 <title>Examples
</title>
307 <title>List all the core dumps of a program named foo
</title>
309 <programlisting># coredumpctl list foo
</programlisting>
313 <title>Invoke gdb on the last core dump
</title>
315 <programlisting># coredumpctl debug
</programlisting>
319 <title>Show information about a process that dumped core,
320 matching by its PID
6654</title>
322 <programlisting># coredumpctl info
6654</programlisting>
326 <title>Extract the last core dump of /usr/bin/bar to a file named
327 <filename noindex=
"true">bar.coredump
</filename></title>
329 <programlisting># coredumpctl -o bar.coredump dump /usr/bin/bar
</programlisting>
334 <title>See Also
</title>
336 <citerefentry><refentrytitle>systemd-coredump
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
337 <citerefentry><refentrytitle>coredump.conf
</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
338 <citerefentry><refentrytitle>systemd-journald.service
</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
339 <citerefentry project='man-pages'
><refentrytitle>gdb
</refentrytitle><manvolnum>1</manvolnum></citerefentry>