#!/bin/sh # # Start the MD monitor daemon for all active MD arrays if desired. # # Copyright © 2001-2005 Mario Jou/3en # Copyright © 2005-2006 Martin F. Krafft # Distributable under the terms of the GNU GPL version 2. # # $Id$ # ### BEGIN INIT INFO # Provides: mdadm # Required-Start: $local_fs $remote_fs # Required-Stop: $local_fs $remote_fs # Default-Start: 2 3 4 5 # Default-Stop: 0 1 6 # Short-Description: MD monitoring daemon # Description: mdadm provides a monitor mode, in which it will scan for # problems with the MD devices. If a problem is found, the # administrator is alerted via email, or a custom script is # run. ### END INIT INFO set -eu MDADM=/sbin/mdadm RUNDIR=/var/run/mdadm PIDFILE=$RUNDIR/monitor.pid DEBIANCONFIG=/etc/default/mdadm test -x $MDADM || exit 0 test -f /proc/mdstat || exit 0 START_DAEMON=true test -f $DEBIANCONFIG && . $DEBIANCONFIG . /lib/lsb/init-functions is_true() { case "${1:-}" in [Yy]es|[Yy]|1|[Tt]|[Tt]rue) return 0;; *) return 1; esac } case "${1:-}" in start) if is_true $START_DAEMON; then log_daemon_msg "Starting MD monitoring service" "mdadm --monitor" mkdir -p $RUNDIR set +e start-stop-daemon -S -p $PIDFILE -x $MDADM -- \ --monitor --pid-file $PIDFILE --daemonise --scan log_end_msg $? set -e fi ;; stop) if [ -f $PIDFILE ] ; then log_daemon_msg "Stopping MD monitoring service" "mdadm --monitor" set +e start-stop-daemon -K -p $PIDFILE -x $MDADM rm -f $PIDFILE log_end_msg $? set -e fi ;; restart|reload|force-reload) ${0:-} stop ${0:-} start ;; *) echo "Usage: ${0:-} {start|stop|restart|reload|force-reload}" >&2 exit 1 ;; esac exit 0