1
0
Fork 0
Commit graph

1 commit

Author SHA1 Message Date
Jaroslav Škarvada
5b8a2d2e8e plugins: added bootloader plugin
This plugin can be used to add parameters to kernel (boot/dracut)
command line. Currently only grub2 bootloader is used and reboot
is required to apply the tunings. The tuning can be only unloaded
by profile change followed by reboot.

It patches grub.cfg at runtime and installs /etc/grub.d/00_tuned
grub2 template. So it's possible to regenerate grub.cfg by
grub2-mkconfig and the tuning persists.

It also patches /etc/default/grub and adds tuned_params grub2 variable
to GRUB_CMDLINE_LINUX. This is probably the only way how to get
variables into kernel command line in grub.cfg. Nothing else is added to
/etc/default and it's patched if the plugin is used for the first
time. It's re-patched on plugin initialization only if the tuned_params
variable is missing.

On subsequent invocation only the tuned_params grub2 variable and
grub.cfg are changed.

Example of use:

[bootloader]
cmdline=quiet

This adds "quiet" parameter to the kernel boot command line (reboot
is required).

EFI is also supported. By default it autodetects redhat and fedora
directories (in this order). Nothing else is touched. If you have
different EFI system and your grub.cfg location is not auto-detected
or your grub.cfg is located on different place you can specify
the grub.cfg location manually:

[bootloader]
grub2_cfg_file=CUSTOM_PATH/grub.cfg
cmdline=quiet

This has precedence over auto-detection. This is used for runtime
patching. In case it is not set correctly, the grub.cfg patching
will not work, but you can still regenerate the config by hand by
grub2-mkconfig.

Resolves: rhbz#1044111

Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
2014-09-29 16:33:56 +02:00