diff options
Diffstat (limited to 'sys-apps/kexec-tools/files/kexec.init-2.0.13-r1')
-rw-r--r-- | sys-apps/kexec-tools/files/kexec.init-2.0.13-r1 | 188 |
1 files changed, 0 insertions, 188 deletions
diff --git a/sys-apps/kexec-tools/files/kexec.init-2.0.13-r1 b/sys-apps/kexec-tools/files/kexec.init-2.0.13-r1 deleted file mode 100644 index 167b792de85d..000000000000 --- a/sys-apps/kexec-tools/files/kexec.init-2.0.13-r1 +++ /dev/null @@ -1,188 +0,0 @@ -#!/sbin/openrc-run -# Copyright 1999-2019 Gentoo Authors -# Distributed under the terms of the GNU General Public License v2 - -# Set up some defaults. -: "${LOAD_DURING_SHUTDOWN:=yes}" -: "${BOOTPART:=/boot}" -: "${DONT_MOUNT_BOOT:=no}" - -depend() { - need localmount -} - -auto_prefix_bootpath() { - # Only auto-add prefix to relative paths. - case $1 in - */*) echo "$1";; - *) echo "${BOOTPART}/$1" ;; - esac -} - -get_genkernel_arch() { - case $1 in - x86_64) echo "amd64" ;; - i[3456]86) echo "x86" ;; - *) echo "$1" ;; - esac -} - -image_path() { - # Do no sanity checking if the user has set a value. - if [ -n "${KNAME}" ]; then - auto_prefix_bootpath "${KNAME}" - return - fi - - local x kver="$(uname -r)" karch="$(uname -m)" - local gkarch="$(get_genkernel_arch $karch)" - for x in \ - "bzImage" \ - "vmlinux" \ - "vmlinuz" \ - "bzImage-${kver}" \ - "vmlinux-${kver}" \ - "vmlinuz-${kver}" \ - "kernel-genkernel-${karch}-${kver}" \ - "kernel-genkernel-${gkarch}-${kver}" \ - "kernel-${kver}" \ - "kernel-${karch}"; do - if [ -e "${BOOTPART}/${x}" ]; then - echo "${BOOTPART}/${x}" - return - fi - done - - return 1 -} - -initrd_path() { - # Do no sanity checking if the user has set a value. - if [ -n "${INITRD}" ]; then - auto_prefix_bootpath "${INITRD}" - return 0 - fi - - local x kver="$(uname -r)" karch="$(uname -m)" - local gkarch="$(get_genkernel_arch $karch)" - for x in \ - "initrd" \ - "initrd.img-${kver}" \ - "initrd-${kver}.img" \ - "initrd-${kver}" \ - "initramfs-${kver}.img" \ - "initramfs-genkernel-${karch}-${kver}" \ - "initramfs-genkernel-${gkarch}-${kver}"; do - if [ -e "${BOOTPART}/${x}" ]; then - echo "${BOOTPART}/${x}" - return 0 - fi - done - - return 1 -} - -mount_boot() { - [ "${DONT_MOUNT_BOOT}" != "no" ] && return 1 - mountinfo -q "${BOOTPART}" && return 1 - - ebegin "Mounting ${BOOTPART}" - mount "${BOOTPART}" - eend $? -} - -load_image() { - if [ "${KNAME}" = "-" ]; then - ebegin "Disabling kexec" - kexec -u - eend $? - return # eend preserved $? for us. - fi - - local img initrd="$(initrd_path)" mounted=false kparamopt initrdopt - - if ! img="$(image_path)"; then - if mount_boot; then - if img="$(image_path)"; then - mounted=true - initrd="$(initrd_path)" - else - eerror "No kernel image found in ${BOOTPART}!" - umount "${BOOTPART}" - return 1 - fi - else - eerror "No kernel image found in ${BOOTPART}!" - return 1 - fi - fi - - if [ -z "${ROOTPART}" ]; then - ROOTPART="$(readlink -f "$(sed -n '/^\/[^ ]* \/ / s,^\([^ ]*\).*,\1,p' /proc/mounts)")" - fi - - if [ -z "${KPARAM}" ]; then - kparamopt="--reuse-cmdline" - fi - - if [ -n "${initrd}" ]; then - initrdopt="--initrd=${initrd}" - fi - - local msg - [ -n "${initrd}" ] && \ - msg=" (with ${initrd})" - ebegin "Using kernel image ${img}${msg} for kexec" - - kexec ${KEXEC_OPT_ARGS} ${kparamopt} \ - -l "${img}" --append="root=${ROOTPART} ${KPARAM}" ${initrdopt} - local ret=$? - - ${mounted} && umount "${BOOTPART}" - eend ${ret} - return ${ret} -} - -start() { - if [ "${LOAD_DURING_SHUTDOWN}" = "yes" ]; then - local mounted - if mount_boot; then - mounted=true - fi - if ! image_path >/dev/null; then - ewarn "Cannot find kernel image!" - ewarn "Please make sure a valid kernel image is present before reboot." - return 0 - fi - if [ -n "${mounted}" ]; then - ebegin "Unmounting ${BOOTPART}" - umount "${BOOTPART}" - eend $? - fi - # $? is already set to the previous calls. - return - else - load_image - fi -} - -stop() { - if ! yesno ${RC_REBOOT}; then - ebegin "Not rebooting; disabling kexec" - kexec -u - eend $? - return - fi - - if [ -f /nokexec ]; then - ebegin "Rebooting; disabling kexec due to /nokexec" - rm -f /nokexec - kexec -u - eend $? - return - fi - - if [ "${LOAD_DURING_SHUTDOWN}" = "yes" ]; then - load_image - fi -} |