Linux s17.hosterpk.com 6.12.0-124.55.3.el10_1.x86_64 #1 SMP PREEMPT_DYNAMIC Thu May 7 16:54:02 EDT 2026 x86_64
LiteSpeed
Server IP : 192.169.89.90 & Your IP : 216.73.216.41
Domains :
Cant Read [ /etc/named.conf ]
User : hamzalar
Terminal
Auto Root
Create File
Create Folder
Localroot Suggester
Backdoor Destroyer
Readme
/
lib /
kdump /
Delete
Unzip
Name
Size
Permission
Date
Action
dracut.conf.d
[ DIR ]
drwxr-xr-x
2026-05-27 07:01
kdump-lib-initramfs.sh
4.72
KB
-rwxr-xr-x
2026-02-02 00:00
kdump-lib.sh
27.85
KB
-rwxr-xr-x
2026-02-02 00:00
kdump-logger.sh
9.53
KB
-rwxr-xr-x
2026-02-02 00:00
Save
Rename
#!/usr/bin/sh # # The code in this file will be used in initramfs environment, bash may # not be the default shell. Any code added must be POSIX compliant. DEFAULT_PATH="/var/crash/" # shellcheck disable=SC2034 DEFAULT_SSHKEY="/root/.ssh/kdump_id_rsa" KDUMP_CONFIG_FILE="/etc/kdump.conf" # shellcheck disable=SC2034 FENCE_KDUMP_SEND="/usr/libexec/fence_kdump_send" # shellcheck disable=SC2034 LVM_CONF="/etc/lvm/lvm.conf" # shellcheck disable=SC2034 LUKS_CONFIGFS=/sys/kernel/config/crash_dm_crypt_keys # shellcheck disable=SC2034 LUKS_KEY_PRFIX="kdump-cryptsetup:vk-" # Read kdump config in well formated style kdump_read_conf() { kdump_get_conf_val "" } # Retrieves config value defined in kdump.conf # $1: config name, if empty print full config kdump_get_conf_val() { _to_find="$1" _found="" [ -f "$KDUMP_CONFIG_FILE" ] || return # On lines that are _not_ comments or empty remove... # Note: The additional braces {} are required as piping into a while # loop creates a sub-shell. So without the braces $_found would only be # set inside the loop but empty outside of it. grep -Ev -e '^\s*#' -e '^\s*$' "$KDUMP_CONFIG_FILE" | { while read -r _opt _val; do # ...trailing comments... case "$_val" in *\#*) _val="${_val%%#*}" _val="${_val%"${_val##*[![:space:]]}"}" ;; esac # ...quotes case "$_val" in \"*\") _val="${_val#\"}" _val="${_val%\"}" ;; esac if [ -z "$_to_find" ]; then echo "$_opt $_val" elif echo "$_opt" | grep -q -E "^($_to_find)$"; then # make sure to only return the last match to # mirror the old behavior _found="$_val" fi done [ -n "$_found" ] && echo "$_found" } # make sure we return 0 even when a option isn't set return 0 } is_mounted() { [ -n "$1" ] && findmnt -k -n "$1" > /dev/null 2>&1 } # $1: info type # $2: mount source type # $3: mount source # $4: extra args # shellcheck disable=SC2086 # $4 means extra args which nees to word-splitted get_mount_info() { __kdump_mnt=$(findmnt -k -n -r -o "$1" "--$2" "$3" $4) [ -z "$__kdump_mnt" ] && [ -e "/etc/fstab" ] && __kdump_mnt=$(findmnt -s -n -r -o "$1" "--$2" "$3" $4) echo "$__kdump_mnt" } is_ipv6_address() { echo "$1" | grep -q ":" } is_fs_type_nfs() { [ "$1" = "nfs" ] || [ "$1" = "nfs4" ] } is_fs_type_virtiofs() { [ "$1" = "virtiofs" ] } # If $1 contains dracut_args "--mount", return <filesystem type> get_dracut_args_fstype() { echo "$1" | sed -n "s/.*--mount .\(.*\)/\1/p" | cut -d' ' -f3 } # If $1 contains dracut_args "--mount", return <device> get_dracut_args_target() { echo "$1" | sed -n "s/.*--mount .\(.*\)/\1/p" | cut -d' ' -f1 } get_save_path() { __kdump_path=$(kdump_get_conf_val path) [ -z "$__kdump_path" ] && __kdump_path=$DEFAULT_PATH # strip the duplicated "/" echo "$__kdump_path" | tr -s / } get_root_fs_device() { findmnt -k -f -n -o SOURCE / } # Return the current underlying device of a path, ignore bind mounts get_target_from_path() { __kdump_target=$(df "$1" 2> /dev/null | tail -1 | awk '{print $1}') [ "$__kdump_target" = "/dev/root" ] && [ ! -e /dev/root ] && __kdump_target=$(get_root_fs_device) echo "$__kdump_target" } get_fs_type_from_target() { get_mount_info FSTYPE source "$1" -f } get_mntpoint_from_target() { # get the first TARGET when SOURCE doesn't end with ]. # In most cases, a SOURCE ends with ] when fsroot or subvol exists. _mntpoint=$(get_mount_info TARGET,SOURCE source "$1" | grep -v "\]$" | awk 'NR==1 { print $1 }') # fallback to the old way when _mntpoint is empty. [ -n "$_mntpoint" ] || _mntpoint=$(get_mount_info TARGET source "$1" -f) echo "$_mntpoint" } is_ssh_dump_target() { kdump_get_conf_val ssh | grep -q @ } is_raw_dump_target() { [ -n "$(kdump_get_conf_val raw)" ] } is_virtiofs_dump_target() { if [ -n "$(kdump_get_conf_val virtiofs)" ]; then return 0 fi if is_fs_type_virtiofs "$(get_dracut_args_fstype "$(kdump_get_conf_val dracut_args)")"; then return 0 fi if is_fs_type_virtiofs "$(get_fs_type_from_target "$(get_target_from_path "$(get_save_path)")")"; then return 0 fi return 1 } is_nfs_dump_target() { if [ -n "$(kdump_get_conf_val nfs)" ]; then return 0 fi if is_fs_type_nfs "$(get_dracut_args_fstype "$(kdump_get_conf_val dracut_args)")"; then return 0 fi if is_fs_type_nfs "$(get_fs_type_from_target "$(get_target_from_path "$(get_save_path)")")"; then return 0 fi return 1 } is_lvm2_thinp_device() { _device_path=$1 _lvm2_thin_device=$(lvm lvs -S 'lv_layout=sparse && lv_layout=thin' \ --nosuffix --noheadings -o vg_name,lv_name "$_device_path" 2> /dev/null) [ -n "$_lvm2_thin_device" ] } kdump_get_ip_route() { if ! _route=$(/sbin/ip -o route get to "$1" 2>&1); then exit 1 fi echo "$_route" } kdump_get_ip_route_field() { echo "$1" | sed -n -e "s/^.*\<$2\>\s\+\(\S\+\).*$/\1/p" }