update-bootloader, pbl - manage boot loader configuration.
update-bootloader is a light wrapper to unify some common boot loader configuration tasks.
pbl is an alternative name for the same program.
It is not intended to provide a comprehensive API to boot loader configuration.
Most notably, not all options make sense for all boot loaders.
Supported boot loaders have a sub directory in /usr/lib/bootloader containing a shell script for each option. To add support for a new boot loader create a new directoy with its name and add scripts for options you need.
- --install
-
Install (or update) boot loader.
Note that this does not update the boot loader configuration. - --config
-
Create (or update) boot loader configuration.
- --show
-
Print current boot loader.
- --loader _BOOTLOADER
-
Set current boot loader to BOOTLOADER.
Supported values: none, grub2, grub2-bls, grub2-efi, systemd-boot, u-boot.
Note that this only changes a config variable. To actually use the new boot loader, run update-bootloader --install and update-bootloader --config. - --default ENTRY
-
Set default boot entry to ENTRY.
- --add-option OPTION
-
Add OPTION to default boot options.
- --del-option OPTION
-
Delete OPTION from default boot options.
- --get-option OPTION
-
Get OPTION from default boot options.
- --add-kernel VERSION [KERNEL [INITRD]]
-
Add kernel with version VERSION. Optionally pass kernel and initrd explicitly.
- --remove-kernel VERSION
-
Remove kernel with version VERSION.
- --default-settings
-
Print default kernel, initrd, and boot options.
- --log LOGFILE
-
Log messages to LOGFILE (default: /var/log/pbl.log).
- --version
-
Show update-bootloader version.
- --help
-
Write this help text.
- --reinit
-
Re-install boot loader (equivalent to --install --config).
- --add
-
Add new entry to boot loader configuration. Requires also --name, --image, and --initrd options. Use --add-kernel instead.
- --image KERNEL
-
Use KERNEL as kernel when adding a boot loader entry.
- --initrd INITRD
-
Use INITRD as initrd when adding a boot loader entry.
- --name VERSION
-
Use VERSION as name for new boot loader entry.
- --force
-
This option is ignored.
- /etc/sysconfig/bootloader
-
General boot loader related configuration settings.
- /var/log/pbl.log
-
Default log file.
- /usr/etc/logrotate.d/pbl
-
Logrotate rules for /var/log/pbl.log.
- /usr/lib/bootloader
-
Directory with specific config scripts for each supported boot loader.
# display default boot loader update-bootloader --show # change default boot loader update-bootloader --loader systemd-boot # (re-)install default boot loader update-bootloader --install # update boot loader configuration update-bootloader --config
-
The Boot Loader Specification: https://uapi-group.org/specifications/specs/boot_loader_specification
-
The Discoverable Partitions Specification: https://uapi-group.org/specifications/specs/discoverable_partitions_specification
-
grub2: https://www.gnu.org/software/grub/manual/grub/grub.html
-
systemd-boot: https://www.freedesktop.org/software/systemd/man/systemd-boot.html
-
u-boot: http://www.denx.de/wiki/U-Boot
-
UEFI Specification: https://uefi.org/specifications