2018-02-19 13:56 UTC

View Issue Details Jump to Notes ]
IDProjectCategoryView StatusLast Update
0014409CentOS-7dracutpublic2018-02-12 17:24
ReporterGregoryYoung 
PriorityhighSeverityblockReproducibilityalways
StatusnewResolutionopen 
PlatformHyper-V Generation 2 with UEFIOSCentOS 7 x86_64OS Version7.4.1708
Product Version7.4.1708 
Target VersionFixed in Version 
Summary0014409: Kernel upgrade error with missing dracut module
DescriptionOn UEFI systems, dracut cannot update the initramfs due to the missing vfat dracut module.

The error is somewhat misleading. Adding the vfat module to the dracut modules option does not fix the issue, adding "uefi-libs" to the dracut modules list does.

On UEFI systems, dracut should be configured to load this module as it is required. From the CentOS perspective, the /etc/dracut.conf should be modified during install on UEFI systems to include the "uefi-libs" module:

Patch:

19c19
< #add_dracutmodules+=""
---
> add_dracutmodules+="uefi-lib"
Steps To Reproduce1. Install CentOS 7.4.1708 from the minimal ISO on Hyper-V as a Generation 2 VM with UEFI enabled.
2. Upgrade the kernel to latest:

yum -y update kernel

3. Note the error:

dracut module 'vfat' cannot be found or installed.
mkinitrd failed
warning: %posttrans(kernel-3.10.0-693.11.6.el7.x86_64) scriptlet failed, exit status 1
Non-fatal POSTTRANS scriptlet failure in rpm package kernel-3.10.0-693.11.6.el7.x86_64

4. Reboot.
5. Select the new kernel. Note the kernel panic.
6. Reboot.
7. Select the old kernel.
8. Check /boot, not the initramfs is missing for the new kernel.
9. edit /etc/dracut.conf

19c19
< #add_dracutmodules+=""
---
> add_dracutmodules+="uefi-lib"

10. mkinitrd or yum -y reinstall kernel
11. Note no error.
12. Check /boot and see the initramfs is now present.
13. Reboot.
14. Select the new kernel (yes, odds are you will experience the grub2 default boot item issue, which I believe is fixed in the next grub2 build for CentOS 7).
15. System boots as expected.
Additional Information[root@localhost tmp]# yum update kernel
Loaded plugins: fastestmirror, langpacks
base | 3.6 kB 00:00:00
extras | 3.4 kB 00:00:00
updates | 3.4 kB 00:00:00
(1/2): extras/7/x86_64/primary_db | 145 kB 00:00:00
(2/2): updates/7/x86_64/primary_db | 5.3 MB 00:00:02
Determining fastest mirrors
 * base: mirror.scalabledns.com
 * extras: mirrors.umflint.edu
 * updates: centos.mirrors.tds.net
Resolving Dependencies
--> Running transaction check
---> Package kernel.x86_64 0:3.10.0-693.11.6.el7 will be installed
--> Finished Dependency Resolution

Dependencies Resolved

====================================================================================================
 Package Arch Version Repository Size
====================================================================================================
Installing:
 kernel x86_64 3.10.0-693.11.6.el7 updates 43 M

Transaction Summary
====================================================================================================
Install 1 Package

Total download size: 43 M
Installed size: 59 M
Is this ok [y/d/N]: y
Downloading packages:
updates/7/x86_64/prestodelta | 680 kB 00:00:03
kernel-3.10.0-693.11.6.el7.x86_64.rpm | 43 MB 00:01:01
Running transaction check
Running transaction test
Transaction test succeeded
Running transaction
  Installing : kernel-3.10.0-693.11.6.el7.x86_64 1/1
dracut module 'vfat' cannot be found or installed.
mkinitrd failed
warning: %posttrans(kernel-3.10.0-693.11.6.el7.x86_64) scriptlet failed, exit status 1
Non-fatal POSTTRANS scriptlet failure in rpm package kernel-3.10.0-693.11.6.el7.x86_64
  Verifying : kernel-3.10.0-693.11.6.el7.x86_64 1/1

Installed:
  kernel.x86_64 0:3.10.0-693.11.6.el7

Complete!
[root@localhost tmp]# uname -a
Linux localhost.localdomain 3.10.0-693.5.2.el7.x86_64 #1 SMP Fri Oct 20 20:32:50 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Tagsdracut, efi, initrd, kernel
abrt_hash
URL
Attached Files

-Relationships
+Relationships

-Notes

~0031017

avij (manager)

Interesting, but please file a bug at bugzilla.redhat.com against RHEL 7 so that this would get fixed. CentOS does not do such modifications.

Note that this might be related to Hyper-V. My bare metal UEFI system does not complain about that vfat module. I don't have access to Hyper-V so that I could test myself.

~0031215

GregoryYoung (reporter)

Added RedHat bug 1544511.

https://bugzilla.redhat.com/show_bug.cgi?id=1544511
+Notes

-Issue History
Date Modified Username Field Change
2018-01-24 16:58 GregoryYoung New Issue
2018-01-24 16:58 GregoryYoung Tag Attached: dracut
2018-01-24 16:58 GregoryYoung Tag Attached: efi
2018-01-24 16:58 GregoryYoung Tag Attached: initrd
2018-01-24 16:58 GregoryYoung Tag Attached: kernel
2018-01-24 22:02 avij Note Added: 0031017
2018-01-24 22:44 toracat Additional Information Updated View Revisions
2018-02-12 17:24 GregoryYoung Note Added: 0031215
+Issue History