Red Hat Training

A Red Hat training course is available for Red Hat Enterprise Linux

4.108. mkinitrd

Updated mkinitrd packages that fix one bug are now available for Red Hat Enterprise Linux 5.
The mkinitrd utility creates file system images for use as initial RAM disk (initrd) images.

Bug Fix

BZ#753693
Due to an incomplete regular expression in the code, the mkinitrd utility did not recognize multipath devices located in the /dev/mpath/ directory. As a consequence, the system could not boot if such a multipath device contained the root file system. With this update, the regular expression has been corrected, and mkinitrd now correctly recognizes multipath devices in the /dev/mpath/ directory.
All users of mkinitrd are advised to upgrade to these updated packages, which fix this bug.
Updated mkinitrd packages that fix multiple bugs are now available for Red Hat Enterprise Linux 5.
The mkinitrd utility creates the initrd file system image. The initrd image is an initial RAM disk that is loaded by a boot loader before the Linux kernel is started.

Bug Fixes

BZ#512892
Previously, due to missing code in the mkinitrd script, if two or more RAID arrays of the same level were created during installation, the raid456.ko module was loaded for every array of the same level. The system continued to boot but error messages for the second and subsequent arrays were displayed as follows:
insmod: error inserting '/lib/raid456.ko': -1 File exists
With this update the code has been improved and the mkinitrd script no longer attempts to load duplicate modules.
BZ#529158
Prior to this update, although the mkinitrd script included commands to setup a bonded connection, it did not configure the bonding mode first. Consequently, the bonded connection did not work and a host could not boot if the root partition on an iSCSI device was attached by a bonded channel. With this update, a patch has been applied to mkinitrd and hosts can now boot when their root partitions are on iSCSI devices attached by bonded connections.
BZ#532207
When probing for the root device, mkinitrd did not use the full device path for the root device when using LABEL-based mounts with iSCSI RAID arrays. Consequently, the following error message was logged when updating the kernel:
/sbin/scsi_id: option requires an argument -- s
With this update, a patch has been applied to mkinitrd and the error messages are no longer generated in the scenario described.
BZ#593096
Due to a regression, if the system's lvm.conf file had the command_names or prefix directives set, the output from lvm.static would be corrupted. With this update a patch has been applied to override the system settings while running mkinitrd and the initrd image created now has an uncorrupted lvm.conf file.
BZ#602409
Prior to this update, nash, the linuxrc image script interpreter, did not support the dirsync mount option for ext3 file systems. Consequently, if the dirsync option was used for the root file system in the file systems table (fstab), the system did not boot. The following error message was logged:
EXT3-fs: Unrecognized mount option "dirsync" or missing value
This update includes a patch to support the dirsync option with the mount command and synchronous directory modifications can now be made while using ext3 file systems.
BZ#620699
Due to a missing dependency, the dmraid package was not installed by default. Consequently, when running the mkinitrd command on IBM System/390 and IBM System z, the command failed and the following error message was displayed:
cp: cannot stat `/sbin/dmraid.static': No such file or directory
With this update, a requirement for dmraid has been added to the mkinitrd specification file (mkinitrd.spec). The mkinitrd command now works as expected on IBM System/390 and System z.
BZ#660731
Due to a regression in libdhcp, netlink interface flags were misinterpreted as standard interface flags by nash when it processed the network command. Consequently, the DEBUG, PROMISC, and ALLMULTI flags were incorrectly enabled on network interfaces. The problem has been corrected in libdhcp and the mkinitrd spec file has been changed to require libdhcp-devel-1.20-12 or later. As a result, the incorrect flags are no longer set on the network interfaces.
BZ#679581
Prior to this update, the grubby command line tool for updating bootloader config files, terminated unexpectedly with a segmentation fault when the command grubby --info=ALL was executed and grub.conf contained Windows boot definitions. With this update, a patch has been applied and grubby no longer crashes but returns non linux entry in the scenario described.
BZ#696971
Previously, setting an attribute for all kernel entries in a config file using the --update-kernel=ALL command directive worked only once. Subsequent use of the --update-kernel=ALL command directive only updated the arguments for the first kernel entry found. With this update a patch has been applied and the problem no longer occurs in the scenario described.
BZ#700102
The mkinitrd man page did not include multipath in its list of limitations for FIPS support. With this update, the man page entry for FIPS has been improved to say the following:
/boot  Must not be on multipath, nfs, dmraid or mdraid
BZ#700592
Prior to this update, after /sbin/init was executed the nash-hotplug process did not terminate itself and had to be terminated by a kill command in /etc/rc.sysinit. With this update, a patch has been applied to improve the code and nash-hotplug now exits when the parent process terminates.
BZ#744330
Due to an incomplete regular expression in the code, the mkinitrd utility did not recognize multipath devices located in the /dev/mpath/ directory. As a consequence, the system could not boot if such a multipath device contained the root file system. With this update, the regular expression has been corrected, and mkinitrd now correctly recognizes multipath devices in the /dev/mpath/ directory.
Users of mkinitrd should upgrade to these updated packages, which fix these bugs.