]> git.ipfire.org Git - thirdparty/systemd.git/blobdiff - man/bootup.xml
man: fix incorrectly placed full stop
[thirdparty/systemd.git] / man / bootup.xml
index 55b3eb8a332ce488ba96f7a749135aaa38b9c571..26f762bf816e220c3042fc37c6f22208853e628f 100644 (file)
@@ -32,7 +32,7 @@
     of firmware, this firmware may also load the kernel directly.</para>
 
     <para>The kernel (optionally) mounts an in-memory file system, often generated by
-    <citerefentry project='die-net'><refentrytitle>dracut</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
+    <citerefentry project='man-pages'><refentrytitle>dracut</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
     which looks for the root file system. Nowadays this is usually implemented as an initramfs — a compressed
     archive which is extracted when the kernel boots up into a lightweight in-memory file system based on
     tmpfs, but in the past normal file systems using an in-memory block device (ramdisk) were used, and the
 
     <!-- note: do not use unicode ellipsis here, because docbook will replace that
          with three dots anyway, messing up alignment -->
-<programlisting>(various cryptsetup
-     devices...)
-         |
-         v
-  cryptsetup.target
-         |
-         v
- local-fs-pre.target
-         |
-         v
-(various mounts and   (various swap
- fsck services...)     devices...)                        (various low-level      (various low-level
-         |                  |                              services: udevd,        API VFS mounts:
-         v                  v                              tmpfiles, random        mqueue, configfs,
-  local-fs.target      swap.target                         seed, sysctl, ...)      debugfs, ...)
-         |                  |                                     |                      |
-         \__________________|_________________   _________________|______________________/
-                                              \ /
-                                               v
-                                        sysinit.target
-                                               |
-          ____________________________________/|\________________________________________
-         /                  |                  |                    |                    \
-         |                  |                  |                    |                    |
-         v                  v                  |                    v                    v
-     (various           (various               |                (various          rescue.service
-    timers...)          paths...)              |               sockets...)               |
-         |                  |                  |                    |                    v
-         v                  v                  |                    v              <emphasis>rescue.target</emphasis>
-   timers.target      paths.target             |             sockets.target
-         |                  |                  |                    |
-         v                  \_________________ | ___________________/
-                                              \|/
-                                               v
-                                         basic.target
-                                               |
-          ____________________________________/|                                 emergency.service
-         /                  |                  |                                         |
-         |                  |                  |                                         v
-         v                  v                  v                                 <emphasis>emergency.target</emphasis>
-     display-        (various system    (various system
- manager.service         services           services)
-         |             required for            |
-         |            graphical UIs)           v
-         |                  |           <emphasis>multi-user.target</emphasis>
-         |                  |                  |
-         \_________________ | _________________/
-                           \|/
-                            v
-                  <emphasis>graphical.target</emphasis></programlisting>
+<programlisting>                                     cryptsetup-pre.target
+                                                  |
+(various low-level                                v
+ API VFS mounts:                 (various cryptsetup devices...)
+ mqueue, configfs,                                |    |
+ debugfs, ...)                                    v    |
+ |                                  cryptsetup.target  |
+ |  (various swap                                 |    |    remote-fs-pre.target
+ |   devices...)                                  |    |     |        |
+ |    |                                           |    |     |        v
+ |    v                       local-fs-pre.target |    |     |  (network file systems)
+ |  swap.target                       |           |    v     v                 |
+ |    |                               v           |  remote-cryptsetup.target  |
+ |    |  (various low-level  (various mounts and  |             |              |
+ |    |   services: udevd,    fsck services...)   |             |    remote-fs.target
+ |    |   tmpfiles, random            |           |             |             /
+ |    |   seed, sysctl, ...)          v           |             |            /
+ |    |      |                 local-fs.target    |             |           /
+ |    |      |                        |           |             |          /
+ \____|______|_______________   ______|___________/             |         /
+                             \ /                                |        /
+                              v                                 |       /
+                       sysinit.target                           |      /
+                              |                                 |     /
+       ______________________/|\_____________________           |    /
+      /              |        |      |               \          |   /
+      |              |        |      |               |          |  /
+      v              v        |      v               |          | /
+ (various       (various      |  (various            |          |/
+  timers...)      paths...)   |   sockets...)        |          |
+      |              |        |      |               |          |
+      v              v        |      v               |          |
+timers.target  paths.target   |  sockets.target      |          |
+      |              |        |      |               v          |
+      v              \_______ | _____/         rescue.service   |
+                             \|/                     |          |
+                              v                      v          |
+                          basic.target         <emphasis>rescue.target</emphasis>    |
+                              |                                 |
+                      ________v____________________             |
+                     /              |              \            |
+                     |              |              |            |
+                     v              v              v            |
+                 display-    (various system   (various system  |
+             manager.service     services        services)      |
+                     |         required for        |            |
+                     |        graphical UIs)       v            v
+                     |              |            <emphasis>multi-user.target</emphasis>
+emergency.service    |              |              |
+        |            \_____________ | _____________/
+        v                          \|/
+<emphasis>emergency.target</emphasis>                    v
+                              <emphasis>graphical.target</emphasis></programlisting>
 
     <para>Target units that are commonly used as boot targets are
     <emphasis>emphasized</emphasis>. These units are good choices as
     later in boot.</para>
   </refsect1>
 
+  <refsect1>
+    <title>User manager startup</title>
+
+    <para>The system manager starts the <filename>user@<replaceable>uid</replaceable>.service</filename> unit
+    for each user, which launches a separate unprivileged instance of <command>systemd</command> for each
+    user — the user manager. Similarly to the system manager, the user manager starts units which are pulled
+    in by <filename>default.target</filename>. The following chart is a structural overview of the well-known
+    user units. For non-graphical sessions, <filename>default.target</filename> is used. Whenever the user
+    logs into a graphical session, the login manager will start the
+    <filename>graphical-session.target</filename> target that is used to pull in units required for the
+    graphical session. A number of targets (shown on the right side) are started when specific hardware is
+    available to the user.</para>
+
+<programlisting>
+    (various           (various         (various
+     timers...)         paths...)        sockets...)    (sound devices)
+         |                  |                 |               |
+         v                  v                 v               v
+   timers.target      paths.target     sockets.target    sound.target
+         |                  |                 |
+         \______________   _|_________________/         (bluetooth devices)
+                        \ /                                   |
+                         V                                    v
+                   basic.target                          bluetooth.target
+                         |
+              __________/ \_______                      (smartcard devices)
+             /                    \                           |
+             |                    |                           v
+             |                    v                      smartcard.target
+             v            graphical-session-pre.target
+ (various user services)          |                       (printers)
+             |                    v                           |
+             |       (services for the graphical session)     v
+             |                    |                       printer.target
+             v                    v
+      <emphasis>default.target</emphasis>      graphical-session.target</programlisting>
+
+  </refsect1>
+
   <refsect1>
     <title>Bootup in the Initial RAM Disk (initrd)</title>
     <para>The initial RAM disk implementation (initrd) can be set up
     so no filesystems can be mounted before the check is complete.
 
     When the root device becomes available,
-    <filename>initd-root-device.target</filename> is reached.
+    <filename>initrd-root-device.target</filename> is reached.
     If the root device can be mounted at
     <filename>/sysroot</filename>, the
     <filename>sysroot.mount</filename> unit becomes active and
@@ -307,7 +349,7 @@ systemd-reboot.service   systemd-poweroff.service   systemd-halt.service   syste
       <citerefentry><refentrytitle>systemd.special</refentrytitle><manvolnum>7</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>systemd.target</refentrytitle><manvolnum>5</manvolnum></citerefentry>,
       <citerefentry><refentrytitle>systemd-halt.service</refentrytitle><manvolnum>8</manvolnum></citerefentry>,
-      <citerefentry project='die-net'><refentrytitle>dracut</refentrytitle><manvolnum>8</manvolnum></citerefentry>
+      <citerefentry project='man-pages'><refentrytitle>dracut</refentrytitle><manvolnum>8</manvolnum></citerefentry>
     </para>
   </refsect1>