summaryrefslogtreecommitdiff
path: root/debian/mdadm.postinst
diff options
context:
space:
mode:
authormadduck <madduck@3cfab66f-1918-0410-86b3-c06b76f9a464>2006-10-06 11:46:43 +0000
committermadduck <madduck@3cfab66f-1918-0410-86b3-c06b76f9a464>2006-10-06 11:46:43 +0000
commit5c49ee5c9588594bae84448ead408761869bf89f (patch)
treeb62b2967f6803069098207d86b16ed84235cc29f /debian/mdadm.postinst
parent045d9f72363398153e1a68b96382d837087b7b0e (diff)
improvements wrt mkconf and MAILADDR handling
Diffstat (limited to 'debian/mdadm.postinst')
-rw-r--r--debian/mdadm.postinst24
1 files changed, 16 insertions, 8 deletions
diff --git a/debian/mdadm.postinst b/debian/mdadm.postinst
index 0611dbc4..5230e2f4 100644
--- a/debian/mdadm.postinst
+++ b/debian/mdadm.postinst
@@ -43,9 +43,14 @@ case "${1:-}" in
cp -a /etc/mdctl/mdctl.conf /etc/mdadm/mdadm.conf
fi
+ db_get mdadm/mail_to
+ MAILADDR="${RET:-root}"
+
[ ! -f $CONFIG ] && [ -f $ALTCONFIG ] && CONFIG=$ALTCONFIG
if [ ! -f $CONFIG ]; then
echo -n 'Generating mdadm.conf... ' >&2
+ # pass the MAILADDR variable into the script
+ MDADM_MAILADDR__="$MAILADDR"; export MDADM_MAILADDR__
if /usr/share/mdadm/mkconf generate $CONFIG 2>/dev/null; then
echo done. >&2
else
@@ -59,6 +64,17 @@ case "${1:-}" in
md5sum $CONFIG > /var/lib/mdadm/CONF-UNCHECKED
fi
+ if [ -w $CONFIG ] && [ -z "${MDADM_MAILADDR__:-}" ]; then
+ # if the configuration is writeable but has not been written just
+ # before, then edit it to reflect the MAILADDR preference
+ if grep -q '^MAILADDR' $CONFIG; then
+ sed -i -e "s,^MAILADDR.*,MAILADDR $MAILADDR," $CONFIG
+ else
+ echo "MAILADDR $MAILADDR" >> $CONFIG
+ fi
+ fi
+ unset MDADM_MAILADDR__
+
db_get mdadm/initrdstart
INITRDSTART="${RET:-all}"
db_get mdadm/autostart
@@ -67,8 +83,6 @@ case "${1:-}" in
AUTOCHECK="${RET:-true}"
db_get mdadm/start_daemon
START_DAEMON="${RET:-true}"
- db_get mdadm/mail_to
- MAILADDR="${RET:-root}"
cat <<_eof > $DEBIANCONFIG
# mdadm Debian configuration
@@ -112,12 +126,6 @@ START_DAEMON=$START_DAEMON
USE_DEPRECATED_MDRUN=false
_eof
- if grep -q '^MAILADDR' $CONFIG; then
- sed -i -e "s,^MAILADDR.*,MAILADDR $MAILADDR," $CONFIG
- else
- echo "MAILADDR $MAILADDR" >> $CONFIG
- fi
-
db_stop
# try to undo udev rules (installed by 2.5.2-10, see 2.5.3.git200608202239-1