systemd/0052-man-add-systemd-coredu...

201 lines
9.2 KiB
Diff
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

From e6751d628bdc96c751517e9b6680d3a3a5cd8f2f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Zbigniew=20J=C4=99drzejewski-Szmek?= <zbyszek@in.waw.pl>
Date: Sun, 13 Jul 2014 20:32:46 -0400
Subject: [PATCH] man: add systemd-coredump(8) and a bunch of links
(cherry picked from commit 5146e7e8aec2d394c06771d4c9d0d03fc2cd911c)
---
Makefile-man.am | 4 +-
man/coredumpctl.xml | 2 +
man/journalctl.xml | 1 +
man/systemd-coredump.xml | 105 +++++++++++++++++++++++++++++++++++++++
man/systemd-journald.service.xml | 1 +
sysctl.d/50-coredump.conf.in | 4 +-
6 files changed, 115 insertions(+), 2 deletions(-)
create mode 100644 man/systemd-coredump.xml
diff --git a/Makefile-man.am b/Makefile-man.am
index 4238c21710..a02ef733aa 100644
--- a/Makefile-man.am
+++ b/Makefile-man.am
@@ -681,7 +681,8 @@ endif
if ENABLE_COREDUMP
MANPAGES += \
man/coredump.conf.5 \
- man/coredumpctl.1
+ man/coredumpctl.1 \
+ man/systemd-coredump.8
MANPAGES_ALIAS += \
#
@@ -1595,6 +1596,7 @@ EXTRA_DIST += \
man/systemd-cat.xml \
man/systemd-cgls.xml \
man/systemd-cgtop.xml \
+ man/systemd-coredump.xml \
man/systemd-cryptsetup-generator.xml \
man/systemd-cryptsetup@.service.xml \
man/systemd-debug-generator.xml \
diff --git a/man/coredumpctl.xml b/man/coredumpctl.xml
index 73d1b8435f..327ef6e859 100644
--- a/man/coredumpctl.xml
+++ b/man/coredumpctl.xml
@@ -210,6 +210,8 @@
<refsect1>
<title>See Also</title>
<para>
+ <citerefentry><refentrytitle>systemd-coredump</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
<citerefentry><refentrytitle>gdb</refentrytitle><manvolnum>1</manvolnum></citerefentry>
</para>
diff --git a/man/journalctl.xml b/man/journalctl.xml
index 78fc6f6160..de7741c819 100644
--- a/man/journalctl.xml
+++ b/man/journalctl.xml
@@ -908,6 +908,7 @@
<citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
<citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
</para>
diff --git a/man/systemd-coredump.xml b/man/systemd-coredump.xml
new file mode 100644
index 0000000000..b83b278620
--- /dev/null
+++ b/man/systemd-coredump.xml
@@ -0,0 +1,105 @@
+<?xml version='1.0'?> <!--*-nxml-*-->
+<!DOCTYPE refentry PUBLIC "-//OASIS//DTD DocBook XML V4.2//EN"
+ "http://www.oasis-open.org/docbook/xml/4.2/docbookx.dtd">
+
+<!--
+ This file is part of systemd.
+
+ Copyright 2014 Zbigniew Jędrzejewski-Szmek
+
+ systemd is free software; you can redistribute it and/or modify it
+ under the terms of the GNU Lesser General Public License as published by
+ the Free Software Foundation; either version 2.1 of the License, or
+ (at your option) any later version.
+
+ systemd is distributed in the hope that it will be useful, but
+ WITHOUT ANY WARRANTY; without even the implied warranty of
+ MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ Lesser General Public License for more details.
+
+ You should have received a copy of the GNU Lesser General Public License
+ along with systemd; If not, see <http://www.gnu.org/licenses/>.
+-->
+
+<refentry id="systemd-coredump" conditional='ENABLE_COREDUMP'
+ xmlns:xi="http://www.w3.org/2001/XInclude">
+
+ <refentryinfo>
+ <title>systemd-coredump</title>
+ <productname>systemd</productname>
+
+ <authorgroup>
+ <author>
+ <contrib>Developer</contrib>
+ <firstname>Lennart</firstname>
+ <surname>Poettering</surname>
+ <email>lennart@poettering.net</email>
+ </author>
+ </authorgroup>
+ </refentryinfo>
+
+ <refmeta>
+ <refentrytitle>systemd-coredump</refentrytitle>
+ <manvolnum>8</manvolnum>
+ </refmeta>
+
+ <refnamediv>
+ <refname>systemd-coredump</refname>
+ <refpurpose>Log and store core dumps</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <para><filename>/usr/lib/systemd/systemd-coredump</filename></para>
+ </refsynopsisdiv>
+
+ <refsect1>
+ <title>Description</title>
+
+ <para><command>systemd-coredump</command> can be used as a helper
+ binary by the kernel when a user space program receives a fatal
+ signal and dumps core. For it to be used in this capacity, it must
+ be specified by the
+ <varname>kernel.core_pattern</varname> <citerefentry project='man-pages'><refentrytitle>sysctl</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+ setting. Systemd installs
+ <filename>/usr/lib/sysctl.d/50-coredump.conf</filename> which
+ configures <varname>kernel.core_pattern</varname> to invoke
+ <command>systemd-coredump</command>. This file may be masked or
+ overriden to use a different setting following normal
+ <citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry> rules.</para>
+
+ <para>The behaviour of a specific program upon reception of a
+ signal is governed by a few factors which are described in detail
+ in <citerefentry project='man-pages'><refentrytitle>core</refentrytitle><manvolnum>5</manvolnum></citerefentry>.
+ In particular, the coredump will only be processed when the
+ related resource limits are high enough. For programs started by
+ <command>systemd</command> those may be set using
+ <varname>LimitCore=</varname> (see
+ <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>).
+ </para>
+
+ <para><command>systemd-coredump</command> will log the coredump
+ including a backtrace if possible, and store the core (contents of
+ process' memory contents) in an external file on disk in
+ <filename>/var/lib/systemd/coredump</filename>, or directly in
+ the journal. This behaviour may be modified using
+ <citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>.</para>
+
+ <para>Apart from the
+ <citerefentry><refentrytitle>journalctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+ log viewer,
+ <citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+ may be used to list and extract coredumps.</para>
+ </refsect1>
+
+ <refsect1>
+ <title>See Also</title>
+ <para>
+ <citerefentry><refentrytitle>coredump.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>coredumpctl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+ <citerefentry project='man-pages'><refentrytitle>core</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>sysctl.d</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd-sysctl.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.
+ </para>
+ </refsect1>
+</refentry>
diff --git a/man/systemd-journald.service.xml b/man/systemd-journald.service.xml
index 7ac73ed66d..eb16118afd 100644
--- a/man/systemd-journald.service.xml
+++ b/man/systemd-journald.service.xml
@@ -248,6 +248,7 @@
<citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
<citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
<citerefentry><refentrytitle>sd-journal</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
+ <citerefentry><refentrytitle>systemd-coredump</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
<citerefentry><refentrytitle>setfacl</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
<command>pydoc systemd.journal</command>.
</para>
diff --git a/sysctl.d/50-coredump.conf.in b/sysctl.d/50-coredump.conf.in
index d5795a37d5..d5f600ef45 100644
--- a/sysctl.d/50-coredump.conf.in
+++ b/sysctl.d/50-coredump.conf.in
@@ -5,6 +5,8 @@
# the Free Software Foundation; either version 2.1 of the License, or
# (at your option) any later version.
-# See sysctl.d(5) and core(5) for for details.
+# See sysctl.d(5) for the description of the files in this directory,
+# and systemd-coredump(8) and core(5) for the explanation of the
+# setting below.
kernel.core_pattern=|@rootlibexecdir@/systemd-coredump %p %u %g %s %t %e