Bug 1899903
| Summary: | grub2-mkconfig is never run on kernel upgrade even if GRUB_ENABLE_BLSCFG=false | |||
|---|---|---|---|---|
| Product: | Red Hat Enterprise Linux 8 | Reporter: | Welterlen Benoit <bwelterl> | |
| Component: | grub2 | Assignee: | Bootloader engineering team <bootloader-eng-team> | |
| Status: | CLOSED ERRATA | QA Contact: | Release Test Team <release-test-team-automation> | |
| Severity: | high | Docs Contact: | ||
| Priority: | unspecified | |||
| Version: | 8.2 | CC: | akhomic1, mlewando, msecaur, napoorsocapo, pjanda, pzatko, rharwood, rmetrich, sbarcomb, sgardner, subodh.sharma | |
| Target Milestone: | rc | Keywords: | Triaged | |
| Target Release: | 8.0 | Flags: | pm-rhel:
mirror+
|
|
| Hardware: | Unspecified | |||
| OS: | Unspecified | |||
| Whiteboard: | ||||
| Fixed In Version: | grub2-2.02-118.el8 | Doc Type: | If docs needed, set a value | |
| Doc Text: | Story Points: | --- | ||
| Clone Of: | ||||
| : | 2018331 (view as bug list) | Environment: | ||
| Last Closed: | 2022-05-10 15:31:42 UTC | Type: | Bug | |
| Regression: | --- | Mount Type: | --- | |
| Documentation: | --- | CRM: | ||
| Verified Versions: | Category: | --- | ||
| oVirt Team: | --- | RHEL 7.3 requirements from Atomic Host: | ||
| Cloudforms Team: | --- | Target Upstream Version: | ||
| Embargoed: | ||||
| Bug Depends On: | ||||
| Bug Blocks: | 2018331 | |||
|
Description
Welterlen Benoit
2020-11-20 10:59:55 UTC
I post my problem here because it is similar even though I am a fedora 33 (new)user. I apologize in case I had to open another bug
Problem with Grub2 on my pc without"BLSCFG” configuration.
My system:
Hard disk and mount points (all in ext4; is in this configuration from Fc19 or early)
sda (HD)
• sda1 “/home” + systemrescue “
ls -al /home:
drwxr-xr-x. 4 root root 4096 19 nov 17.40 .
• dr-xr-xr-x. 18 root root 4096 20 ott 01.36 ..
• drwx------. 125 alberto alberto 40960 24 nov 08.32 alberto
• drwx------. 2 root root 16384 7 lug 2012 lost+found
• -rw-------. 1 root root 720371712 19 nov 17.40 systemrescue-7.00-amd64.iso
sdb (SSD) (3 partitions)
• sdb1 “ / “ Fedora 31
• sdb2 “ / “ Fedora 33 (ex Fc29)
• sdb3 partition mounted in “/mnt/AreaSSD”
sdc (HD) (2 partition)
• sdc1 “ swap “ for Fc31 and Fc33 (same UUID in fstab; ~12 Gb for 16Gb ram)
• sdc2 partition mounted in “/mnt/Archivio”
sdd (HD) (1 partition)
• sdd1 partition mounted in “/mnt/Esterno”
*********************************
*********************************
Kernel at work: kernel-5.9.8-200.fc33.x86_64
Kernel 5.8.8 installed by anaconda already removed after BLSCFG modified and grub2-mkconfig manually used.
New kernel installed after dnf update: kernel-5.9.9-200.fc33.x86_64
Old kernel 5.9 not uninstalled.
After installation this are results of this command: more /boot/grub2/grub.cfg | grep 5.9
………………….
menuentry 'Fedora (5.9.8-200.fc33.x86_64) 33 (Xfce)' …..
linux /boot/vmlinuz-5.9.8-200.fc33.x86_64 r ……..
initrd /boot/initramfs-5.9.8-200.fc33.x86_64.img
………………….
NO new kernel in grub.cfg
Also this morning, dnf update kernel to 5.9.10-200.
No automatic upgrade grub.cfg
Note: runnig “grub2-mkconfig -o /boot/grub2/grub.cfg” don’t resolve problem with BLSCFG=true.
*****************************************
Infact, also in FC31, I had to change in “/etc/default/grub”
GRUB_ENABLE_BLSCFG=true in false.
Only after did this, I can execute manually:
grub2-mkconfig -o /boot/grub2/grub.cfg with this answer:
Generating grub configuration file ...
Found linux image: /boot/vmlinuz-5.9.9-200.fc33.x86_64
Found initrd image: /boot/initramfs-5.9.9-200.fc33.x86_64.img
Found linux image: /boot/vmlinuz-5.9.8-200.fc33.x86_64
Found initrd image: /boot/initramfs-5.9.8-200.fc33.x86_64.img
Found linux image: /boot/vmlinuz-0-rescue-e86ca5e6d0c24205b33e7f5015ba4329
Found initrd image: /boot/initramfs-0-rescue-e86ca5e6d0c24205b33e7f5015ba4329.img
Found Fedora 31 (Thirty One) on /dev/sdb1
done
So:
1) without BLSCFG = “false” grub2-mkconfig (manually used) don’t work.
2) dnf update kernels, but every time I have to execute manually “grub2-mkconfig”if I want use it from boot menu.
*******************************************************************
Another thing:
I wrote commands in “ /etc/grub.d/40_custom “ to use systemrescue.
menuentry "SystemRescue 7.00 (isoloop)" {
load_video
insmod gzio
insmod part_gpt
insmod part_msdos
insmod ext2
search --no-floppy --label home --set root='(hd1,1)'
loopback loop (hd1,1)/systemrescue-7.00-amd64.iso
echo 'Loading kernel ...'
linux (loop)/sysresccd/boot/x86_64/vmlinuz img_label=home img_loop=/systemrescue-7.00-amd64.iso archisobasedir=sysresccd copytoram setkmap=it
echo 'Loading initramfs ...'
initrd (loop)/sysresccd/boot/x86_64/sysresccd.img
}
When I switch on my pc this menuentry appear in the menu (and I can use it), but, as you can see up it doesn’t appear on screen when grub2-mkconfig run.
I hope in future grub-mkconfig will do its work also it shall not say me.
Hy
Alberto Chiodi
Hello,
Another situation where anaconda does not enable BLS support on Xen (AWS), but grub2-mkconfig is not run on kernel install:
---
anaconda/grub2.py at f0df778cc43e2494fdd0fad131aa8643590510ac · rhinstaller/anaconda · GitHub
https://github.com/rhinstaller/anaconda/blob/f0df778cc43e2494fdd0fad131aa8643590510ac/pyanaconda/modules/storage/bootloader/grub2.py#L252
if self.use_bls and os.path.exists(conf.target.system_root + "/usr/sbin/new-kernel-pkg"):
log.warning("BLS support disabled due new-kernel-pkg being present")
self.use_bls = False
hv_type_path = "/sys/hypervisor/type"
if self.use_bls and os.access(hv_type_path, os.F_OK):
with open(hv_type_path, "r") as fd:
if fd.readline().strip() == "xen":
log.warning("BLS support disabled because is a Xen machine")
self.use_bls = False
if self.use_bls:
defaults.write("GRUB_ENABLE_BLSCFG=true\n")
defaults.close()
~~~~~~~~~~~~~~~~
commit 6e268894c2484258ff98e399edef953e4bf4cfcc
Author: Javier Martinez Canillas <javierm>
Date: Thu Oct 24 18:24:19 2019 +0200
Don't enable BLS for Xen machines
PV and PVH Xen DomU guests boot with pygrub that doesn't have BLS support.
Also Xen Dom0 use the menuentries from 20_linux_xen and not the ones from
10_linux. So BLS support needs to be disabled for both Xen Dom0 and DomU
and use a traditional grub.cfg file generated by the grub2-mkconfig tool.
Related: rhbz#1703700
~~~~~~~~~~~~~~~~
- BLS is supported on AWS
And in fedora, this is fixed by: https://bugzilla.redhat.com/show_bug.cgi?id=1703700
---
if [[ $HV_TYPE = "xen" && $XEN_DOM0 != "true" ]]; then
RUN_MKCONFIG=true
if grep -q '^GRUB_ENABLE_BLSCFG="*true"*\s*$' /etc/default/grub; then
sed -i 's/^GRUB_ENABLE_BLSCFG=.*/GRUB_ENABLE_BLSCFG=false/' /etc/default/grub
fi
fi
---
Thank you
Benoit Welterlen
Since the problem described in this bug report should be resolved in a recent advisory, it has been closed with a resolution of ERRATA. For information on the advisory (Low: grub2 security, bug fix, and enhancement update), and where to find the updated files, follow the link below. If the solution does not work for you, open a new bug report. https://access.redhat.com/errata/RHSA-2022:2110 |