1#!/bin/sh 2# 3# Start the MD monitor daemon for all active MD arrays if desired. 4# 5### BEGIN INIT INFO 6# Provides: mdadm 7# Required-Start: $local_fs $syslog mdadm-raid 8# Required-Stop: $local_fs $syslog mdadm-raid 9# Default-Start: 2 3 4 5 10# Default-Stop: 0 1 6 11# Short-Description: MD monitoring daemon 12# Description: mdadm provides a monitor mode, in which it will scan for 13# problems with the MD devices. If a problem is found, the 14# administrator is alerted via email, or a custom script is 15# run. 16### END INIT INFO 17# 18 19MDADM=/sbin/mdadm 20RUNDIR=/var/run/mdadm 21PIDFILE=$RUNDIR/monitor.pid 22DEBIANCONFIG=/etc/default/mdadm 23 24test -x "$MDADM" || exit 0 25 26test -f /proc/mdstat || exit 0 27 28START_DAEMON=true 29test -f $DEBIANCONFIG && . $DEBIANCONFIG 30 31. /lib/lsb/init-functions 32 33# Include functions 34. /etc/init.d/functions 35 36case "${1:-}" in 37 start) 38 if is_true $START_DAEMON; then 39 log_daemon_msg "Starting MD monitoring service" "mdadm --monitor" 40 mkdir -p $RUNDIR 41 start-stop-daemon -S -p $PIDFILE -x $MDADM -- \ 42 --monitor --pid-file $PIDFILE --daemonise --scan ${DAEMON_OPTIONS:-} 43 RETVAL=$? 44 log_end_msg $RETVAL 45 exit $RETVAL 46 fi 47 ;; 48 stop) 49 if [ -f $PIDFILE ] ; then 50 log_daemon_msg "Stopping MD monitoring service" "mdadm --monitor" 51 start-stop-daemon -K -p $PIDFILE -x $MDADM 52 RETVAL=$? 53 rm -f $PIDFILE 54 log_end_msg $RETVAL 55 exit $RETVAL 56 fi 57 ;; 58 status) 59 status -p $PIDFILE "$MDADM" && exit 0 || exit $? 60 ;; 61 restart|reload|force-reload) 62 ${0:-} stop 63 ${0:-} start 64 ;; 65 *) 66 echo "Usage: ${0:-} {start|stop|status|restart|reload|force-reload}" >&2 67 exit 1 68 ;; 69esac 70 71exit 0 72 73