summaryrefslogtreecommitdiffstats
path: root/systemd
diff options
context:
space:
mode:
Diffstat (limited to 'systemd')
-rw-r--r--systemd/SUSE-mdadm_env.sh48
-rw-r--r--systemd/mdmonitor.service22
2 files changed, 18 insertions, 52 deletions
diff --git a/systemd/SUSE-mdadm_env.sh b/systemd/SUSE-mdadm_env.sh
deleted file mode 100644
index c13b48a..0000000
--- a/systemd/SUSE-mdadm_env.sh
+++ /dev/null
@@ -1,48 +0,0 @@
-#!/bin/sh
-
-# extract configuration from /etc/sysconfig/mdadm and write
-# environment to /run/sysconfig/mdadm to be used by
-# systemd unit files.
-
-MDADM_SCAN="yes"
-
-# Following adapted from /etc/init.d/mdadmd on openSUSE
-
-mdadmd_CONFIG=/etc/sysconfig/mdadm
-if test -r $mdadmd_CONFIG; then
- . $mdadmd_CONFIG
-fi
-
-if [ x$MDADM_DELAY != x"" ]; then
- MDADM_DELAY="-d "$MDADM_DELAY;
-fi
-
-if [ x$MDADM_MAIL != x"" ]; then
- MDADM_MAIL="-m \"$MDADM_MAIL\""
-fi
-
-if [ x$MDADM_PROGRAM != x"" ]; then
- MDADM_PROGRAM="-p \"$MDADM_PROGRAM\""
-fi
-
-if [ x$MDADM_SCAN = x"yes" ]; then
- MDADM_SCAN="--scan"
-else
- MDADM_SCAN=""
-fi
-
-if [ x$MDADM_SEND_MAIL_ON_START = x"yes" ]; then
- MDADM_SEND_MAIL="-t"
-else
- MDADM_SEND_MAIL=""
-fi
-
-if [ x$MDADM_CONFIG != x"" ]; then
- MDADM_CONFIG="-c \"$MDADM_CONFIG\""
-fi
-
-mkdir -p /run/sysconfig
-echo "MDADM_MONITOR_ARGS=$MDADM_RAIDDEVICES $MDADM_DELAY $MDADM_MAIL $MDADM_PROGRAM $MDADM_SCAN $MDADM_SEND_MAIL $MDADM_CONFIG" > /run/sysconfig/mdadm
-if [ -n "$MDADM_CHECK_DURATION" ]; then
- echo "MDADM_CHECK_DURATION=$MDADM_CHECK_DURATION" >> /run/sysconfig/mdadm
-fi
diff --git a/systemd/mdmonitor.service b/systemd/mdmonitor.service
index 9c36478..95046bc 100644
--- a/systemd/mdmonitor.service
+++ b/systemd/mdmonitor.service
@@ -11,7 +11,21 @@ DefaultDependencies=no
Documentation=man:mdadm(8)
[Service]
-Environment= MDADM_MONITOR_ARGS=--scan
-EnvironmentFile=-/run/sysconfig/mdadm
-ExecStartPre=-/usr/lib/mdadm/mdadm_env.sh
-ExecStart=BINDIR/mdadm --monitor $MDADM_MONITOR_ARGS
+# For Maintainers:
+# We need to ensure that the mdmonitor configuration aligns with the guidelines provided
+# in the man page for users.
+# /etc/sysconfig/mdadm, /etc/sysconfig/mdmonitor, or any other similar configuration file should
+# not be supported because non upstream components are not described in man pages.
+
+# Parameters designed to be customized by user, should be settable via mdadm.conf:
+# - MONITORDELAY (do not set --delay in service)
+# - MAILADDR (do not set --mail in service)
+# - MAILFROM (not settable from cmdline)
+# - PROGRAM (do not set --program or --alert in service)
+#
+# Following parameters can be customized in service:
+# - --syslog (configure syslog logging)
+# - --fork (Type=forking must be added, not recommended and not needed with systemd)
+# - --pid-file (allowed only when --fork selected)
+
+ExecStart=BINDIR/mdadm --monitor --scan