[systemd-commits] 5 commits - man/journalctl.xml man/tmpfiles.d.xml src/console src/import src/journal src/libudev src/shared src/tmpfiles

Zbigniew Jędrzejewski-Szmek zbyszek at kemper.freedesktop.org
Sun Jan 18 16:13:48 PST 2015


 man/journalctl.xml            | 1763 +++++++++++++++++++-----------------------
 man/tmpfiles.d.xml            | 1048 +++++++++++-------------
 src/console/consoled.h        |    2 
 src/import/import-raw.h       |    2 
 src/journal/journal-file.h    |    2 
 src/libudev/libudev-monitor.c |    5 
 src/shared/macro.h            |    7 
 src/shared/path-util.c        |    5 
 src/shared/set.h              |    2 
 src/shared/util.h             |    8 
 src/tmpfiles/tmpfiles.c       |    5 
 11 files changed, 1298 insertions(+), 1551 deletions(-)

New commits:
commit a2341f6836da0a217ab0c5f2b82f0c4ea13d429d
Author: Zbigniew Jędrzejewski-Szmek <zbyszek at in.waw.pl>
Date:   Sat Jan 17 23:20:00 2015 -0500

    Move DEFINE_TRIVIAL_CLEANUP_FUNC to macro.h
    
    This remove the need for various header files to include the
    (relatively heavyweight) util.h.

diff --git a/src/console/consoled.h b/src/console/consoled.h
index f8a3df4..b0db610 100644
--- a/src/console/consoled.h
+++ b/src/console/consoled.h
@@ -26,7 +26,6 @@
 #include <libudev.h>
 #include <stdlib.h>
 #include "grdev.h"
-#include "hashmap.h"
 #include "idev.h"
 #include "list.h"
 #include "macro.h"
@@ -36,7 +35,6 @@
 #include "sysview.h"
 #include "term.h"
 #include "unifont.h"
-#include "util.h"
 
 typedef struct Manager Manager;
 typedef struct Session Session;
diff --git a/src/import/import-raw.h b/src/import/import-raw.h
index 5a38cdc..a423ec0 100644
--- a/src/import/import-raw.h
+++ b/src/import/import-raw.h
@@ -20,7 +20,7 @@
 ***/
 
 #include "sd-event.h"
-#include "util.h"
+#include "macro.h"
 
 typedef struct RawImport RawImport;
 
diff --git a/src/journal/journal-file.h b/src/journal/journal-file.h
index 6812385..2526e14 100644
--- a/src/journal/journal-file.h
+++ b/src/journal/journal-file.h
@@ -31,7 +31,7 @@
 
 #include "sparse-endian.h"
 #include "journal-def.h"
-#include "util.h"
+#include "macro.h"
 #include "mmap-cache.h"
 #include "hashmap.h"
 
diff --git a/src/shared/macro.h b/src/shared/macro.h
index daa42c4..96d96f9 100644
--- a/src/shared/macro.h
+++ b/src/shared/macro.h
@@ -446,4 +446,11 @@ do {                                                                    \
 #define GID_INVALID ((gid_t) -1)
 #define MODE_INVALID ((mode_t) -1)
 
+#define DEFINE_TRIVIAL_CLEANUP_FUNC(type, func)                 \
+        static inline void func##p(type *p) {                   \
+                if (*p)                                         \
+                        func(*p);                               \
+        }                                                       \
+        struct __useless_struct_to_allow_trailing_semicolon__
+
 #include "log.h"
diff --git a/src/shared/set.h b/src/shared/set.h
index 4605ecd..2b49e2f 100644
--- a/src/shared/set.h
+++ b/src/shared/set.h
@@ -22,7 +22,7 @@
 ***/
 
 #include "hashmap.h"
-#include "util.h"
+#include "macro.h"
 
 Set *internal_set_new(const struct hash_ops *hash_ops  HASHMAP_DEBUG_PARAMS);
 #define set_new(ops) internal_set_new(ops  HASHMAP_DEBUG_SRC_ARGS)
diff --git a/src/shared/util.h b/src/shared/util.h
index 5818fee..8a3e95a 100644
--- a/src/shared/util.h
+++ b/src/shared/util.h
@@ -664,13 +664,6 @@ static inline void freep(void *p) {
         free(*(void**) p);
 }
 
-#define DEFINE_TRIVIAL_CLEANUP_FUNC(type, func)                 \
-        static inline void func##p(type *p) {                   \
-                if (*p)                                         \
-                        func(*p);                               \
-        }                                                       \
-        struct __useless_struct_to_allow_trailing_semicolon__
-
 static inline void closep(int *fd) {
         safe_close(*fd);
 }

commit 2695c5c44e028d1bc07404baf3357e5a6017fc57
Author: Zbigniew Jędrzejewski-Szmek <zbyszek at in.waw.pl>
Date:   Wed Jan 7 10:28:04 2015 -0500

    Add initialization helper for file_handle_union

diff --git a/src/libudev/libudev-monitor.c b/src/libudev/libudev-monitor.c
index 0d36142..da2b634 100644
--- a/src/libudev/libudev-monitor.c
+++ b/src/libudev/libudev-monitor.c
@@ -109,10 +109,7 @@ static struct udev_monitor *udev_monitor_new(struct udev *udev)
 /* we consider udev running when /dev is on devtmpfs */
 static bool udev_has_devtmpfs(struct udev *udev) {
 
-        union file_handle_union h = {
-                .handle.handle_bytes = MAX_HANDLE_SZ
-        };
-
+        union file_handle_union h = FILE_HANDLE_INIT;
         _cleanup_fclose_ FILE *f = NULL;
         char line[LINE_MAX], *e;
         int mount_id;
diff --git a/src/shared/path-util.c b/src/shared/path-util.c
index ee87c74..00d2d44 100644
--- a/src/shared/path-util.c
+++ b/src/shared/path-util.c
@@ -454,10 +454,7 @@ char* path_join(const char *root, const char *path, const char *rest) {
 
 int path_is_mount_point(const char *t, bool allow_symlink) {
 
-        union file_handle_union h = {
-                .handle.handle_bytes = MAX_HANDLE_SZ
-        };
-
+        union file_handle_union h = FILE_HANDLE_INIT;
         int mount_id = -1, mount_id_parent = -1;
         _cleanup_free_ char *parent = NULL;
         struct stat a, b;
diff --git a/src/shared/util.h b/src/shared/util.h
index 8445371..5818fee 100644
--- a/src/shared/util.h
+++ b/src/shared/util.h
@@ -993,6 +993,7 @@ union file_handle_union {
         struct file_handle handle;
         char padding[sizeof(struct file_handle) + MAX_HANDLE_SZ];
 };
+#define FILE_HANDLE_INIT { .handle.handle_bytes = MAX_HANDLE_SZ }
 
 int update_reboot_param_file(const char *param);
 
diff --git a/src/tmpfiles/tmpfiles.c b/src/tmpfiles/tmpfiles.c
index ac9a072..332ddcea 100644
--- a/src/tmpfiles/tmpfiles.c
+++ b/src/tmpfiles/tmpfiles.c
@@ -230,10 +230,7 @@ static bool unix_socket_alive(const char *fn) {
 
 static int dir_is_mount_point(DIR *d, const char *subdir) {
 
-        union file_handle_union h = {
-                .handle.handle_bytes = MAX_HANDLE_SZ
-        };
-
+        union file_handle_union h = FILE_HANDLE_INIT;
         int mount_id_parent, mount_id;
         int r_p, r;
 

commit 302fbdf29eb0ad4ca1fe8ee18755edad7db11b37
Author: Zbigniew Jędrzejewski-Szmek <zbyszek at in.waw.pl>
Date:   Tue Jan 6 01:58:31 2015 -0500

    man: reindent tmpfiles.d(5)
    
    Reindent to 2 spaces, use more markup.

diff --git a/man/tmpfiles.d.xml b/man/tmpfiles.d.xml
index 398b3f7..9fd5913 100644
--- a/man/tmpfiles.d.xml
+++ b/man/tmpfiles.d.xml
@@ -21,575 +21,483 @@
 -->
 <refentry id="tmpfiles.d">
 
-        <refentryinfo>
-                <title>tmpfiles.d</title>
-                <productname>systemd</productname>
-
-                <authorgroup>
-                        <author>
-                                <contrib>Documentation</contrib>
-                                <firstname>Brandon</firstname>
-                                <surname>Philips</surname>
-                                <email>brandon at ifup.org</email>
-                        </author>
-                </authorgroup>
-        </refentryinfo>
-
-        <refmeta>
-                <refentrytitle>tmpfiles.d</refentrytitle>
-                <manvolnum>5</manvolnum>
-        </refmeta>
-
-        <refnamediv>
-                <refname>tmpfiles.d</refname>
-                <refpurpose>Configuration for creation, deletion and
-                cleaning of volatile and temporary files</refpurpose>
-        </refnamediv>
-
-        <refsynopsisdiv>
-                <para><filename>/etc/tmpfiles.d/*.conf</filename></para>
-                <para><filename>/run/tmpfiles.d/*.conf</filename></para>
-                <para><filename>/usr/lib/tmpfiles.d/*.conf</filename></para>
-        </refsynopsisdiv>
-
-        <refsect1>
-                <title>Description</title>
-
-                <para><command>systemd-tmpfiles</command> uses the
-                configuration files from the above directories to describe the
-                creation, cleaning and removal of volatile and
-                temporary files and directories which usually reside
-                in directories such as <filename>/run</filename>
-                or <filename>/tmp</filename>.</para>
-
-                <para>Volatile and temporary files and directories are
-                those located in <filename>/run</filename> (and its
-                alias <filename>/var/run</filename>),
-                <filename>/tmp</filename>,
-                <filename>/var/tmp</filename>, the API file systems
-                such as <filename>/sys</filename> or
-                <filename>/proc</filename>, as well as some other
-                directories below <filename>/var</filename>.</para>
-
-                <para>System daemons frequently require private
-                runtime directories below <filename>/run</filename> to
-                place communication sockets and similar in. For these,
-                consider declaring them in their unit files using
-                <varname>RuntimeDirectory=</varname>
-                (see <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry> for details),
-                if this is feasible.</para>
-        </refsect1>
-
-        <refsect1>
-                <title>Configuration Format</title>
-
-                <para>Each configuration file shall be named in the
-                style of
-                <filename><replaceable>package</replaceable>.conf</filename>
-                or
-                <filename><replaceable>package</replaceable>-<replaceable>part</replaceable>.conf</filename>.
-                The second variant should be used when it is desirable
-                to make it easy to override just this part of
-                configuration.</para>
-
-                <para>Files in <filename>/etc/tmpfiles.d</filename>
-                override files with the same name in
-                <filename>/usr/lib/tmpfiles.d</filename> and
-                <filename>/run/tmpfiles.d</filename>. Files in
-                <filename>/run/tmpfiles.d</filename> override files
-                with the same name in
-                <filename>/usr/lib/tmpfiles.d</filename>. Packages
-                should install their configuration files in
-                <filename>/usr/lib/tmpfiles.d</filename>. Files in
-                <filename>/etc/tmpfiles.d</filename> are reserved for
-                the local administrator, who may use this logic to
-                override the configuration files installed by vendor
-                packages. All configuration files are sorted by their
-                filename in lexicographic order, regardless of which
-                of the directories they reside in. If multiple files
-                specify the same path, the entry in the file with the
-                lexicographically earliest name will be applied.
-                All other conflicting entries will be logged as
-                errors. When two lines are prefix and suffix of each
-                other, then the prefix is always processed first, the
-                suffix later. Otherwise, the files/directories are
-                processed in the order they are listed.</para>
-
-                <para>If the administrator wants to disable a
-                configuration file supplied by the vendor, the
-                recommended way is to place a symlink to
-                <filename>/dev/null</filename> in
-                <filename>/etc/tmpfiles.d/</filename> bearing the
-                same filename.</para>
-
-                <para>The configuration format is one line per path
-                containing type, path, mode, ownership, age, and argument
-                fields:</para>
-
-                <programlisting>#Type Path        Mode UID  GID  Age Argument
-d    /run/user   0755 root root 10d -
-L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
-
-                <refsect2>
-                        <title>Type</title>
-
-                        <para>The type consists of a single letter and
-                        optionally an exclamation mark.</para>
-
-                        <para>The following line types are understood:</para>
-
-                        <variablelist>
-                                <varlistentry>
-                                        <term><varname>f</varname></term>
-                                        <listitem><para>Create a file if it does not exist yet. If the argument parameter is given, it will be written to the file.</para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>F</varname></term>
-                                        <listitem><para>Create or truncate a file. If the argument parameter is given, it will be written to the file.</para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>w</varname></term>
-                                        <listitem><para>Write the argument parameter to a file, if the file exists.
-                                            Lines of this type accept shell-style globs in place of normal path
-                                            names. The argument parameter will be written without a trailing
-                                            newline. C-style backslash escapes are interpreted.</para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>d</varname></term>
-                                        <listitem><para>Create a directory if it does not exist yet.</para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>D</varname></term>
-                                        <listitem><para>Create or empty a directory.</para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>v</varname></term>
-                                        <listitem><para>Create a
-                                        subvolume if the path does not
-                                        exist yet and the file system
-                                        supports this (btrfs). Otherwise
-                                        create a normal directory, in
-                                        the same way as
-                                        <varname>d</varname>.</para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>p</varname></term>
-                                        <term><varname>p+</varname></term>
-                                        <listitem><para>Create a named
-                                        pipe (FIFO) if it does not
-                                        exist yet. If suffixed with
-                                        <varname>+</varname> and a
-                                        file already exists where the
-                                        pipe is to be created, it will
-                                        be removed and be replaced by
-                                        the pipe.</para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>L</varname></term>
-                                        <term><varname>L+</varname></term>
-                                        <listitem><para>Create a
-                                        symlink if it does not exist
-                                        yet. If suffixed with
-                                        <varname>+</varname> and a
-                                        file already exists where the
-                                        symlink is to be created, it
-                                        will be removed and be
-                                        replaced by the
-                                        symlink. If the argument is omitted,
-                                        symlinks to files with the same name
-                                        residing in the directory
-                                        <filename>/usr/share/factory/</filename>
-                                        are created.</para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>c</varname></term>
-                                        <term><varname>c+</varname></term>
-                                        <listitem><para>Create a
-                                        character device node if it
-                                        does not exist yet. If
-                                        suffixed with
-                                        <varname>+</varname> and a
-                                        file already exists where the
-                                        device node is to be created,
-                                        it will be removed and be
-                                        replaced by the device
-                                        node. It is recommended to suffix this
-                                        entry with an exclamation mark to only
-                                        create static device nodes at boot,
-                                        as udev will not manage static device
-                                        nodes that are created at runtime.
-                                        </para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>b</varname></term>
-                                        <term><varname>b+</varname></term>
-                                        <listitem><para>Create a block
-                                        device node if it does not
-                                        exist yet. If suffixed with
-                                        <varname>+</varname> and a
-                                        file already exists where the
-                                        device node is to be created,
-                                        it will be removed and be
-                                        replaced by the device
-                                        node. It is recommended to suffix this
-                                        entry with an exclamation mark to only
-                                        create static device nodes at boot,
-                                        as udev will not manage static device
-                                        nodes that are created at runtime.
-                                        </para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>C</varname></term>
-                                        <listitem><para>Recursively
-                                        copy a file or directory, if
-                                        the destination files or
-                                        directories do not exist
-                                        yet. Note that this command
-                                        will not descend into
-                                        subdirectories if the
-                                        destination directory already
-                                        exists. Instead, the entire
-                                        copy operation is
-                                        skipped. If the argument is omitted,
-                                        files from the source directory
-                                        <filename>/usr/share/factory/</filename>
-                                        with the same name are copied.</para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>x</varname></term>
-                                        <listitem><para>Ignore a path
-                                        during cleaning. Use this type
-                                        to exclude paths from clean-up
-                                        as controlled with the Age
-                                        parameter. Note that lines of
-                                        this type do not influence the
-                                        effect of <varname>r</varname>
-                                        or <varname>R</varname> lines.
-                                        Lines of this type accept
-                                        shell-style globs in place of
-                                        normal path names.
-                                        </para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>X</varname></term>
-                                        <listitem><para>Ignore a path
-                                        during cleaning. Use this type
-                                        to exclude paths from clean-up
-                                        as controlled with the Age
-                                        parameter. Unlike
-                                        <varname>x</varname>, this
-                                        parameter will not exclude the
-                                        content if path is a
-                                        directory, but only directory
-                                        itself. Note that lines of
-                                        this type do not influence the
-                                        effect of <varname>r</varname>
-                                        or <varname>R</varname> lines.
-                                        Lines of this type accept
-                                        shell-style globs in place of
-                                        normal path names.
-                                        </para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>r</varname></term>
-                                        <listitem><para>Remove a file
-                                        or directory if it exists.
-                                        This may not be used to remove
-                                        non-empty directories, use
-                                        <varname>R</varname> for that.
-                                        Lines of this type accept
-                                        shell-style globs in place of
-                                        normal path
-                                        names.</para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>R</varname></term>
-                                        <listitem><para>Recursively
-                                        remove a path and all its
-                                        subdirectories (if it is a
-                                        directory). Lines of this type
-                                        accept shell-style globs in
-                                        place of normal path
-                                        names.</para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>z</varname></term>
-                                        <listitem><para>Adjust the
-                                        access mode, group and user,
-                                        and restore the SELinux security
-                                        context of a file or directory,
-                                        if it exists. Lines of this
-                                        type accept shell-style globs
-                                        in place of normal path names.
-                                        </para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>Z</varname></term>
-                                        <listitem><para>Recursively
-                                        set the access mode, group and
-                                        user, and restore the SELinux
-                                        security context of a file or
-                                        directory if it exists, as
-                                        well as of its subdirectories
-                                        and the files contained
-                                        therein (if applicable). Lines
-                                        of this type accept
-                                        shell-style globs in place of
-                                        normal path
-                                        names.</para></listitem>
-                                </varlistentry>
-
-                                <varlistentry>
-                                        <term><varname>t</varname></term>
-                                        <listitem><para>Set extended
-                                        attributes on item. It may be
-                                        used in conjunction with other
-                                        types (only <varname>d</varname>,
-                                        <varname>D</varname>, <varname>f</varname>,
-                                        <varname>F</varname>, <varname>L</varname>,
-                                        <varname>p</varname>, <varname>c</varname>,
-                                        <varname>b</varname>, makes sense).
-                                        If used as a standalone line, then
-                                        <command>systemd-tmpfiles</command>
-                                        will try to set extended
-                                        attributes on specified path.
-                                        This can be especially used to set
-                                        SMACK labels.
-                                        </para></listitem>
-                                </varlistentry>
-                        </variablelist>
-
-                        <para>If the exclamation mark is used, this
-                        line is only safe of execute during boot, and
-                        can break a running system. Lines without the
-                        exclamation mark are presumed to be safe to
-                        execute at any time, e.g. on package upgrades.
-                        <command>systemd-tmpfiles</command> will
-                        execute line with an exclamation mark only if
-                        option <option>--boot</option> is given.
-                        </para>
-
-                        <para>For example:
-                        <programlisting># Make sure these are created by default so that nobody else can
-d /tmp/.X11-unix 1777 root root 10d
-
-# Unlink the X11 lock files
-r! /tmp/.X[0-9]*-lock</programlisting>
-                        The second line in contrast to the first one
-                        would break a running system, and will only be
-                        executed with <option>--boot</option>.</para>
-                </refsect2>
-
-                <refsect2>
-                        <title>Path</title>
-
-                        <para>The file system path specification supports simple specifier
-                        expansion. The following expansions are
-                        understood:</para>
-
-                        <table>
-                                <title>Specifiers available</title>
-                                <tgroup cols='3' align='left' colsep='1' rowsep='1'>
-                                        <colspec colname="spec" />
-                                        <colspec colname="mean" />
-                                        <colspec colname="detail" />
-                                        <thead>
-                                                <row>
-                                                        <entry>Specifier</entry>
-                                                        <entry>Meaning</entry>
-                                                        <entry>Details</entry>
-                                                </row>
-                                        </thead>
-                                        <tbody>
-                                                <row>
-                                                        <entry><literal>%m</literal></entry>
-                                                        <entry>Machine ID</entry>
-                                                        <entry>The machine ID of the running system, formatted as string. See <citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry> for more information.</entry>
-                                                </row>
-                                                <row>
-                                                        <entry><literal>%b</literal></entry>
-                                                        <entry>Boot ID</entry>
-                                                        <entry>The boot ID of the running system, formatted as string. See <citerefentry><refentrytitle>random</refentrytitle><manvolnum>4</manvolnum></citerefentry> for more information.</entry>
-                                                </row>
-                                                <row>
-                                                        <entry><literal>%H</literal></entry>
-                                                        <entry>Host name</entry>
-                                                        <entry>The hostname of the running system.</entry>
-                                                </row>
-                                                <row>
-                                                        <entry><literal>%v</literal></entry>
-                                                        <entry>Kernel release</entry>
-                                                        <entry>Identical to <command>uname -r</command> output.</entry>
-                                                </row>
-                                                <row>
-                                                        <entry><literal>%%</literal></entry>
-                                                        <entry>Escaped %</entry>
-                                                        <entry>Single percent sign.</entry>
-                                                </row>
-                                        </tbody>
-                                </tgroup>
-                        </table>
-                </refsect2>
-
-                <refsect2>
-                        <title>Mode</title>
-
-                        <para>The file access mode to use when
-                        creating this file or directory. If omitted or
-                        when set to -, the default is used: 0755 for
-                        directories, 0644 for all other file objects.
-                        For <varname>z</varname>, <varname>Z</varname>
-                        lines, if omitted or when set to
-                        <literal>-</literal>, the file access mode
-                        will not be modified. This parameter is
-                        ignored for <varname>x</varname>,
-                        <varname>r</varname>, <varname>R</varname>,
-                        <varname>L</varname>, <varname>t</varname> lines.</para>
-
-                        <para>Optionally, if prefixed with
-                        <literal>~</literal>, the access mode is masked
-                        based on the already set access bits for
-                        existing file or directories: if the existing
-                        file has all executable bits unset, all
-                        executable bits are removed from the new
-                        access mode, too. Similarly, if all read bits
-                        are removed from the old access mode, they will
-                        be removed from the new access mode too, and
-                        if all write bits are removed, they will be
-                        removed from the new access mode too. In
-                        addition, the sticky/SUID/SGID bit is removed unless
-                        applied to a directory. This
-                        functionality is particularly useful in
-                        conjunction with <varname>Z</varname>.</para>
-                </refsect2>
-
-                <refsect2>
-                        <title>UID, GID</title>
-
-                        <para>The user and group to use for this file
-                        or directory. This may either be a numeric
-                        user/group ID or a user or group name. If
-                        omitted or when set to <literal>-</literal>,
-                        the default 0 (root) is used. For
-                        <varname>z</varname>, <varname>Z</varname>
-                        lines, when omitted or when set to -, the file
-                        ownership will not be modified. These
-                        parameters are ignored for
-                        <varname>x</varname>, <varname>r</varname>,
-                        <varname>R</varname>, <varname>L</varname>,
-                        <varname>t</varname> lines.</para>
-                </refsect2>
-
-                <refsect2>
-                        <title>Age</title>
-                        <para>The date field, when set, is used to
-                        decide what files to delete when cleaning. If
-                        a file or directory is older than the current
-                        time minus the age field, it is deleted. The
-                        field format is a series of integers each
-                        followed by one of the following
-                        postfixes for the respective time units:</para>
-
-                        <variablelist>
-                                <varlistentry>
-                                <term><varname>s</varname></term>
-                                <term><varname>min</varname></term>
-                                <term><varname>h</varname></term>
-                                <term><varname>d</varname></term>
-                                <term><varname>w</varname></term>
-                                <term><varname>ms</varname></term>
-                                <term><varname>m</varname></term>
-                                <term><varname>us</varname></term></varlistentry>
-                        </variablelist>
-
-                        <para>If multiple integers and units are specified, the time
-                        values are summed up. If an integer is given without a unit,
-                        s is assumed.
-                        </para>
-
-                        <para>When the age is set to zero, the files are cleaned
-                        unconditionally.</para>
-
-                        <para>The age field only applies to lines
-                        starting with <varname>d</varname>,
-                        <varname>D</varname>, and
-                        <varname>x</varname>. If omitted or set to
-                        <literal>-</literal>, no automatic clean-up is
-                        done.</para>
-
-                        <para>If the age field starts with a tilde
-                        character <literal>~</literal>, the clean-up
-                        is only applied to files and directories one
-                        level inside the directory specified, but not
-                        the files and directories immediately inside
-                        it.</para>
-                </refsect2>
-
-                <refsect2>
-                        <title>Argument</title>
-
-                        <para>For <varname>L</varname> lines
-                        determines the destination path of the
-                        symlink. For <varname>c</varname>,
-                        <varname>b</varname> determines the
-                        major/minor of the device node, with major and
-                        minor formatted as integers, separated by
-                        <literal>:</literal>, e.g.
-                        <literal>1:3</literal>. For
-                        <varname>f</varname>, <varname>F</varname>,
-                        and <varname>w</varname> may be used to
-                        specify a short string that is written to the
-                        file, suffixed by a newline. For
-                        <varname>C</varname>, specifies the source file
-                        or directory. For <varname>t</varname> determines
-                        extended attributes to be set. Ignored for all other lines.</para>
-                </refsect2>
-
-        </refsect1>
-
-        <refsect1>
-                <title>Example</title>
-                <example>
-                        <title>/etc/tmpfiles.d/screen.conf example</title>
-                        <para><command>screen</command> needs two directories created at boot with specific modes and ownership.</para>
-
-                        <programlisting>d /run/screens  1777 root root 10d
-d /run/uscreens 0755 root root 10d12h
-t /run/screen - - - - user.name="John Smith" security.SMACK64=screen</programlisting>
-                </example>
-                <example>
-                        <title>/etc/tmpfiles.d/abrt.conf example</title>
-                        <para><command>abrt</command> needs a directory created at boot with specific mode and ownership and its content should be preserved.</para>
-
-                        <programlisting>d /var/tmp/abrt 0755 abrt abrt
-x /var/tmp/abrt/*</programlisting>
-                </example>
-        </refsect1>
-
-        <refsect1>
-                <title>See Also</title>
-                <para>
-                        <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
-                        <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>
-                </para>
-        </refsect1>
+  <refentryinfo>
+    <title>tmpfiles.d</title>
+    <productname>systemd</productname>
+
+    <authorgroup>
+      <author>
+        <contrib>Documentation</contrib>
+        <firstname>Brandon</firstname>
+        <surname>Philips</surname>
+        <email>brandon at ifup.org</email>
+      </author>
+    </authorgroup>
+  </refentryinfo>
+
+  <refmeta>
+    <refentrytitle>tmpfiles.d</refentrytitle>
+    <manvolnum>5</manvolnum>
+  </refmeta>
+
+  <refnamediv>
+    <refname>tmpfiles.d</refname>
+    <refpurpose>Configuration for creation, deletion and cleaning of
+    volatile and temporary files</refpurpose>
+  </refnamediv>
+
+  <refsynopsisdiv>
+    <para><filename>/etc/tmpfiles.d/*.conf</filename></para>
+    <para><filename>/run/tmpfiles.d/*.conf</filename></para>
+    <para><filename>/usr/lib/tmpfiles.d/*.conf</filename></para>
+  </refsynopsisdiv>
+
+  <refsect1>
+    <title>Description</title>
+
+    <para><command>systemd-tmpfiles</command> uses the configuration
+    files from the above directories to describe the creation,
+    cleaning and removal of volatile and temporary files and
+    directories which usually reside in directories such as
+    <filename>/run</filename> or <filename>/tmp</filename>.</para>
+
+    <para>Volatile and temporary files and directories are those
+    located in <filename>/run</filename> (and its alias
+    <filename>/var/run</filename>), <filename>/tmp</filename>,
+    <filename>/var/tmp</filename>, the API file systems such as
+    <filename>/sys</filename> or <filename>/proc</filename>, as well
+    as some other directories below <filename>/var</filename>.</para>
+
+    <para>System daemons frequently require private runtime
+    directories below <filename>/run</filename> to place communication
+    sockets and similar in. For these, consider declaring them in
+    their unit files using <varname>RuntimeDirectory=</varname> (see
+    <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+    for details), if this is feasible.</para>
+  </refsect1>
+
+  <refsect1>
+    <title>Configuration Format</title>
+
+    <para>Each configuration file shall be named in the style of
+    <filename><replaceable>package</replaceable>.conf</filename> or
+    <filename><replaceable>package</replaceable>-<replaceable>part</replaceable>.conf</filename>.
+    The second variant should be used when it is desirable to make it
+    easy to override just this part of configuration.</para>
+
+    <para>Files in <filename>/etc/tmpfiles.d</filename> override files
+    with the same name in <filename>/usr/lib/tmpfiles.d</filename> and
+    <filename>/run/tmpfiles.d</filename>. Files in
+    <filename>/run/tmpfiles.d</filename> override files with the same
+    name in <filename>/usr/lib/tmpfiles.d</filename>. Packages should
+    install their configuration files in
+    <filename>/usr/lib/tmpfiles.d</filename>. Files in
+    <filename>/etc/tmpfiles.d</filename> are reserved for the local
+    administrator, who may use this logic to override the
+    configuration files installed by vendor packages. All
+    configuration files are sorted by their filename in lexicographic
+    order, regardless of which of the directories they reside in. If
+    multiple files specify the same path, the entry in the file with
+    the lexicographically earliest name will be applied.  All other
+    conflicting entries will be logged as errors. When two lines are
+    prefix and suffix of each other, then the prefix is always
+    processed first, the suffix later. Otherwise, the
+    files/directories are processed in the order they are
+    listed.</para>
+
+    <para>If the administrator wants to disable a configuration file
+    supplied by the vendor, the recommended way is to place a symlink
+    to <filename>/dev/null</filename> in
+    <filename>/etc/tmpfiles.d/</filename> bearing the same filename.
+    </para>
+
+    <para>The configuration format is one line per path containing
+    type, path, mode, ownership, age, and argument fields:</para>
+
+    <programlisting>#Type Path        Mode UID  GID  Age Argument
+    d    /run/user   0755 root root 10d -
+    L    /tmp/foobar -    -    -    -   /dev/null</programlisting>
+
+    <refsect2>
+      <title>Type</title>
+
+      <para>The type consists of a single letter and optionally an
+      exclamation mark.</para>
+
+      <para>The following line types are understood:</para>
+
+      <variablelist>
+        <varlistentry>
+          <term><varname>f</varname></term>
+          <listitem><para>Create a file if it does not exist yet. If
+          the argument parameter is given, it will be written to the
+          file.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>F</varname></term>
+          <listitem><para>Create or truncate a file. If the argument
+          parameter is given, it will be written to the file.</para>
+          </listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>w</varname></term>
+          <listitem><para>Write the argument parameter to a file, if
+          the file exists.  Lines of this type accept shell-style
+          globs in place of normal path names. The argument parameter
+          will be written without a trailing newline. C-style
+          backslash escapes are interpreted.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>d</varname></term>
+          <listitem><para>Create a directory if it does not exist yet.
+          </para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>D</varname></term>
+          <listitem><para>Create or empty a directory.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>v</varname></term>
+          <listitem><para>Create a subvolume if the path does not
+          exist yet and the file system supports this
+          (btrfs). Otherwise create a normal directory, in the same
+          way as <varname>d</varname>.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>p</varname></term>
+          <term><varname>p+</varname></term>
+          <listitem><para>Create a named pipe (FIFO) if it does not
+          exist yet. If suffixed with <varname>+</varname> and a file
+          already exists where the pipe is to be created, it will be
+          removed and be replaced by the pipe.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>L</varname></term>
+          <term><varname>L+</varname></term>
+          <listitem><para>Create a symlink if it does not exist
+          yet. If suffixed with <varname>+</varname> and a file
+          already exists where the symlink is to be created, it will
+          be removed and be replaced by the symlink. If the argument
+          is omitted, symlinks to files with the same name residing in
+          the directory <filename>/usr/share/factory/</filename> are
+          created.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>c</varname></term>
+          <term><varname>c+</varname></term>
+          <listitem><para>Create a character device node if it does
+          not exist yet. If suffixed with <varname>+</varname> and a
+          file already exists where the device node is to be created,
+          it will be removed and be replaced by the device node. It is
+          recommended to suffix this entry with an exclamation mark to
+          only create static device nodes at boot, as udev will not
+          manage static device nodes that are created at runtime.
+          </para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>b</varname></term>
+          <term><varname>b+</varname></term>
+          <listitem><para>Create a block device node if it does not
+          exist yet. If suffixed with <varname>+</varname> and a file
+          already exists where the device node is to be created, it
+          will be removed and be replaced by the device node. It is
+          recommended to suffix this entry with an exclamation mark to
+          only create static device nodes at boot, as udev will not
+          manage static device nodes that are created at runtime.
+          </para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>C</varname></term>
+          <listitem><para>Recursively copy a file or directory, if the
+          destination files or directories do not exist yet. Note that
+          this command will not descend into subdirectories if the
+          destination directory already exists. Instead, the entire
+          copy operation is skipped. If the argument is omitted, files
+          from the source directory
+          <filename>/usr/share/factory/</filename> with the same name
+          are copied.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>x</varname></term>
+          <listitem><para>Ignore a path during cleaning. Use this type
+          to exclude paths from clean-up as controlled with the Age
+          parameter. Note that lines of this type do not influence the
+          effect of <varname>r</varname> or <varname>R</varname>
+          lines.  Lines of this type accept shell-style globs in place
+          of normal path names.  </para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>X</varname></term>
+          <listitem><para>Ignore a path during cleaning. Use this type
+          to exclude paths from clean-up as controlled with the Age
+          parameter. Unlike <varname>x</varname>, this parameter will
+          not exclude the content if path is a directory, but only
+          directory itself. Note that lines of this type do not
+          influence the effect of <varname>r</varname> or
+          <varname>R</varname> lines.  Lines of this type accept
+          shell-style globs in place of normal path names.
+          </para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>r</varname></term>
+          <listitem><para>Remove a file or directory if it exists.
+          This may not be used to remove non-empty directories, use
+          <varname>R</varname> for that.  Lines of this type accept
+          shell-style globs in place of normal path
+          names.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>R</varname></term>
+          <listitem><para>Recursively remove a path and all its
+          subdirectories (if it is a directory). Lines of this type
+          accept shell-style globs in place of normal path
+          names.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>z</varname></term>
+          <listitem><para>Adjust the access mode, group and user, and
+          restore the SELinux security context of a file or directory,
+          if it exists. Lines of this type accept shell-style globs in
+          place of normal path names.  </para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>Z</varname></term>
+          <listitem><para>Recursively set the access mode, group and
+          user, and restore the SELinux security context of a file or
+          directory if it exists, as well as of its subdirectories and
+          the files contained therein (if applicable). Lines of this
+          type accept shell-style globs in place of normal path names.
+          </para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><varname>t</varname></term>
+          <listitem><para>Set extended attributes on item. It may be
+          used in conjunction with other types (only
+          <varname>d</varname>, <varname>D</varname>,
+          <varname>f</varname>, <varname>F</varname>,
+          <varname>L</varname>, <varname>p</varname>,
+          <varname>c</varname>, <varname>b</varname>, makes sense).
+          If used as a standalone line, then
+          <command>systemd-tmpfiles</command> will try to set extended
+          attributes on specified path.  This can be especially used
+          to set SMACK labels.  </para></listitem>
+        </varlistentry>
+      </variablelist>
+
+      <para>If the exclamation mark is used, this line is only safe of
+      execute during boot, and can break a running system. Lines
+      without the exclamation mark are presumed to be safe to execute
+      at any time, e.g. on package upgrades.
+      <command>systemd-tmpfiles</command> will execute line with an
+      exclamation mark only if option <option>--boot</option> is
+      given.</para>
+
+      <para>For example:
+      <programlisting># Make sure these are created by default so that nobody else can
+      d /tmp/.X11-unix 1777 root root 10d
+
+      # Unlink the X11 lock files
+      r! /tmp/.X[0-9]*-lock</programlisting>
+      The second line in contrast to the first one would break a
+      running system, and will only be executed with
+      <option>--boot</option>.</para>
+    </refsect2>
+
+    <refsect2>
+      <title>Path</title>
+
+      <para>The file system path specification supports simple
+      specifier expansion. The following expansions are
+      understood:</para>
+
+      <table>
+        <title>Specifiers available</title>
+        <tgroup cols='3' align='left' colsep='1' rowsep='1'>
+          <colspec colname="spec" />
+          <colspec colname="mean" />
+          <colspec colname="detail" />
+          <thead>
+            <row>
+              <entry>Specifier</entry>
+              <entry>Meaning</entry>
+              <entry>Details</entry>
+            </row>
+          </thead>
+          <tbody>
+            <row>
+              <entry><literal>%m</literal></entry>
+              <entry>Machine ID</entry>
+              <entry>The machine ID of the running system, formatted as string. See <citerefentry><refentrytitle>machine-id</refentrytitle><manvolnum>5</manvolnum></citerefentry> for more information.</entry>
+            </row>
+            <row>
+              <entry><literal>%b</literal></entry>
+              <entry>Boot ID</entry>
+              <entry>The boot ID of the running system, formatted as string. See <citerefentry><refentrytitle>random</refentrytitle><manvolnum>4</manvolnum></citerefentry> for more information.</entry>
+            </row>
+            <row>
+              <entry><literal>%H</literal></entry>
+              <entry>Host name</entry>
+              <entry>The hostname of the running system.</entry>
+            </row>
+            <row>
+              <entry><literal>%v</literal></entry>
+              <entry>Kernel release</entry>
+              <entry>Identical to <command>uname -r</command> output.</entry>
+            </row>
+            <row>
+              <entry><literal>%%</literal></entry>
+              <entry>Escaped %</entry>
+              <entry>Single percent sign.</entry>
+            </row>
+          </tbody>
+        </tgroup>
+      </table>
+    </refsect2>
+
+    <refsect2>
+      <title>Mode</title>
+
+      <para>The file access mode to use when creating this file or
+      directory. If omitted or when set to <literal>-</literal>, the
+      default is used: 0755 for directories, 0644 for all other file
+      objects.  For <varname>z</varname>, <varname>Z</varname> lines,
+      if omitted or when set to <literal>-</literal>, the file access
+      mode will not be modified. This parameter is ignored for
+      <varname>x</varname>, <varname>r</varname>,
+      <varname>R</varname>, <varname>L</varname>, <varname>t</varname>
+      lines.</para>
+
+      <para>Optionally, if prefixed with <literal>~</literal>, the
+      access mode is masked based on the already set access bits for
+      existing file or directories: if the existing file has all
+      executable bits unset, all executable bits are removed from the
+      new access mode, too. Similarly, if all read bits are removed
+      from the old access mode, they will be removed from the new
+      access mode too, and if all write bits are removed, they will be
+      removed from the new access mode too. In addition, the
+      sticky/SUID/SGID bit is removed unless applied to a
+      directory. This functionality is particularly useful in
+      conjunction with <varname>Z</varname>.</para>
+    </refsect2>
+
+    <refsect2>
+      <title>UID, GID</title>
+
+      <para>The user and group to use for this file or directory. This
+      may either be a numeric user/group ID or a user or group
+      name. If omitted or when set to <literal>-</literal>, the
+      default 0 (root) is used. For <varname>z</varname>,
+      <varname>Z</varname> lines, when omitted or when set to -, the
+      file ownership will not be modified. These parameters are
+      ignored for <varname>x</varname>, <varname>r</varname>,
+      <varname>R</varname>, <varname>L</varname>, <varname>t</varname>
+      lines.</para>
+    </refsect2>
+
+    <refsect2>
+      <title>Age</title>
+      <para>The date field, when set, is used to decide what files to
+      delete when cleaning. If a file or directory is older than the
+      current time minus the age field, it is deleted. The field
+      format is a series of integers each followed by one of the
+      following postfixes for the respective time units:</para>
+
+      <variablelist>
+        <varlistentry>
+          <term><varname>s</varname></term>
+          <term><varname>min</varname></term>
+          <term><varname>h</varname></term>
+          <term><varname>d</varname></term>
+          <term><varname>w</varname></term>
+          <term><varname>ms</varname></term>
+          <term><varname>m</varname></term>
+        <term><varname>us</varname></term></varlistentry>
+      </variablelist>
+
+      <para>If multiple integers and units are specified, the time
+      values are summed up. If an integer is given without a unit,
+      <varname>s</varname> is assumed.
+      </para>
+
+      <para>When the age is set to zero, the files are cleaned
+      unconditionally.</para>
+
+      <para>The age field only applies to lines
+      starting with <varname>d</varname>,
+      <varname>D</varname>, and
+      <varname>x</varname>. If omitted or set to
+      <literal>-</literal>, no automatic clean-up is
+      done.</para>
+
+      <para>If the age field starts with a tilde character
+      <literal>~</literal>, the clean-up is only applied to files and
+      directories one level inside the directory specified, but not
+      the files and directories immediately inside it.</para>
+    </refsect2>
+
+    <refsect2>
+      <title>Argument</title>
+
+      <para>For <varname>L</varname> lines determines the destination
+      path of the symlink. For <varname>c</varname>,
+      <varname>b</varname> determines the major/minor of the device
+      node, with major and minor formatted as integers, separated by
+      <literal>:</literal>, e.g.  <literal>1:3</literal>. For
+      <varname>f</varname>, <varname>F</varname>, and
+      <varname>w</varname> may be used to specify a short string that
+      is written to the file, suffixed by a newline. For
+      <varname>C</varname>, specifies the source file or
+      directory. For <varname>t</varname> determines extended
+      attributes to be set. Ignored for all other lines.</para>
+    </refsect2>
+
+  </refsect1>
+
+  <refsect1>
+    <title>Example</title>
+    <example>
+      <title>/etc/tmpfiles.d/screen.conf example</title>
+      <para><command>screen</command> needs two directories created at
+      boot with specific modes and ownership.</para>
+
+      <programlisting>d /run/screens  1777 root root 10d
+      d /run/uscreens 0755 root root 10d12h
+      t /run/screen - - - - user.name="John Smith" security.SMACK64=screen</programlisting>
+    </example>
+    <example>
+      <title>/etc/tmpfiles.d/abrt.conf example</title>
+      <para><command>abrt</command> needs a directory created at boot with specific mode and ownership and its content should be preserved.</para>
+
+      <programlisting>d /var/tmp/abrt 0755 abrt abrt
+      x /var/tmp/abrt/*</programlisting>
+    </example>
+  </refsect1>
+
+  <refsect1>
+    <title>See Also</title>
+    <para>
+      <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+      <citerefentry><refentrytitle>systemd-tmpfiles</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+      <citerefentry><refentrytitle>systemd-delta</refentrytitle><manvolnum>1</manvolnum></citerefentry>,
+      <citerefentry><refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+    </para>
+  </refsect1>
 
 </refentry>

commit 42d8fafc4bb2f890688e25fe886f88b54ce2c1e3
Author: Zbigniew Jędrzejewski-Szmek <zbyszek at in.waw.pl>
Date:   Tue Jan 6 01:15:59 2015 -0500

    man: mention "wheel" and "adm" in journalctl(1)
    
    https://bugs.freedesktop.org/show_bug.cgi?id=70866

diff --git a/man/journalctl.xml b/man/journalctl.xml
index 7b9f9b8..770cf9b 100644
--- a/man/journalctl.xml
+++ b/man/journalctl.xml
@@ -110,9 +110,14 @@
 
       <para>All users are granted access to their private per-user
       journals. However, by default, only root and users who are
-      members of the <literal>systemd-journal</literal> group get
-      access to the system journal and the journals of other
-      users.</para>
+      members of a few special groups are granted access to the system
+      journal and the journals of other users. Members of the the
+      <literal>systemd-journal</literal>, <literal>adm</literal>, and
+      <literal>wheel</literal> groups can read all journal files. Note
+      that the two latter groups traditionally have additional
+      privileges specified by the distribution. Members of the
+      <literal>wheel</literal> group can often perform administrative
+      tasks.</para>
 
       <para>The output is paged through <command>less</command> by
       default, and long lines are "truncated" to screen width. The

commit 49fba678a0e2c30df0d2ccefab731beb3955a473
Author: Zbigniew Jędrzejewski-Szmek <zbyszek at in.waw.pl>
Date:   Tue Jan 6 01:09:55 2015 -0500

    man: reindent journalctl(1)
    
    Reindent with two spaces, use non-breaking spaces, add <literal> tags.

diff --git a/man/journalctl.xml b/man/journalctl.xml
index 0703bf9..7b9f9b8 100644
--- a/man/journalctl.xml
+++ b/man/journalctl.xml
@@ -21,978 +21,822 @@
   along with systemd; If not, see <http://www.gnu.org/licenses/>.
 -->
 
-<refentry id="journalctl"
-          xmlns:xi="http://www.w3.org/2001/XInclude">
-
-        <refentryinfo>
-                <title>journalctl</title>
-                <productname>systemd</productname>
-
-                <authorgroup>
-                        <author>
-                                <contrib>Developer</contrib>
-                                <firstname>Lennart</firstname>
-                                <surname>Poettering</surname>
-                                <email>lennart at poettering.net</email>
-                        </author>
-                </authorgroup>
-        </refentryinfo>
-
-        <refmeta>
-                <refentrytitle>journalctl</refentrytitle>
-                <manvolnum>1</manvolnum>
-        </refmeta>
-
-        <refnamediv>
-                <refname>journalctl</refname>
-                <refpurpose>Query the systemd journal</refpurpose>
-        </refnamediv>
-
-        <refsynopsisdiv>
-                <cmdsynopsis>
-                        <command>journalctl</command>
-                        <arg choice="opt" rep="repeat">OPTIONS</arg>
-                        <arg choice="opt" rep="repeat">MATCHES</arg>
-                </cmdsynopsis>
-        </refsynopsisdiv>
-
-        <refsect1>
-                <title>Description</title>
-
-                <para><command>journalctl</command> may be used to
-                query the contents of the
-                <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
-                journal as written by
-                <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
-
-                <para>If called without parameters, it will show the full
-                contents of the journal, starting with the oldest
-                entry collected.</para>
-
-                <para>If one or more match arguments are passed, the
-                output is filtered accordingly. A match is in the
-                format <literal>FIELD=VALUE</literal>,
-                e.g. <literal>_SYSTEMD_UNIT=httpd.service</literal>,
-                referring to the components of a structured journal
-                entry. See
-                <citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
-                for a list of well-known fields. If multiple matches
-                are specified matching different fields, the log
-                entries are filtered by both, i.e. the resulting output
-                will show only entries matching all the specified
-                matches of this kind. If two matches apply to the same
-                field, then they are automatically matched as
-                alternatives, i.e. the resulting output will show
-                entries matching any of the specified matches for the
-                same field. Finally, the character
-                <literal>+</literal> may appears as a separate word
-                between other terms on the command line. This causes
-                all matches before and after to be combined in a
-                disjunction (i.e. logical OR).</para>
-
-                <para>As shortcuts for a few types of field/value
-                matches, file paths may be specified. If a file path
-                refers to an executable file, this is equivalent to an
-                <literal>_EXE=</literal> match for the canonicalized
-                binary path. Similarly, if a path refers to a device
-                node, this is equivalent to a
-                <literal>_KERNEL_DEVICE=</literal> match for the
-                device.</para>
-
-                <para>Additional constraints may be added using options
-                <option>--boot</option>, <option>--unit=</option>,
-                etc, to further limit what entries will be shown
-                (logical AND).</para>
-
-                <para>Output is interleaved from all accessible
-                journal files, whether they are rotated or currently
-                being written, and regardless of whether they belong to the
-                system itself or are accessible user journals.</para>
-
-                <para>The set of journal files which will be used
-                can be modified using the <option>--user</option>,
-                <option>--system</option>, <option>--directory</option>,
-                and <option>--file</option> options, see below.</para>
-
-                <para>All users are granted access to their private
-                per-user journals. However, by default, only root and
-                users who are members of the <literal>systemd-journal</literal>
-                group get access to the system journal and the
-                journals of other users.</para>
-
-                <para>The output is paged through
-                <command>less</command> by default, and long lines are
-                "truncated" to screen width. The hidden part can be
-                viewed by using the left-arrow and right-arrow
-                keys. Paging can be disabled; see the
-                <option>--no-pager</option> option and the "Environment"
-                section below.</para>
-
-                <para>When outputting to a tty, lines are colored
-                according to priority: lines of level ERROR and higher
-                are colored red; lines of level NOTICE and higher are
-                highlighted; other lines are displayed normally.
+  <refentry id="journalctl"
+            xmlns:xi="http://www.w3.org/2001/XInclude">
+
+    <refentryinfo>
+      <title>journalctl</title>
+      <productname>systemd</productname>
+
+      <authorgroup>
+        <author>
+          <contrib>Developer</contrib>
+          <firstname>Lennart</firstname>
+          <surname>Poettering</surname>
+          <email>lennart at poettering.net</email>
+        </author>
+      </authorgroup>
+    </refentryinfo>
+
+    <refmeta>
+      <refentrytitle>journalctl</refentrytitle>
+      <manvolnum>1</manvolnum>
+    </refmeta>
+
+    <refnamediv>
+      <refname>journalctl</refname>
+      <refpurpose>Query the systemd journal</refpurpose>
+    </refnamediv>
+
+    <refsynopsisdiv>
+      <cmdsynopsis>
+        <command>journalctl</command>
+        <arg choice="opt" rep="repeat">OPTIONS</arg>
+        <arg choice="opt" rep="repeat">MATCHES</arg>
+      </cmdsynopsis>
+    </refsynopsisdiv>
+
+    <refsect1>
+      <title>Description</title>
+
+      <para><command>journalctl</command> may be used to query the
+      contents of the
+      <citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+      journal as written by
+      <citerefentry><refentrytitle>systemd-journald.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>.</para>
+
+      <para>If called without parameters, it will show the full
+      contents of the journal, starting with the oldest entry
+      collected.</para>
+
+      <para>If one or more match arguments are passed, the output is
+      filtered accordingly. A match is in the format
+      <literal>FIELD=VALUE</literal>,
+      e.g. <literal>_SYSTEMD_UNIT=httpd.service</literal>, referring
+      to the components of a structured journal entry. See
+      <citerefentry><refentrytitle>systemd.journal-fields</refentrytitle><manvolnum>7</manvolnum></citerefentry>
+      for a list of well-known fields. If multiple matches are
+      specified matching different fields, the log entries are
+      filtered by both, i.e. the resulting output will show only
+      entries matching all the specified matches of this kind. If two
+      matches apply to the same field, then they are automatically
+      matched as alternatives, i.e. the resulting output will show
+      entries matching any of the specified matches for the same
+      field. Finally, the character <literal>+</literal> may appears
+      as a separate word between other terms on the command line. This
+      causes all matches before and after to be combined in a
+      disjunction (i.e. logical OR).</para>
+
+      <para>As shortcuts for a few types of field/value matches, file
+      paths may be specified. If a file path refers to an executable
+      file, this is equivalent to an <literal>_EXE=</literal> match
+      for the canonicalized binary path. Similarly, if a path refers
+      to a device node, this is equivalent to a
+      <literal>_KERNEL_DEVICE=</literal> match for the device.</para>
+
+      <para>Additional constraints may be added using options
+      <option>--boot</option>, <option>--unit=</option>, etc, to
+      further limit what entries will be shown (logical AND).</para>
+
+      <para>Output is interleaved from all accessible journal files,
+      whether they are rotated or currently being written, and
+      regardless of whether they belong to the system itself or are
+      accessible user journals.</para>
+
+      <para>The set of journal files which will be used can be
+      modified using the <option>--user</option>,
+      <option>--system</option>, <option>--directory</option>, and
+      <option>--file</option> options, see below.</para>
+
+      <para>All users are granted access to their private per-user
+      journals. However, by default, only root and users who are
+      members of the <literal>systemd-journal</literal> group get
+      access to the system journal and the journals of other
+      users.</para>
+
+      <para>The output is paged through <command>less</command> by
+      default, and long lines are "truncated" to screen width. The
+      hidden part can be viewed by using the left-arrow and
+      right-arrow keys. Paging can be disabled; see the
+      <option>--no-pager</option> option and the "Environment" section
+      below.</para>
+
+      <para>When outputting to a tty, lines are colored according to
+      priority: lines of level ERROR and higher are colored red; lines
+      of level NOTICE and higher are highlighted; other lines are
+      displayed normally.</para>
+    </refsect1>
+
+    <refsect1>
+      <title>Options</title>
+
+      <para>The following options are understood:</para>
+
+      <variablelist>
+        <varlistentry>
+          <term><option>--no-full</option></term>
+          <term><option>--full</option></term>
+          <term><option>-l</option></term>
+
+          <listitem><para>Ellipsize fields when they do not fit in
+          available columns.  The default is to show full fields,
+          allowing them to wrap or be truncated by the pager, if one
+          is used.</para>
+
+          <para>The old options
+          <option>-l</option>/<option>--full</option> are not useful
+          anymore, except to undo <option>--no-full</option>.</para>
+          </listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><option>-a</option></term>
+          <term><option>--all</option></term>
+
+          <listitem><para>Show all fields in full, even if they
+          include unprintable characters or are very
+          long.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><option>-f</option></term>
+          <term><option>--follow</option></term>
+
+          <listitem><para>Show only the most recent journal entries,
+          and continuously print new entries as they are appended to
+          the journal.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><option>-e</option></term>
+          <term><option>--pager-end</option></term>
+
+          <listitem><para>Immediately jump to the end of the journal
+          inside the implied pager tool. This implies
+          <option>-n1000</option> to guarantee that the pager will not
+          buffer logs of unbounded size. This may be overridden with
+          an explicit <option>-n</option> with some other numeric
+          value while <option>-nall</option> will disable this cap.
+          Note that this option is only supported for the
+          <citerefentry project='man-pages'><refentrytitle>less</refentrytitle><manvolnum>1</manvolnum></citerefentry>
+          pager.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><option>-n</option></term>
+          <term><option>--lines=</option></term>
+
+          <listitem><para>Show the most recent journal events and
+          limit the number of events shown. If
+          <option>--follow</option> is used, this option is
+          implied. The argument is a positive integer or
+          <literal>all</literal> to disable line limiting. The default
+          value is 10 if no argument is given.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><option>--no-tail</option></term>
+
+          <listitem><para>Show all stored output lines, even in follow
+          mode. Undoes the effect of <option>--lines=</option>.
+          </para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><option>-r</option></term>
+          <term><option>--reverse</option></term>
+
+          <listitem><para>Reverse output so that the newest entries
+          are displayed first.</para></listitem>
+        </varlistentry>
+
+        <varlistentry>
+          <term><option>-o</option></term>
+          <term><option>--output=</option></term>
+
+          <listitem><para>Controls the formatting of the journal
+          entries that are shown. Takes one of the following
+          options:</para>
+          <variablelist>
+            <varlistentry>
+              <term>
+                <option>short</option>
+              </term>
+              <listitem>
+                <para>is the default and generates an output that is
+                mostly identical to the formatting of classic syslog
+                files, showing one line per journal entry.</para>
+              </listitem>
+            </varlistentry>
+
+            <varlistentry>
+              <term>
+                <option>short-iso</option>
+              </term>
+              <listitem>
+                <para>is very similar, but shows ISO 8601 wallclock
+                timestamps.</para>
+              </listitem>
+            </varlistentry>
+
+            <varlistentry>
+              <term>
+                <option>short-precise</option>
+              </term>
+              <listitem>
+                <para>is very similar, but shows timestamps with full
+                microsecond precision.</para>
+              </listitem>
+            </varlistentry>
+
+            <varlistentry>
+              <term>
+                <option>short-monotonic</option>
+              </term>
+              <listitem>
+                <para>is very similar, but shows monotonic timestamps
+                instead of wallclock timestamps.</para>
+              </listitem>
+            </varlistentry>
+
+            <varlistentry>
+              <term>
+                <option>verbose</option>
+              </term>
+              <listitem>
+                <para>shows the full-structured entry items with all
+                fields.</para>
+              </listitem>
+            </varlistentry>
+
+            <varlistentry>
+              <term>
+                <option>export</option>
+              </term>
+              <listitem>
+                <para>serializes the journal into a binary (but mostly
+                text-based) stream suitable for backups and network
+                transfer (see
+                <ulink url="http://www.freedesktop.org/wiki/Software/systemd/export">Journal Export Format</ulink>
+                for more information).</para>
+              </listitem>
+            </varlistentry>
+
+            <varlistentry>
+              <term>
+                <option>json</option>
+              </term>
+              <listitem>
+                <para>formats entries as JSON data structures, one per
+                line (see
+                <ulink url="http://www.freedesktop.org/wiki/Software/systemd/json">Journal JSON Format</ulink>
+                for more information).</para>
+              </listitem>
+            </varlistentry>
+
+            <varlistentry>
+              <term>
+                <option>json-pretty</option>
+              </term>
+              <listitem>
+                <para>formats entries as JSON data structures, but
+                formats them in multiple lines in order to make them
+                more readable by humans.</para>
+              </listitem>
+            </varlistentry>
+
+            <varlistentry>
+              <term>
+                <option>json-sse</option>
+              </term>
+              <listitem>
+                <para>formats entries as JSON data structures, but wraps
+                them in a format suitable for
+                <ulink url="https://developer.mozilla.org/en-US/docs/Server-sent_events/Using_server-sent_events">Server-Sent Events</ulink>.
                 </para>
-        </refsect1>
-
-        <refsect1>
-                <title>Options</title>
-
-                <para>The following options are understood:</para>
-
-                <variablelist>
-                        <varlistentry>
-                                <term><option>--no-full</option></term>
-                                <term><option>--full</option></term>
-                                <term><option>-l</option></term>
-
-                                <listitem><para>Ellipsize fields when
-                                they do not fit in available columns.
-                                The default is to show full fields,
-                                allowing them to wrap or be truncated
-                                by the pager, if one is used.</para>
-
-                                <para>The old options
-                                <option>-l</option>/<option>--full</option>
-                                are not useful anymore, except to undo
-                                <option>--no-full</option>.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-a</option></term>
-                                <term><option>--all</option></term>
-
-                                <listitem><para>Show all fields in
-                                full, even if they include unprintable
-                                characters or are very
-                                long.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-f</option></term>
-                                <term><option>--follow</option></term>
-
-                                <listitem><para>Show only the most recent
-                                journal entries, and continuously print
-                                new entries as they are appended to
-                                the journal.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-e</option></term>
-                                <term><option>--pager-end</option></term>
-
-                                <listitem><para>Immediately jump to
-                                the end of the journal inside the
-                                implied pager tool. This implies
-                                <option>-n1000</option> to guarantee
-                                that the pager will not buffer logs of
-                                unbounded size. This may be overridden
-                                with an explicit <option>-n</option>
-                                with some other numeric value while
-                                <option>-nall</option> will disable this cap.
-                                Note that this option is only supported for the
-                                <citerefentry project='man-pages'><refentrytitle>less</refentrytitle><manvolnum>1</manvolnum></citerefentry>
-                                pager.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-n</option></term>
-                                <term><option>--lines=</option></term>
-
-                                <listitem><para>Show the most recent
-                                journal events and limit the number of
-                                events shown. If
-                                <option>--follow</option> is used,
-                                this option is implied. The argument is
-                                a positive integer or <literal>all</literal>
-                                to disable line limiting. The default value is
-                                10 if no argument is given.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--no-tail</option></term>
-
-                                <listitem><para>Show all stored output
-                                lines, even in follow mode. Undoes the
-                                effect of
-                                <option>--lines=</option>.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-r</option></term>
-                                <term><option>--reverse</option></term>
-
-                                <listitem><para>Reverse output so that the newest
-                                entries are displayed first.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-o</option></term>
-                                <term><option>--output=</option></term>
-
-                                <listitem><para>Controls the
-                                formatting of the journal entries that
-                                are shown. Takes one of the following options:
-                                </para>
-                                <variablelist>
-                                        <varlistentry>
-                                                <term>
-                                                        <option>short</option>
-                                                </term>
-                                                <listitem>
-                                                        <para>is the default
-                                                        and generates an output
-                                                        that is mostly identical
-                                                        to the formatting of
-                                                        classic syslog files,
-                                                        showing one line per
-                                                        journal entry.</para>
-                                                </listitem>
-                                        </varlistentry>
-
-                                        <varlistentry>
-                                                <term>
-                                                        <option>short-iso</option>
-                                                </term>
-                                                <listitem>
-                                                        <para>is very similar,
-                                                        but shows ISO 8601
-                                                        wallclock timestamps.
-                                                        </para>
-                                                </listitem>
-                                        </varlistentry>
-
-                                        <varlistentry>
-                                                <term>
-                                                        <option>short-precise</option>
-                                                </term>
-                                                <listitem>
-                                                        <para>is very similar,
-                                                        but shows timestamps
-                                                        with full microsecond
-                                                        precision.
-                                                        </para>
-                                                </listitem>
-                                        </varlistentry>
-
-                                        <varlistentry>
-                                                <term>
-                                                        <option>short-monotonic</option>
-                                                </term>
-                                                <listitem>
-                                                        <para>is very similar,
-                                                        but shows monotonic
-                                                        timestamps instead of
-                                                        wallclock timestamps.
-                                                        </para>
-                                                </listitem>
-                                        </varlistentry>
-
-                                        <varlistentry>
-                                                <term>
-                                                        <option>verbose</option>
-                                                </term>
-                                                <listitem>
-                                                        <para>shows the
-                                                        full-structured entry
-                                                        items with all fields.
-                                                        </para>
-                                                </listitem>
-                                        </varlistentry>
-
-                                        <varlistentry>
-                                                <term>
-                                                        <option>export</option>
-                                                </term>
-                                                <listitem>
-                                                        <para>serializes the
-                                                        journal into a binary
-                                                        (but mostly text-based)
-                                                        stream suitable for
-                                                        backups and network
-                                                        transfer (see <ulink
-                                                        url="http://www.freedesktop.org/wiki/Software/systemd/export">Journal
-                                                        Export Format</ulink>
-                                                        for more
-                                                        information).</para>
-                                                </listitem>
-                                        </varlistentry>
-
-                                        <varlistentry>
-                                                <term>
-                                                        <option>json</option>
-                                                </term>
-                                                <listitem>
-                                                        <para>formats entries
-                                                        as JSON data structures,
-                                                        one per line (see <ulink
-                                                        url="http://www.freedesktop.org/wiki/Software/systemd/json">Journal
-                                                        JSON Format</ulink> for
-                                                        more information).</para>
-                                                </listitem>
-                                        </varlistentry>
-
-                                        <varlistentry>
-                                                <term>
-                                                        <option>json-pretty</option>
-                                                </term>
-                                                <listitem>
-                                                        <para>formats entries as
-                                                        JSON data structures,
-                                                        but formats them in
-                                                        multiple lines in order
-                                                        to make them more
-                                                        readable by humans.</para>
-                                                </listitem>
-                                        </varlistentry>
-
-                                        <varlistentry>
-                                                <term>
-                                                        <option>json-sse</option>
-                                                </term>
-                                                <listitem>
-                                                        <para>formats entries as
-                                                        JSON data structures,
-                                                        but wraps them in a
-                                                        format suitable for <ulink
-                                                        url="https://developer.mozilla.org/en-US/docs/Server-sent_events/Using_server-sent_events">Server-Sent
-                                                        Events</ulink>.</para>
-                                                </listitem>
-                                        </varlistentry>
-
-                                        <varlistentry>
-                                                <term>
-                                                        <option>cat</option>
-                                                </term>
-                                                <listitem>
-                                                        <para>generates a very
-                                                        terse output, only
-                                                        showing the actual
-                                                        message of each journal
-                                                        entry with no metadata,
-                                                        not even a timestamp.
-                                                        </para>
-                                                </listitem>
-                                        </varlistentry>
-                                </variablelist>
-                                </listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--utc</option></term>
-
-                                <listitem><para>Express time in Coordinated Universal
-                                Time (UTC).</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-x</option></term>
-                                <term><option>--catalog</option></term>
-
-                                <listitem><para>Augment log lines with
-                                explanation texts from the message
-                                catalog. This will add explanatory
-                                help texts to log messages in the
-                                output where this is available. These
-                                short help texts will explain the
-                                context of an error or log event,
-                                possible solutions, as well as
-                                pointers to support forums, developer
-                                documentation, and any other relevant
-                                manuals. Note that help texts are not
-                                available for all messages, but only
-                                for selected ones. For more
-                                information on the message catalog,
-                                please refer to the <ulink
-                                url="http://www.freedesktop.org/wiki/Software/systemd/catalog">Message
-                                Catalog Developer
-                                Documentation</ulink>.</para>
-
-                                <para>Note: when attaching
-                                <command>journalctl</command> output
-                                to bug reports, please do
-                                <emphasis>not</emphasis> use
-                                <option>-x</option>.</para>
-                                </listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-q</option></term>
-                                <term><option>--quiet</option></term>
-
-                                <listitem><para>Suppresses any warning
-                                messages regarding inaccessible system
-                                journals when run as a normal
-                                user.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-m</option></term>
-                                <term><option>--merge</option></term>
-
-                                <listitem><para>Show entries
-                                interleaved from all available
-                                journals, including remote
-                                ones.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-b <optional><replaceable>ID</replaceable></optional><optional><replaceable>±offset</replaceable></optional></option></term>
-                                <term><option>--boot=<optional><replaceable>ID</replaceable></optional><optional><replaceable>±offset</replaceable></optional></option></term>
-
-                                <listitem><para>Show messages from a specific
-                                boot. This will add a match for
-                                <literal>_BOOT_ID=</literal>.</para>
-
-                                <para>The argument may be empty, in which case
-                                logs for the current boot will be shown.</para>
-
-                                <para>If the boot ID is omitted, a positive
-                                <replaceable>offset</replaceable> will look up
-                                the boots starting from the beginning of the
-                                journal, and a equal-or-less-than zero
-                                <replaceable>offset</replaceable> will look up
-                                boots starting from the end of the
-                                journal. Thus, <constant>1</constant> means the
-                                first boot found in the journal in
-                                chronological order, <constant>2</constant> the
-                                second and so on; while <constant>-0</constant>
-                                is the last boot, <constant>-1</constant> the
-                                boot before last, and so on. An empty
-                                <replaceable>offset</replaceable> is equivalent
-                                to specifying <constant>-0</constant>, except
-                                when the current boot is not the last boot
-                                (e.g. because <option>--directory</option> was
-                                specified to look at logs from a different
-                                machine).</para>
-
-                                <para>If the 32-character
-                                <replaceable>ID</replaceable> is specified, it
-                                may optionally be followed by
-                                <replaceable>offset</replaceable> which
-                                identifies the boot relative to the one given by
-                                boot <replaceable>ID</replaceable>. Negative
-                                values mean earlier boots and a positive values
-                                mean later boots. If
-                                <replaceable>offset</replaceable> is not
-                                specified, a value of zero is assumed, and the
-                                logs for the boot given by
-                                <replaceable>ID</replaceable> are shown.
-                                </para>
-
-                                </listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--list-boots</option></term>
-
-                                <listitem><para>Show a tabular list of
-                                boot numbers (relative to the current
-                                boot), their IDs, and the timestamps
-                                of the first and last message
-                                pertaining to the boot.
-                                </para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-k</option></term>
-                                <term><option>--dmesg</option></term>
-
-                                <listitem><para>Show only kernel messages. This
-                                implies <option>-b</option> and adds the match
-                                <literal>_TRANSPORT=kernel</literal>.
-                                </para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-t</option></term>
-                                <term><option>--identifier=<replaceable>SYSLOG_IDENTIFIER</replaceable>|<replaceable>PATTERN</replaceable></option></term>
-
-                                <listitem><para>Show messages for the
-                                specified syslog identifier
-                                <replaceable>SYSLOG_IDENTIFIER</replaceable>, or
-                                for any of the messages with a <literal>SYSLOG_IDENTIFIER</literal>
-                                matched by <replaceable>PATTERN</replaceable>.</para>
-
-                                <para>This parameter can be specified
-                                multiple times.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-u</option></term>
-                                <term><option>--unit=<replaceable>UNIT</replaceable>|<replaceable>PATTERN</replaceable></option></term>
-
-                                <listitem><para>Show messages for the
-                                specified systemd unit
-                                <replaceable>UNIT</replaceable> (such
-                                as a service unit), or for any of the
-                                units matched by
-                                <replaceable>PATTERN</replaceable>.
-                                If a pattern is specified, a list of
-                                unit names found in the journal is
-                                compared with the specified pattern
-                                and all that match are used. For each
-                                unit name, a match is added for
-                                messages from the unit
-                                (<literal>_SYSTEMD_UNIT=<replaceable>UNIT</replaceable></literal>),
-                                along with additional matches for
-                                messages from systemd and messages
-                                about coredumps for the specified
-                                unit.</para>
-
-                                <para>This parameter can be specified
-                                multiple times.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--user-unit=</option></term>
-
-                                <listitem><para>Show messages for the
-                                specified user session unit. This will
-                                add a match for messages from the unit
-                                (<literal>_SYSTEMD_USER_UNIT=</literal>
-                                and <literal>_UID=</literal>) and
-                                additional matches for messages from
-                                session systemd and messages about
-                                coredumps for the specified unit.</para>
-                                <para>This parameter can be specified multiple times.
-                                </para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-p</option></term>
-                                <term><option>--priority=</option></term>
-
-                                <listitem><para>Filter output by
-                                message priorities or priority
-                                ranges. Takes either a single numeric
-                                or textual log level (i.e. between
-                                0/<literal>emerg</literal> and
-                                7/<literal>debug</literal>), or a
-                                range of numeric/text log levels in
-                                the form FROM..TO. The log levels are
-                                the usual syslog log levels as
-                                documented in
-                                <citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
-                                i.e. <literal>emerg</literal> (0),
-                                <literal>alert</literal> (1),
-                                <literal>crit</literal> (2),
-                                <literal>err</literal> (3),
-                                <literal>warning</literal> (4),
-                                <literal>notice</literal> (5),
-                                <literal>info</literal> (6),
-                                <literal>debug</literal> (7). If a
-                                single log level is specified, all
-                                messages with this log level or a
-                                lower (hence more important) log level
-                                are shown. If a range is specified, all
-                                messages within the range are shown,
-                                including both the start and the end
-                                value of the range. This will add
-                                <literal>PRIORITY=</literal> matches
-                                for the specified
-                                priorities.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-c</option></term>
-                                <term><option>--cursor=</option></term>
-
-                                <listitem><para>Start showing entries
-                                from the location in the journal
-                                specified by the passed
-                                cursor.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--after-cursor=</option></term>
-
-                                <listitem><para>Start showing entries
-                                from the location in the journal
-                                <emphasis>after</emphasis> the
-                                location specified by the this cursor.
-                                The cursor is shown when the
-                                <option>--show-cursor</option> option
-                                is used.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--show-cursor</option></term>
-
-                                <listitem><para>The cursor is shown after the last
-                                entry after two dashes:</para>
-                                <programlisting>-- cursor: s=0639...</programlisting>
-                                <para>The format of the cursor is private
-                                and subject to change.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--since=</option></term>
-                                <term><option>--until=</option></term>
-
-                                <listitem><para>Start showing entries
-                                on or newer than the specified date,
-                                or on or older than the specified
-                                date, respectively. Date specifications
-                                should be of the format
-                                <literal>2012-10-30 18:17:16</literal>.
-                                If the time part is omitted,
-                                <literal>00:00:00</literal> is assumed.
-                                If only the seconds component is omitted,
-                                <literal>:00</literal> is assumed. If the
-                                date component is omitted, the current
-                                day is assumed. Alternatively the strings
-                                <literal>yesterday</literal>,
-                                <literal>today</literal>,
-                                <literal>tomorrow</literal> are
-                                understood, which refer to 00:00:00 of
-                                the day before the current day, the
-                                current day, or the day after the
-                                current day, respectively. <literal>now</literal>
-                                refers to the current time. Finally,
-                                relative times may be specified,
-                                prefixed with <literal>-</literal> or
-                                <literal>+</literal>, referring to
-                                times before or after the current
-                                time, respectively.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-F</option></term>
-                                <term><option>--field=</option></term>
-
-                                <listitem><para>Print all possible
-                                data values the specified field can
-                                take in all entries of the
-                                journal.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--system</option></term>
-                                <term><option>--user</option></term>
-
-                                <listitem><para>Show messages from
-                                system services and the kernel (with
-                                <option>--system</option>). Show
-                                messages from service of current user
-                                (with <option>--user</option>).
-                                If neither is specified, show all
-                                messages that the user can see.
-                                </para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-M</option></term>
-                                <term><option>--machine=</option></term>
-
-                                <listitem><para>Show messages from a
-                                running, local container. Specify a
-                                container name to connect
-                                to.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>-D <replaceable>DIR</replaceable></option></term>
-                                <term><option>--directory=<replaceable>DIR</replaceable></option></term>
-
-                                <listitem><para>Takes a directory path
-                                as argument. If specified, journalctl
-                                will operate on the specified journal
-                                directory
-                                <replaceable>DIR</replaceable> instead
-                                of the default runtime and system
-                                journal paths.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--file=<replaceable>GLOB</replaceable></option></term>
-
-                                <listitem><para>Takes a file glob as an
-                                argument. If specified, journalctl will
-                                operate on the specified journal files
-                                matching <replaceable>GLOB</replaceable>
-                                instead of the default runtime and
-                                system journal paths. May be specified
-                                multiple times, in which case files will
-                                be suitably interleaved.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--root=<replaceable>ROOT</replaceable></option></term>
-
-                                <listitem><para>Takes a directory path
-                                as an argument. If specified, journalctl
-                                will operate on catalog file hierarchy
-                                underneath the specified directory
-                                instead of the root directory
-                                (e.g. <option>--update-catalog</option>
-                                will create
-                                <filename><replaceable>ROOT</replaceable>/var/lib/systemd/catalog/database</filename>).
-                                </para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--new-id128</option></term>
-
-                                <listitem><para>Instead of showing
-                                journal contents, generate a new 128-bit
-                                ID suitable for identifying
-                                messages. This is intended for usage
-                                by developers who need a new
-                                identifier for a new message they
-                                introduce and want to make
-                                recognizable. This will print the new ID in
-                                three different formats which can be
-                                copied into source code or
-                                similar.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--header</option></term>
-
-                                <listitem><para>Instead of showing
-                                journal contents, show internal header
-                                information of the journal fields
-                                accessed.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--disk-usage</option></term>
-
-                                <listitem><para>Shows the current disk
-                                usage of all journal files. This shows
-                                the sum of the disk usage of all
-                                archived and active journal
-                                files.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--vacuum-size=</option></term>
-                                <term><option>--vacuum-time=</option></term>
-
-                                <listitem><para>Removes archived
-                                journal files until the disk space
-                                they use falls below the specified
-                                size (specified with the usual K, M,
-                                G, T suffixes), or all journal files
-                                contain no data older than the
-                                specified timespan (specified with the
-                                usual s, min, h, days, months, weeks,
-                                years suffixes). Note that running
-                                <option>--vacuum-size=</option> has
-                                only indirect effect on the output
-                                shown by <option>--disk-usage</option>
-                                as the latter includes active journal
-                                files, while the former only operates
-                                on archived journal
-                                files. <option>--vacuum-size=</option>
-                                and <option>--vacuum-time=</option>
-                                may be combined in a single invocation
-                                to enforce both a size and time limit
-                                on the archived journal
-                                files.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--list-catalog
-                                <optional><replaceable>128-bit-ID...</replaceable></optional>
-                                </option></term>
-
-                                <listitem><para>List the contents of
-                                the message catalog as a table of
-                                message IDs, plus their short
-                                description strings.</para>
-
-                                <para>If any
-                                <replaceable>128-bit-ID</replaceable>s are
-                                specified, only those entries are shown.
-                                </para>
-                                </listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--dump-catalog
-                                <optional><replaceable>128-bit-ID...</replaceable></optional>
-                                </option></term>
-
-                                <listitem><para>Show the contents of
-                                the message catalog, with entries
-                                separated by a line consisting of two
-                                dashes and the ID (the format is the
-                                same as <filename>.catalog</filename>
-                                files).</para>
-
-                                <para>If any
-                                <replaceable>128-bit-ID</replaceable>s are
-                                specified, only those entries are shown.
-                                </para>
-                                </listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--update-catalog</option></term>
-
-                                <listitem><para>Update the message
-                                catalog index. This command needs to
-                                be executed each time new catalog
-                                files are installed, removed, or
-                                updated to rebuild the binary catalog
-                                index.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--setup-keys</option></term>
-
-                                <listitem><para>Instead of showing
-                                journal contents, generate a new key
-                                pair for Forward Secure Sealing
-                                (FSS). This will generate a sealing
-                                key and a verification key. The
-                                sealing key is stored in the journal
-                                data directory and shall remain on the
-                                host. The verification key should be
-                                stored externally. Refer to the
-                                <option>Seal=</option> option in
-                                <citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
-                                for information on Forward Secure
-                                Sealing and for a link to a refereed
-                                scholarly paper detailing the
-                                cryptographic theory it is based on.
-                                </para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--force</option></term>
-
-                                <listitem><para>When
-                                <option>--setup-keys</option> is passed and
-                                Forward Secure Sealing (FSS) has already been
-                                configured, recreate FSS keys.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--interval=</option></term>
-
-                                <listitem><para>Specifies the change
-                                interval for the sealing key when
-                                generating an FSS key pair with
-                                <option>--setup-keys</option>. Shorter
-                                intervals increase CPU consumption but
-                                shorten the time range of
-                                undetectable journal
-                                alterations. Defaults to
-                                15min.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--verify</option></term>
-
-                                <listitem><para>Check the journal file
-                                for internal consistency. If the
-                                file has been generated with FSS
-                                enabled and the FSS verification key
-                                has been specified with
-                                <option>--verify-key=</option>,
-                                authenticity of the journal file is
-                                verified.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--verify-key=</option></term>
-
-                                <listitem><para>Specifies the FSS
-                                verification key to use for the
-                                <option>--verify</option>
-                                operation.</para></listitem>
-                        </varlistentry>
-
-                        <varlistentry>
-                                <term><option>--flush</option></term>
-
-                                <listitem><para>Asks the Journal
-                                daemon to flush any log data stored in
-                                <filename>/run/log/journal</filename>
-                                into
-                                <filename>/var/log/journal</filename>,
-                                if persistent storage is enabled. This
-                                call does not return until the
-                                operation is
-                                complete.</para></listitem>
-                        </varlistentry>
-
-                        <xi:include href="standard-options.xml" xpointer="help" />
-                        <xi:include href="standard-options.xml" xpointer="version" />
-                        <xi:include href="standard-options.xml" xpointer="no-pager" />
-                </variablelist>
-        </refsect1>
-
-        <refsect1>
-                <title>Exit status</title>
-
-                <para>On success, 0 is returned; otherwise, a non-zero
-                failure code is returned.</para>
-        </refsect1>
-
-        <xi:include href="less-variables.xml" />
-
-        <refsect1>
-                <title>Examples</title>
-
-                <para>Without arguments, all collected logs are shown
-                unfiltered:</para>
-
-                <programlisting>journalctl</programlisting>
-
-                <para>With one match specified, all entries with a field matching the expression are shown:</para>
-
-                <programlisting>journalctl _SYSTEMD_UNIT=avahi-daemon.service</programlisting>
-
-                <para>If two different fields are matched, only entries matching both expressions at the same time are shown:</para>
+              </listitem>
+            </varlistentry>
+
+            <varlistentry>
+              <term>
+                <option>cat</option>
+              </term>
+              <listitem>
+                <para>generates a very terse output, only showing the
+                actual message of each journal entry with no metadata,
+                not even a timestamp.</para>
+              </listitem>
+            </varlistentry>
+          </variablelist>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--utc</option></term>
+
+        <listitem><para>Express time in Coordinated Universal Time
+        (UTC).</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>-x</option></term>
+        <term><option>--catalog</option></term>
+
+        <listitem><para>Augment log lines with explanation texts from
+        the message catalog. This will add explanatory help texts to
+        log messages in the output where this is available. These
+        short help texts will explain the context of an error or log
+        event, possible solutions, as well as pointers to support
+        forums, developer documentation, and any other relevant
+        manuals. Note that help texts are not available for all
+        messages, but only for selected ones. For more information on
+        the message catalog, please refer to the
+        <ulink url="http://www.freedesktop.org/wiki/Software/systemd/catalog">Message Catalog Developer Documentation</ulink>.</para>
+
+        <para>Note: when attaching <command>journalctl</command>
+        output to bug reports, please do <emphasis>not</emphasis> use
+        <option>-x</option>.</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>-q</option></term>
+        <term><option>--quiet</option></term>
+
+        <listitem><para>Suppresses any warning messages regarding
+        inaccessible system journals when run as a normal
+        user.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>-m</option></term>
+        <term><option>--merge</option></term>
+
+        <listitem><para>Show entries interleaved from all available
+        journals, including remote ones.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>-b <optional><replaceable>ID</replaceable></optional><optional><replaceable>±offset</replaceable></optional></option></term>
+        <term><option>--boot=<optional><replaceable>ID</replaceable></optional><optional><replaceable>±offset</replaceable></optional></option></term>
+
+        <listitem><para>Show messages from a specific boot. This will
+        add a match for <literal>_BOOT_ID=</literal>.</para>
+
+        <para>The argument may be empty, in which case logs for the
+        current boot will be shown.</para>
+
+        <para>If the boot ID is omitted, a positive
+        <replaceable>offset</replaceable> will look up the boots
+        starting from the beginning of the journal, and a
+        equal-or-less-than zero <replaceable>offset</replaceable> will
+        look up boots starting from the end of the journal. Thus,
+        <constant>1</constant> means the first boot found in the
+        journal in chronological order, <constant>2</constant> the
+        second and so on; while <constant>-0</constant> is the last
+        boot, <constant>-1</constant> the boot before last, and so
+        on. An empty <replaceable>offset</replaceable> is equivalent
+        to specifying <constant>-0</constant>, except when the current
+        boot is not the last boot (e.g. because
+        <option>--directory</option> was specified to look at logs
+        from a different machine).</para>
+
+        <para>If the 32-character <replaceable>ID</replaceable> is
+        specified, it may optionally be followed by
+        <replaceable>offset</replaceable> which identifies the boot
+        relative to the one given by boot
+        <replaceable>ID</replaceable>. Negative values mean earlier
+        boots and a positive values mean later boots. If
+        <replaceable>offset</replaceable> is not specified, a value of
+        zero is assumed, and the logs for the boot given by
+        <replaceable>ID</replaceable> are shown.</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--list-boots</option></term>
+
+        <listitem><para>Show a tabular list of boot numbers (relative to
+        the current boot), their IDs, and the timestamps of the first
+        and last message pertaining to the boot.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>-k</option></term>
+        <term><option>--dmesg</option></term>
+
+        <listitem><para>Show only kernel messages. This implies
+        <option>-b</option> and adds the match
+        <literal>_TRANSPORT=kernel</literal>.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>-t</option></term>
+        <term><option>--identifier=<replaceable>SYSLOG_IDENTIFIER</replaceable>|<replaceable>PATTERN</replaceable></option></term>
+
+        <listitem><para>Show messages for the specified syslog
+        identifier <replaceable>SYSLOG_IDENTIFIER</replaceable>, or
+        for any of the messages with a
+        <literal>SYSLOG_IDENTIFIER</literal> matched by
+        <replaceable>PATTERN</replaceable>.</para>
+
+        <para>This parameter can be specified multiple
+        times.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>-u</option></term>
+        <term><option>--unit=<replaceable>UNIT</replaceable>|<replaceable>PATTERN</replaceable></option></term>
+
+        <listitem><para>Show messages for the specified systemd unit
+        <replaceable>UNIT</replaceable> (such as a service unit), or
+        for any of the units matched by
+        <replaceable>PATTERN</replaceable>.  If a pattern is
+        specified, a list of unit names found in the journal is
+        compared with the specified pattern and all that match are
+        used. For each unit name, a match is added for messages from
+        the unit
+        (<literal>_SYSTEMD_UNIT=<replaceable>UNIT</replaceable></literal>),
+        along with additional matches for messages from systemd and
+        messages about coredumps for the specified unit.</para>
+
+        <para>This parameter can be specified multiple times.</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--user-unit=</option></term>
+
+        <listitem><para>Show messages for the specified user session
+        unit. This will add a match for messages from the unit
+        (<literal>_SYSTEMD_USER_UNIT=</literal> and
+        <literal>_UID=</literal>) and additional matches for messages
+        from session systemd and messages about coredumps for the
+        specified unit.</para>
+
+        <para>This parameter can be specified multiple times.</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>-p</option></term>
+        <term><option>--priority=</option></term>
+
+        <listitem><para>Filter output by message priorities or
+        priority ranges. Takes either a single numeric or textual log
+        level (i.e. between 0/<literal>emerg</literal> and
+        7/<literal>debug</literal>), or a range of numeric/text log
+        levels in the form FROM..TO. The log levels are the usual
+        syslog log levels as documented in
+        <citerefentry project='man-pages'><refentrytitle>syslog</refentrytitle><manvolnum>3</manvolnum></citerefentry>,
+        i.e. <literal>emerg</literal> (0),
+        <literal>alert</literal> (1), <literal>crit</literal> (2),
+        <literal>err</literal> (3), <literal>warning</literal> (4),
+        <literal>notice</literal> (5), <literal>info</literal> (6),
+        <literal>debug</literal> (7). If a single log level is
+        specified, all messages with this log level or a lower (hence
+        more important) log level are shown. If a range is specified,
+        all messages within the range are shown, including both the
+        start and the end value of the range. This will add
+        <literal>PRIORITY=</literal> matches for the specified
+        priorities.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>-c</option></term>
+        <term><option>--cursor=</option></term>
+
+        <listitem><para>Start showing entries from the location in the
+        journal specified by the passed cursor.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--after-cursor=</option></term>
+
+        <listitem><para>Start showing entries from the location in the
+        journal <emphasis>after</emphasis> the location specified by
+        the this cursor.  The cursor is shown when the
+        <option>--show-cursor</option> option is used.</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--show-cursor</option></term>
+
+        <listitem><para>The cursor is shown after the last entry after
+        two dashes:</para>
+        <programlisting>-- cursor: s=0639...</programlisting>
+        <para>The format of the cursor is private
+        and subject to change.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--since=</option></term>
+        <term><option>--until=</option></term>
+
+        <listitem><para>Start showing entries on or newer than the
+        specified date, or on or older than the specified date,
+        respectively. Date specifications should be of the format
+        <literal>2012-10-30 18:17:16</literal>.  If the time part is
+        omitted, <literal>00:00:00</literal> is assumed.  If only the
+        seconds component is omitted, <literal>:00</literal> is
+        assumed. If the date component is omitted, the current day is
+        assumed. Alternatively the strings
+        <literal>yesterday</literal>, <literal>today</literal>,
+        <literal>tomorrow</literal> are understood, which refer to
+        00:00:00 of the day before the current day, the current day,
+        or the day after the current day,
+        respectively. <literal>now</literal> refers to the current
+        time. Finally, relative times may be specified, prefixed with
+        <literal>-</literal> or <literal>+</literal>, referring to
+        times before or after the current time, respectively.</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>-F</option></term>
+        <term><option>--field=</option></term>
+
+        <listitem><para>Print all possible data values the specified
+        field can take in all entries of the journal.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--system</option></term>
+        <term><option>--user</option></term>
+
+        <listitem><para>Show messages from system services and the
+        kernel (with <option>--system</option>). Show messages from
+        service of current user (with <option>--user</option>).  If
+        neither is specified, show all messages that the user can see.
+        </para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>-M</option></term>
+        <term><option>--machine=</option></term>
+
+        <listitem><para>Show messages from a running, local
+        container. Specify a container name to connect to.</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>-D <replaceable>DIR</replaceable></option></term>
+        <term><option>--directory=<replaceable>DIR</replaceable></option></term>
+
+        <listitem><para>Takes a directory path as argument. If
+        specified, journalctl will operate on the specified journal
+        directory <replaceable>DIR</replaceable> instead of the
+        default runtime and system journal paths.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--file=<replaceable>GLOB</replaceable></option></term>
+
+        <listitem><para>Takes a file glob as an argument. If
+        specified, journalctl will operate on the specified journal
+        files matching <replaceable>GLOB</replaceable> instead of the
+        default runtime and system journal paths. May be specified
+        multiple times, in which case files will be suitably
+        interleaved.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--root=<replaceable>ROOT</replaceable></option></term>
+
+        <listitem><para>Takes a directory path as an argument. If
+        specified, journalctl will operate on catalog file hierarchy
+        underneath the specified directory instead of the root
+        directory (e.g. <option>--update-catalog</option> will create
+        <filename><replaceable>ROOT</replaceable>/var/lib/systemd/catalog/database</filename>).
+        </para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--new-id128</option></term>
+
+        <listitem><para>Instead of showing journal contents, generate
+        a new 128-bit ID suitable for identifying messages. This is
+        intended for usage by developers who need a new identifier for
+        a new message they introduce and want to make
+        recognizable. This will print the new ID in three different
+        formats which can be copied into source code or similar.
+        </para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--header</option></term>
+
+        <listitem><para>Instead of showing journal contents, show
+        internal header information of the journal fields
+        accessed.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--disk-usage</option></term>
+
+        <listitem><para>Shows the current disk usage of all journal
+        files. This shows the sum of the disk usage of all archived
+        and active journal files.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--vacuum-size=</option></term>
+        <term><option>--vacuum-time=</option></term>
+
+        <listitem><para>Removes archived journal files until the disk
+        space they use falls below the specified size (specified with
+        the usual <literal>K</literal>, <literal>M</literal>,
+        <literal>G</literal>, <literal>T</literal> suffixes), or all
+        journal files contain no data older than the specified
+        timespan (specified with the usual <literal>s</literal>,
+        <literal>min</literal>, <literal>h</literal>,
+        <literal>days</literal>, <literal>months</literal>,
+        <literal>weeks</literal>, <literal>years</literal>
+        suffixes). Note that running <option>--vacuum-size=</option>
+        has only indirect effect on the output shown by
+        <option>--disk-usage</option> as the latter includes active
+        journal files, while the former only operates on archived
+        journal files. <option>--vacuum-size=</option> and
+        <option>--vacuum-time=</option> may be combined in a single
+        invocation to enforce both a size and time limit on the
+        archived journal files.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--list-catalog
+        <optional><replaceable>128-bit-ID...</replaceable></optional>
+        </option></term>
+
+        <listitem><para>List the contents of the message catalog as a
+        table of message IDs, plus their short description strings.
+        </para>
+
+        <para>If any <replaceable>128-bit-ID</replaceable>s are
+        specified, only those entries are shown.</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--dump-catalog
+        <optional><replaceable>128-bit-ID...</replaceable></optional>
+        </option></term>
+
+        <listitem><para>Show the contents of the message catalog, with
+        entries separated by a line consisting of two dashes and the
+        ID (the format is the same as <filename>.catalog</filename>
+        files).</para>
+
+        <para>If any <replaceable>128-bit-ID</replaceable>s are
+        specified, only those entries are shown.</para>
+        </listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--update-catalog</option></term>
+
+        <listitem><para>Update the message catalog index. This command
+        needs to be executed each time new catalog files are
+        installed, removed, or updated to rebuild the binary catalog
+        index.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--setup-keys</option></term>
+
+        <listitem><para>Instead of showing journal contents, generate
+        a new key pair for Forward Secure Sealing (FSS). This will
+        generate a sealing key and a verification key. The sealing key
+        is stored in the journal data directory and shall remain on
+        the host. The verification key should be stored
+        externally. Refer to the <option>Seal=</option> option in
+        <citerefentry><refentrytitle>journald.conf</refentrytitle><manvolnum>5</manvolnum></citerefentry>
+        for information on Forward Secure Sealing and for a link to a
+        refereed scholarly paper detailing the cryptographic theory it
+        is based on.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--force</option></term>
+
+        <listitem><para>When <option>--setup-keys</option> is passed
+        and Forward Secure Sealing (FSS) has already been configured,
+        recreate FSS keys.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--interval=</option></term>
 
-                <programlisting>journalctl _SYSTEMD_UNIT=avahi-daemon.service _PID=28097</programlisting>
+        <listitem><para>Specifies the change interval for the sealing
+        key when generating an FSS key pair with
+        <option>--setup-keys</option>. Shorter intervals increase CPU
+        consumption but shorten the time range of undetectable journal
+        alterations. Defaults to 15min.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--verify</option></term>
+
+        <listitem><para>Check the journal file for internal
+        consistency. If the file has been generated with FSS enabled and
+        the FSS verification key has been specified with
+        <option>--verify-key=</option>, authenticity of the journal file
+        is verified.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--verify-key=</option></term>
+
+        <listitem><para>Specifies the FSS verification key to use for
+        the <option>--verify</option> operation.</para></listitem>
+      </varlistentry>
+
+      <varlistentry>
+        <term><option>--flush</option></term>
+
+        <listitem><para>Asks the Journal daemon to flush any log data
+        stored in <filename>/run/log/journal</filename> into
+        <filename>/var/log/journal</filename>, if persistent storage is
+        enabled. This call does not return until the operation is
+        complete.</para></listitem>
+      </varlistentry>
 
-                <para>If two matches refer to the same field, all entries matching either expression are shown:</para>
+      <xi:include href="standard-options.xml" xpointer="help" />
+      <xi:include href="standard-options.xml" xpointer="version" />
+      <xi:include href="standard-options.xml" xpointer="no-pager" />
+    </variablelist>
+  </refsect1>
 
-                <programlisting>journalctl _SYSTEMD_UNIT=avahi-daemon.service _SYSTEMD_UNIT=dbus.service</programlisting>
+  <refsect1>
+    <title>Exit status</title>
 
-                <para>If the separator <literal>+</literal> is used,
-                two expressions may be combined in a logical OR. The
-                following will show all messages from the Avahi
-                service process with the PID 28097 plus all messages
-                from the D-Bus service (from any of its
-                processes):</para>
+    <para>On success, 0 is returned; otherwise, a non-zero failure
+    code is returned.</para>
+  </refsect1>
 
-                <programlisting>journalctl _SYSTEMD_UNIT=avahi-daemon.service _PID=28097 + _SYSTEMD_UNIT=dbus.service</programlisting>
+  <xi:include href="less-variables.xml" />
 
-                <para>Show all logs generated by the D-Bus executable:</para>
+  <refsect1>
+    <title>Examples</title>
 
-                <programlisting>journalctl /usr/bin/dbus-daemon</programlisting>
+    <para>Without arguments, all collected logs are shown
+    unfiltered:</para>
 
-                <para>Show all logs of the kernel device node <filename noindex='true'>/dev/sda</filename>:</para>
+    <programlisting>journalctl</programlisting>
 
-                <programlisting>journalctl /dev/sda</programlisting>
+    <para>With one match specified, all entries with a field matching
+    the expression are shown:</para>
 
-                <para>Show all kernel logs from previous boot:</para>
+    <programlisting>journalctl _SYSTEMD_UNIT=avahi-daemon.service</programlisting>
 
-                <programlisting>journalctl -k -b -1</programlisting>
+    <para>If two different fields are matched, only entries matching
+    both expressions at the same time are shown:</para>
 
-                <para>Show a live log display from a system service <filename>apache.service</filename>:</para>
+    <programlisting>journalctl _SYSTEMD_UNIT=avahi-daemon.service _PID=28097</programlisting>
 
-                <programlisting>journalctl -f -u apache</programlisting>
+    <para>If two matches refer to the same field, all entries matching
+    either expression are shown:</para>
 
-        </refsect1>
+    <programlisting>journalctl _SYSTEMD_UNIT=avahi-daemon.service _SYSTEMD_UNIT=dbus.service</programlisting>
 
-        <refsect1>
-                <title>See Also</title>
-                <para>
-                        <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>
-        </refsect1>
+    <para>If the separator <literal>+</literal> is used, two
+    expressions may be combined in a logical OR. The following will
+    show all messages from the Avahi service process with the PID
+    28097 plus all messages from the D-Bus service (from any of its
+    processes):</para>
+
+    <programlisting>journalctl _SYSTEMD_UNIT=avahi-daemon.service _PID=28097 + _SYSTEMD_UNIT=dbus.service</programlisting>
+
+    <para>Show all logs generated by the D-Bus executable:</para>
+
+    <programlisting>journalctl /usr/bin/dbus-daemon</programlisting>
+
+    <para>Show all logs of the kernel device node
+    <filename noindex='true'>/dev/sda</filename>:</para>
+
+    <programlisting>journalctl /dev/sda</programlisting>
+
+    <para>Show all kernel logs from previous boot:</para>
+
+    <programlisting>journalctl -k -b -1</programlisting>
+
+    <para>Show a live log display from a system service
+    <filename>apache.service</filename>:</para>
+
+    <programlisting>journalctl -f -u apache</programlisting>
+
+  </refsect1>
 
+  <refsect1>
+    <title>See Also</title>
+    <para>
+      <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>
+  </refsect1>
 </refentry>



More information about the systemd-commits mailing list