<!DOCTYPE html>
<html lang="en">

<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA-Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1.0">
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0-alpha1/dist/css/bootstrap.min.css" rel="stylesheet"
        integrity="sha384-GLhlTQ8iRABdZLl6O3oVMWSktQOp6b7In1Zl3/Jr59b6EGGoI1aFkw7cmDA6j6gD" crossorigin="anonymous">
    <link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/6.3.0/css/all.min.css"
        integrity="sha512-SzlrxWUlpfuzQ+pcUCosxcglQRNAq/DZjVsC0lE40xsADsfeQoEypE+enwcOiGjk/bSuGGKHEyjSoQ1zVisanQ=="
        crossorigin="anonymous" referrerpolicy="no-referrer" />
</head>
</html>
#!/bin/bash

. /etc/sysconfig/kdump

KDUMP_KERNEL=""
KDUMP_INITRD=""

check() {
    if [ ! -f /etc/sysconfig/kdump ] || [ ! -f /lib/kdump/kdump-lib.sh ]\
        || [ -n "${IN_KDUMP}" ]
    then
        return 1
    fi
    return 255
}

depends() {
    echo "base shutdown"
    return 0
}

prepare_kernel_initrd() {
    . /lib/kdump/kdump-lib.sh

    prepare_kdump_bootinfo

    # $kernel is a variable from dracut
    if [ "$KDUMP_KERNELVER" != $kernel ]; then
        dwarn "Using kernel version '$KDUMP_KERNELVER' for early kdump," \
            "but the initramfs is generated for kernel version '$kernel'"
    fi
}

install() {
    prepare_kernel_initrd
    if [ ! -f "$KDUMP_KERNEL" ]; then
        derror "Could not find required kernel for earlykdump," \
            "earlykdump will not work!"
        return 1
    fi
    if [ ! -f "$KDUMP_INITRD" ]; then
        derror "Could not find required kdump initramfs for earlykdump," \
            "please ensure kdump initramfs is generated first," \
            "earlykdump will not work!"
        return 1
    fi

    inst_multiple tail find cut dirname hexdump
    inst_simple "/etc/sysconfig/kdump"
    inst_binary "/usr/sbin/kexec"
    inst_binary "/usr/bin/gawk" "/usr/bin/awk"
    inst_binary "/usr/bin/logger" "/usr/bin/logger"
    inst_binary "/usr/bin/printf" "/usr/bin/printf"
    inst_script "/lib/kdump/kdump-lib.sh" "/lib/kdump-lib.sh"
    inst_script "/lib/kdump/kdump-logger.sh" "/lib/kdump-logger.sh"
    inst_hook cmdline 00 "$moddir/early-kdump.sh"
    inst_binary "$KDUMP_KERNEL"
    inst_binary "$KDUMP_INITRD"

    ln_r "$KDUMP_KERNEL" "/boot/kernel-earlykdump"
    ln_r "$KDUMP_INITRD" "/boot/initramfs-earlykdump"

    chmod -x "${initdir}/$KDUMP_KERNEL"
}
