summaryrefslogtreecommitdiffstats
path: root/debian/mdadm.config
blob: 848e6b6315f1337ebc08f9dea16c6a493857b192 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
#!/bin/sh
# Copyright © 2001-2004 Mario Jou/3en <joussen@debian.org>
# Copyright © martin f. krafft <madduck@debian.org>
# Distributable under the terms of the GNU GPL version 2.
#
. /usr/share/debconf/confmodule
# see #369953 for ordering
set -eu

CONFIG=/etc/mdadm/mdadm.conf
ALTCONFIG=/etc/mdadm.conf
[ ! -f $CONFIG ] && [ -f $ALTCONFIG ] && CONFIG=$ALTCONFIG

DEBIANCONFIG=/etc/default/mdadm

if [ -s $DEBIANCONFIG ] ; then
  AUTOCHECK=true
  AUTOSCAN=true
  START_DAEMON=true
  MAILADDR=root

  [ -f $DEBIANCONFIG ] && . $DEBIANCONFIG
  if [ -f $CONFIG ]; then
    MAILADDR=$(sed -rne 's/^MAILADDR[[:space:]]*([^[:space:]]+).*/\1/p' $CONFIG)
  fi

  [ -n "$AUTOCHECK" ] && db_set mdadm/autocheck "$AUTOCHECK"
  [ -n "$AUTOSCAN" ] && db_set mdadm/autoscan "$AUTOSCAN"
  [ -n "$START_DAEMON" ] && db_set mdadm/start_daemon "$START_DAEMON"
  [ -n "$MAILADDR" ] && db_set mdadm/mail_to "$MAILADDR"
fi

db_capb escape

# if system has root on md
if findmnt / 2>/dev/null | grep -qs \/dev\/md && \
# and system is not a container
! grep -qs ':cpuset:/$' /proc/1/cgroup && \
# and system is not a chroot
[ "$(stat -c %d/%i /)" != "$(stat -Lc %d/%i /proc/1/root 2>/dev/null)" ] && \
# and systemd is not running
[ -z "$(pidof systemd)" ]
then
	db_input high mdadm/init-system-not-systemd || true
	db_go
fi

db_input medium mdadm/autocheck || :
db_go

db_input medium mdadm/autoscan || :
db_go

db_input medium mdadm/start_daemon || :
db_go

db_get mdadm/start_daemon || :
if [ "$RET" = true ]; then
  db_input medium mdadm/mail_to || :
  db_go
fi