1SYSTEMD-BLESS-BOOT.SERVICE(s8y)stemd-bless-boot.serviScYeSTEMD-BLESS-BOOT.SERVICE(8)
2
3
4
6 systemd-bless-boot.service - Mark current boot process as successful
7
9 systemd-bless-boot.service
10
11 /usr/lib/systemd/system-bless-boot
12
14 systemd-bless-boot.service is a system service that marks the current
15 boot process as successful. It's automatically pulled into the initial
16 transaction when systemd-bless-boot-generator(8) detects that systemd-
17 boot(7) style boot counting is used.
18
19 Internally, the service operates based on the LoaderBootCountPath EFI
20 variable (of the vendor UUID 4a67b082-0a4c-41cf-b6c7-440b29bb8c4),
21 which is passed from the boot loader to the OS. It contains a file
22 system path (relative to the EFI system partition) of the Boot Loader
23 Specification[1] compliant boot loader entry file or unified kernel
24 image file that was used to boot up the system.
25 systemd-bless-boot.service removes the two 'tries done' and 'tries
26 left' numeric boot counters from the filename, which indicates to
27 future invocations of the boot loader that the entry has completed
28 booting successfully at least once. (This service will hence rename the
29 boot loader entry file or unified kernel image file on the first
30 successful boot.)
31
33 The /usr/lib/systemd/system-bless-boot executable may also be invoked
34 from the command line, taking one of the following command arguments:
35
36 status
37 The current status of the boot loader entry file or unified kernel
38 image file is shown. This outputs one of "good", "bad",
39 "indeterminate", "clean", depending on the state and previous
40 invocations of the command. The string "indeterminate" is shown
41 initially after boot, before it has been marked as "good" or "bad".
42 The string "good" is shown after the boot was marked as "good" with
43 the good command below, and "bad" conversely after the bad command
44 was invoked. The string "clean" is returned when boot counting is
45 currently not in effect.
46
47 This command is implied if no command argument is specified.
48
49 good
50 When invoked, the current boot loader entry file or unified kernel
51 image file will be marked as "good", executing the file rename
52 operation described above. This command is intended to be invoked
53 at the end of a successful boot. The systemd-bless-boot.service
54 unit invokes this command.
55
56 bad
57 When called the 'tries left' counter in the boot loader entry file
58 name or unified kernel image file name is set to zero, marking the
59 boot loader entry or kernel image as "bad", so that the boot loader
60 won't consider it anymore on future boots (at least as long as
61 there are other entries available that are not marked "bad" yet).
62 This command is normally not executed, but can be used to instantly
63 put an end to the boot counting logic if a problem is detected and
64 persistently mark the boot entry as bad.
65
66 indeterminate
67 This command undoes any marking of the current boot loader entry
68 file or unified kernel image file as good or bad. This is
69 implemented by renaming the boot loader entry file or unified
70 kernel image file back to the path encoded in the
71 LoaderBootCountPath EFI variable.
72
73 -h, --help
74 Print a short help text and exit.
75
76 --version
77 Print a short version string and exit.
78
80 systemd(1), systemd-boot(7), systemd.special(1)
81
83 1. Boot Loader Specification
84 https://systemd.io/BOOT_LOADER_SPECIFICATION
85
86
87
88systemd 241 SYSTEMD-BLESS-BOOT.SERVICE(8)