Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #! /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|status)
- # 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
- :
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement