packages: kexec-tools/kexec.init - improved output, added load target
glen
glen at pld-linux.org
Thu Aug 27 19:16:45 CEST 2009
Author: glen Date: Thu Aug 27 17:16:45 2009 GMT
Module: packages Tag: HEAD
---- Log message:
- improved output, added load target
---- Files affected:
packages/kexec-tools:
kexec.init (1.2 -> 1.3)
---- Diffs:
================================================================
Index: packages/kexec-tools/kexec.init
diff -u packages/kexec-tools/kexec.init:1.2 packages/kexec-tools/kexec.init:1.3
--- packages/kexec-tools/kexec.init:1.2 Mon Jun 29 00:44:50 2009
+++ packages/kexec-tools/kexec.init Thu Aug 27 19:16:40 2009
@@ -20,6 +20,30 @@
# Get service config - may override defaults
[ -f /etc/sysconfig/kexec ] && . /etc/sysconfig/kexec
+load() {
+ if [ -z "$APPEND" ]; then
+ APPEND=$(cat /proc/cmdline)
+ fi
+
+ # convert to real file for readability
+ if [ -L "$KERNEL_IMAGE" ]; then
+ KERNEL_IMAGE=$(readlink -f "$KERNEL_IMAGE")
+ fi
+
+ show "Loading kernel image: %s" "$KERNEL_IMAGE"
+ if [ -z "$INITRD" ]; then
+ kexec -l "$KERNEL_IMAGE" --append="$APPEND"
+ else
+ kexec -l "$KERNEL_IMAGE" --initrd="$INITRD" --append="$APPEND"
+ fi
+ if [ $? = 0 ]; then
+ ok
+ else
+ fail
+ fi
+
+}
+
start() {
if [ -f /var/lock/subsys/kexec ]; then
return
@@ -33,40 +57,24 @@
fi
# skip if already loaded something
- if [ "`cat /sys/kernel/kexec_loaded 2>/dev/null`" = "1" ]; then
+ if [ "$(cat /sys/kernel/kexec_loaded 2>/dev/null)" = "1" ]; then
return
fi
- REAL_APPEND="$APPEND"
- if [ -z "$REAL_APPEND" ]; then
- REAL_APPEND=$(cat /proc/cmdline)
- fi
-
- show "Loading new kernel image (%s) into memory" "$KERNEL_IMAGE"
- if [ -z "$INITRD" ]; then
- kexec -l "$KERNEL_IMAGE" --append="$REAL_APPEND"
- else
- kexec -l "$KERNEL_IMAGE" --initrd="$INITRD" --append="$REAL_APPEND"
- fi
- if [ $? = 0 ]; then
- ok
- else
- fail
- fi
-
+ load
rm -f /var/lock/subsys/kexec
}
status() {
- if [ "$(cat /sys/kernel/kexec_loaded)" = 1 ]; then
- echo "Kexec image loaded"
+ if [ "$(cat /sys/kernel/kexec_loaded 2>/dev/null)" = "1" ]; then
+ show "Kexec image loaded"; ok
else
- echo "Kexec image is not loaded"
+ show "Kexec image is not loaded"; fail
fi
- if [ "$(cat /sys/kernel/kexec_crash_loaded)" = 1 ]; then
- echo "Kexec image for kernel crash loaded"
+ if [ "$(cat /sys/kernel/kexec_crash_loaded 2>/dev/null)" = 1 ]; then
+ show "Kexec image for kernel crash loaded"; ok
else
- echo "Kexec image for kernel crash is not loaded"
+ show "Kexec image for kernel crash is not loaded"; fail
fi
}
@@ -80,14 +88,17 @@
stop
;;
restart)
- stop
+ stop
start
;;
+ load)
+ load
+ ;;
status)
status
;;
*)
- msg_usage "$0 {start|stop|restart|status}"
+ msg_usage "$0 {start|stop|load|restart|status}"
exit 3
esac
================================================================
---- CVS-web:
http://cvs.pld-linux.org/cgi-bin/cvsweb.cgi/packages/kexec-tools/kexec.init?r1=1.2&r2=1.3&f=u
More information about the pld-cvs-commit
mailing list