# systemd-bless-boot.service

## NAME



           systemd-bless-boot.service, systemd-bless-boot - Mark current boot
           process as successful
    


## SYNOPSIS



           systemd-bless-boot.service
    
           /usr/lib/systemd/systemd-bless-boot
    


## DESCRIPTION



           systemd-bless-boot.service is a system service that marks the
           current boot process as successful. It's automatically pulled into
           the initial transaction when systemd-bless-boot-generator(8)
           detects that systemd-boot(7) style boot counting is used.
    
           Internally, the service operates based on the _LoaderBootCountPath_
           EFI variable (of the vendor UUID
           **4a67b082-0a4c-41cf-b6c7-440b29bb8c4f**), which is passed from the
           boot loader to the OS. It contains a file system path (relative to
           the EFI system partition) of the **Boot Loader Specification******[1]
           compliant boot loader entry file or unified kernel image file that
           was used to boot up the system.**systemd-bless-boot.service**
           removes the two "tries done" and "tries left" numeric boot
           counters from the filename, which indicates to future invocations
           of the boot loader that the entry has completed booting
           successfully at least once. (This service will hence rename the
           boot loader entry file or unified kernel image file on the first
           successful boot.)
    


## OPTIONS



           The /usr/lib/systemd/systemd-bless-boot executable may also be
           invoked from the command line, taking one of the following command
           arguments:
    
           **status**
               The current status of the boot loader entry file or unified
               kernel image file is shown. This outputs one of "good", "bad",
               "indeterminate", "clean", "dirty", depending on the state and
               previous invocations of the command. The string
               "indeterminate" is shown initially after boot, before it has
               been marked as "good" or "bad". The string "good" is shown
               after the boot was marked as "good" with the **good** command
               below, and "bad" conversely after the **bad** command was invoked.
               The string "clean" is returned when boot counting is currently
               not in effect (which includes the case where the current entry
               was already marked as persistently good). The string "dirty"
               is returned when the system is booted up with a known-bad
               kernel (i.e. one where the tries left counter has previously
               reached zero already).
    
               This command is implied if no command argument is specified.
    
               Added in version 240.
    
           **good**
               When invoked, the current boot loader entry file or unified
               kernel image file will be marked as "good", executing the file
               rename operation described above. This command is intended to
               be invoked at the end of a successful boot. The
               systemd-bless-boot.service unit invokes this command.
    
               Added in version 240.
    
           **bad**
               When called the "tries left" counter in the boot loader entry
               file name or unified kernel image file name is set to zero,
               marking the boot loader entry or kernel image as "bad", so
               that the boot loader will not consider it anymore on future
               boots (at least as long as there are other entries available
               that are not marked "bad" yet). This command is normally not
               executed, but can be used to instantly put an end to the boot
               counting logic if a problem is detected and persistently mark
               the boot entry as bad.
    
               Added in version 240.
    
           **indeterminate**
               This command undoes any marking of the current boot loader
               entry file or unified kernel image file as good or bad. This
               is implemented by renaming the boot loader entry file or
               unified kernel image file back to the path encoded in the
               _LoaderBootCountPath_ EFI variable. Note that operation will
               fail if the current kernel is not booted with boot counting
               enabled (i.e. if the EFI variable is not set). If the boot
               counter already reached zero tries left on a previous boot
               this operation will fail too: once an entry is marked **bad** it
               can only be reset to **good** again, but not to **indeterminate**.
    
               Added in version 240.
    
           **-h** , **--help**
               Print a short help text and exit.
    
           **--version**
               Print a short version string and exit.
    


## NOTES



            1. Boot Loader Specification
               https://uapi-group.org/specifications/specs/boot_loader_specification
    


* * *