From 23a132c4977a1232ff1d908beb8351b832ee654b Mon Sep 17 00:00:00 2001 From: huweihua Date: Tue, 4 Nov 2014 21:45:44 -0500 Subject: [PATCH] fix the bug when use dracut to rebuild initrd --- xCAT/postscripts/makeinitrd | 15 +++++++++++++-- 1 file changed, 13 insertions(+), 2 deletions(-) diff --git a/xCAT/postscripts/makeinitrd b/xCAT/postscripts/makeinitrd index ec71a5440..ecdadcd68 100755 --- a/xCAT/postscripts/makeinitrd +++ b/xCAT/postscripts/makeinitrd @@ -10,17 +10,28 @@ # And do whatever is necessary on ubuntu. if [[ -f /sbin/dracut ]]; then - # redhat6.x/centos6.x + # redhat6.x/centos6.x/rhels7.x echo "Running dracut to regenerate the initrd with the drivers needed by this node:" - dracut --force + arch=`uname -m` + #echo "arch=$arch" + initrdfile=`find /boot -name "initramfs-*.$arch.img"` + #echo "initrdfile=$initrdfile" + kernelversion=`echo $initrdfile |sed -e 's:/boot/initramfs-\(.*\)\.img:\1:g'` + #echo "kernelversion=$kernelversion" + mv $initrdfile $initrdfile.org + echo "dracut $initrdfile $kernelversion" + dracut $initrdfile $kernelversion else # suse/sles and redhat5.x/centos5.x echo "Running mkinitrd to regenerate the initrd with the drivers needed by this node:" osvers=`cat /etc/*release|sed -e 's/.*\([0-9]\{1,\}\.[0-9]\{1,\}\).*/\1/'` if [[ $osvers == 5\.* ]];then initrdfile=`find /boot -name "initrd-*.img"` + #echo "initrdfile=$initrdfile" kernelversion=`echo $initrdfile |sed -e 's:/boot/initrd-\(.*\)\.img:\1:g'` + #echo "kernelversion=$kernelversion" mv $initrdfile $initrdfile.org + echo "mkinitrd $initrdfile $kernelversion" mkinitrd $initrdfile $kernelversion else mkinitrd