summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2024-09-23 11:41:29 +0200
committerZbigniew Jędrzejewski-Szmek <zbyszek@in.waw.pl>2024-09-23 12:09:43 +0200
commitace26a511ff63dbc15f1b2b0b941cbd3294a288c (patch)
treec18a560138dea7609504f98925110f8d96287955
parentrepart: Use swap format for swap partition even if encrypted (diff)
downloadsystemd-ace26a511ff63dbc15f1b2b0b941cbd3294a288c.tar.xz
systemd-ace26a511ff63dbc15f1b2b0b941cbd3294a288c.zip
man: slightly enhance docs about "exitrd" and remove TODO entry for it
The concept is fairly well established and present in our docs in various places. Say that the exitrd is also marked by the presence of /etc/initrd-release.
-rw-r--r--TODO6
-rw-r--r--man/bootup.xml11
-rw-r--r--man/os-release.xml6
3 files changed, 14 insertions, 9 deletions
diff --git a/TODO b/TODO
index 85bc780b33..773cdac8e3 100644
--- a/TODO
+++ b/TODO
@@ -1355,12 +1355,6 @@ Features:
CapabilityQuintet we already have. (This likely allows us to drop libcap
dep in the base OS image)
-* add concept for "exitrd" as inverse of "initrd", that we can transition to at
- shutdown, and has similar security semantics. This should then take the place
- of dracut's shutdown logic. Should probably support sysexts too. Care needs
- to be taken that the resulting logic ends up in RAM, i.e. is copied out of
- on-disk storage.
-
* userdbd: implement an additional varlink service socket that provides the
host user db in restricted form, then allow this to be bind mounted into
sandboxed environments that want the host database in minimal form. All
diff --git a/man/bootup.xml b/man/bootup.xml
index db98f4649a..bba3bd2d7d 100644
--- a/man/bootup.xml
+++ b/man/bootup.xml
@@ -344,6 +344,17 @@ systemd-reboot.service | | | |
</refsect1>
<refsect1>
+ <title>The exitrd</title>
+
+ <para>The "exitrd" is a concept symmetrical to the initrd. When the system manager is shutting down and
+ <filename>/run/initramfs/shutdown</filename> exists, it will switch root to
+ <filename>/run/initramfs/</filename> and execute <filename>/shutdown</filename>. This program runs from
+ the tmpfs mounted on <filename>/run/</filename>, so it can unmount the old root file system and perform
+ additional steps, for example dismantle complex storage or perform additional logging about the shutdown.
+ </para>
+ </refsect1>
+
+ <refsect1>
<title>See Also</title>
<para><simplelist type="inline">
<member><citerefentry><refentrytitle>systemd</refentrytitle><manvolnum>1</manvolnum></citerefentry></member>
diff --git a/man/os-release.xml b/man/os-release.xml
index 315ed8fcd6..1ff112e057 100644
--- a/man/os-release.xml
+++ b/man/os-release.xml
@@ -88,10 +88,10 @@
<refsect2>
<title><filename>/etc/initrd-release</filename></title>
- <para>In the <ulink
- url="https://docs.kernel.org/admin-guide/initrd.html">initrd</ulink>,
+ <para>In the <ulink url="https://docs.kernel.org/admin-guide/initrd.html">initrd</ulink>
+ and exitrd,
<filename>/etc/initrd-release</filename> plays the same role as <filename>os-release</filename> in the
- main system. Additionally, the presence of that file means that the system is in the initrd phase.
+ main system. Additionally, the presence of that file means that the system is in the initrd/exitrd phase.
<filename>/etc/os-release</filename> should be symlinked to <filename>/etc/initrd-release</filename>
(or vice versa), so programs that only look for <filename>/etc/os-release</filename> (as described
above) work correctly.</para>