X-Git-Url: http://www.chiark.greenend.org.uk/ucgi/~ianmdlvl/git?p=elogind.git;a=blobdiff_plain;f=man%2Fbootup.xml;h=a596e85b70aaa567cb6522bdde6063793ab996f5;hp=a1fe3d81cdced8cd38849231ff90697ca1ea5b0a;hb=3baed19327663d012c3313b72cc5b3d02a58720a;hpb=d8a9ae897b512644e1b5cd45b7885713bbb96213 diff --git a/man/bootup.xml b/man/bootup.xml index a1fe3d81c..a596e85b7 100644 --- a/man/bootup.xml +++ b/man/bootup.xml @@ -50,18 +50,20 @@ Description - A number of different components are involved in the - system boot. Immediately after power-up, the system - BIOS will do minimal hardware initialization, and hand - control over to a boot loader stored on a persistent - storage device. This boot loader will then invoke an - OS kernel from disk (or the network). In the Linux - case this kernel now (optionally) extracts and + A number of different components are involved in + the system boot. Immediately after power-up, the + system BIOS will do minimal hardware initialization, + and hand control over to a boot loader stored on a + persistent storage device. This boot loader will then + invoke an OS kernel from disk (or the network). In the + Linux case this kernel (optionally) extracts and executes an initial RAM disk image (initrd) such as dracut8 - which looks for the root file system. After the root - file system is found and mounted the initrd hands over - control to the system manager (such as + which looks for the root file system (possibly using + systemd1 + for this). After the root file system is found and + mounted the initrd hands over control to the host's + system manager (such as systemd1) stored on the OS image which is then responsible for probing all remaining hardware, mounting all necessary @@ -132,35 +134,35 @@ v sysinit.target | - _________________/|\___________________ - / | \ - | | | - v | v - (various | rescue.service - sockets...) | | - | | v - v | rescue.target - sockets.target | - | | - \_________________ | - \| + ____________________________________/|\________________________________________ + / | | | \ + | | | | | + v v | v v + (various (various | (various rescue.service + timers...) paths...) | sockets...) | + | | | | v + v v | v rescue.target + timers.target paths.target | sockets.target + | | | | + \__________________|_________________ | ___________________/ + \|/ v basic.target | - __________________________________/| emergency.service - / | | | - | | | v - v v v emergency.target - display- (various system (various system - manager.service services services) - | required for | - | graphical UIs) v - | | multi-user.target - | | | - \_______________ | _________________/ + ____________________________________/| emergency.service + / | | | + | | | v + v v v emergency.target + display- (various system (various system + manager.service services services) + | required for | + | graphical UIs) v + | | multi-user.target + | | | + \_________________ | _________________/ \|/ v - graphical.target + graphical.target Target units that are commonly used as boot targets are emphasized. These @@ -174,23 +176,41 @@ - Initrd System Manager Bootup - The default target in the initrd is the initrd-fs.target. The bootup process is - identical to the System Manager Bootup until it reaches basic.target. From there, - systemd approaches the special initrd.target. If the root device can be mounted at - /sysroot, the sysroot.mount unit becomes active and the initrd-root-fs.target is - reached. - The initrd-parse-etc.service scans /sysroot/etc/fstab for a possible /usr mountpoint - and additional entries marked with the x-initrd.mount option. - All entries found are mounted below /sysroot, and the initrd-fs.target is reached. - The initrd-cleanup.service isolates to the initrd-switch-root.target, where cleanup - services can run. As the very last step, the initrd-switch-root.service is activated, - which will cause the system to switch its root to /sysroot. + Bootup in the Initial RAM Disk (initrd) + The initial RAM disk implementation (initrd) can + be set up using systemd as well. In this case boot up + inside the initrd follows the following + structure. + + The default target in the initrd is + initrd.target. The bootup process + begins identical to the system manager bootup (see + above) until it reaches + basic.target. From there, systemd + approaches the special target + initrd.target. If the root device + can be mounted at /sysroot, the + sysroot.mount unit becomes active + and initrd-root-fs.target is + reached. The service + initrd-parse-etc.service scans + /sysroot/etc/fstab for a possible + /usr mount point and additional + entries marked with the + x-initrd.mount option. All + entries found are mounted below + /sysroot, and + initrd-fs.target is reached. The + service initrd-cleanup.service + isolates to the + initrd-switch-root.target, where + cleanup services can run. As the very last step, the + initrd-switch-root.service is + activated, which will cause the system to switch its + root to /sysroot. - - (identical to System Manager Bootup) - : + : (beginning identical to above) : v basic.target @@ -203,17 +223,16 @@ | initrd-root-fs.target | | | v - | initrd-parse-etc.service - (custom initrd services) | - | v + v initrd-parse-etc.service + (custom initrd | + services...) v | (sysroot-usr.mount and | various mounts marked | with fstab option - | x-initrd.mount) + | x-initrd.mount...) | | | v | initrd-fs.target - | | \______________________ | \| v @@ -226,11 +245,11 @@ | v ______________________/| - / | + / v | initrd-udevadm-cleanup-db.service - | | - (custom initrd services) | - | | + v | + (custom initrd | + services...) | \______________________ | \| v @@ -240,17 +259,16 @@ initrd-switch-root.service | v - switch-root - + Transition to Host OS System Manager Shutdown - System shutdown also consists of various target - units with some minimal ordering structure - applied: + System shutdown with systemd also consists of + various target units with some minimal ordering + structure applied: