diff --git a/.kexec-tools.metadata b/.kexec-tools.metadata new file mode 100644 index 0000000..c2e6c7e --- /dev/null +++ b/.kexec-tools.metadata @@ -0,0 +1,3 @@ +80ac3f5e77d3c79883edadf14428734db4720009 eppic-e8844d3.tar.gz +ed15f191adee22ab0721ba62af1cae67eb981670 kexec-tools-2.0.27.tar.xz +98cae2b1062871905795918c32b6d46ccd115074 makedumpfile-1.7.4.tar.gz diff --git a/dracut-module-setup.sh b/dracut-module-setup.sh index 03d0cba..bcbb2e5 100755 --- a/dracut-module-setup.sh +++ b/dracut-module-setup.sh @@ -1100,6 +1100,15 @@ install() { 's/\(^[[:space:]]*reserved_memory[[:space:]]*=\)[[:space:]]*[[:digit:]]*/\1 1024/' \ "${initdir}/etc/lvm/lvm.conf" &> /dev/null + # Skip initrd-cleanup.service and initrd-parse-etc.service becasue we don't + # need to switch root. Instead of removing them, we use ConditionPathExists + # to check if /proc/vmcore exists to determine if we are in kdump. + sed -i '/\[Unit\]/a ConditionPathExists=!\/proc\/vmcore' \ + "${initdir}/${systemdsystemunitdir}/initrd-cleanup.service" &> /dev/null + + sed -i '/\[Unit\]/a ConditionPathExists=!\/proc\/vmcore' \ + "${initdir}/${systemdsystemunitdir}/initrd-parse-etc.service" &> /dev/null + # Save more memory by dropping switch root capability dracut_no_switch_root }