summaryrefslogtreecommitdiff
path: root/beagle/debian-rfs/etc/init.d/halt
diff options
context:
space:
mode:
Diffstat (limited to 'beagle/debian-rfs/etc/init.d/halt')
-rwxr-xr-xbeagle/debian-rfs/etc/init.d/halt83
1 files changed, 83 insertions, 0 deletions
diff --git a/beagle/debian-rfs/etc/init.d/halt b/beagle/debian-rfs/etc/init.d/halt
new file mode 100755
index 0000000..3b359fe
--- /dev/null
+++ b/beagle/debian-rfs/etc/init.d/halt
@@ -0,0 +1,83 @@
+#! /bin/sh
+### BEGIN INIT INFO
+# Provides: halt
+# Required-Start:
+# Required-Stop:
+# Default-Start:
+# Default-Stop: 0
+# Short-Description: Execute the halt command.
+# Description:
+### END INIT INFO
+
+NETDOWN=yes
+
+PATH=/sbin:/usr/sbin:/bin:/usr/bin
+[ -f /etc/default/halt ] && . /etc/default/halt
+
+. /lib/lsb/init-functions
+
+do_stop () {
+ if [ "$INIT_HALT" = "" ]
+ then
+ case "$HALT" in
+ [Pp]*)
+ INIT_HALT=POWEROFF
+ ;;
+ [Hh]*)
+ INIT_HALT=HALT
+ ;;
+ *)
+ INIT_HALT=POWEROFF
+ ;;
+ esac
+ fi
+
+ # See if we need to cut the power.
+ if [ "$INIT_HALT" = "POWEROFF" ] && [ -x /etc/init.d/ups-monitor ]
+ then
+ /etc/init.d/ups-monitor poweroff
+ fi
+
+ # Don't shut down drives if we're using RAID.
+ hddown="-h"
+ if grep -qs '^md.*active' /proc/mdstat
+ then
+ hddown=""
+ fi
+
+ # If INIT_HALT=HALT don't poweroff.
+ poweroff="-p"
+ if [ "$INIT_HALT" = "HALT" ]
+ then
+ poweroff=""
+ fi
+
+ # Make it possible to not shut down network interfaces,
+ # needed to use wake-on-lan
+ netdown="-i"
+ if [ "$NETDOWN" = "no" ]; then
+ netdown=""
+ fi
+
+ log_action_msg "Will now halt"
+ halt -d -f $netdown $poweroff $hddown
+}
+
+case "$1" in
+ start)
+ # No-op
+ ;;
+ restart|reload|force-reload)
+ echo "Error: argument '$1' not supported" >&2
+ exit 3
+ ;;
+ stop)
+ do_stop
+ ;;
+ *)
+ echo "Usage: $0 start|stop" >&2
+ exit 3
+ ;;
+esac
+
+: