summaryrefslogtreecommitdiff
path: root/debian/mdadm-startall
diff options
context:
space:
mode:
authormadduck <madduck@3cfab66f-1918-0410-86b3-c06b76f9a464>2007-05-05 18:57:20 +0000
committermadduck <madduck@3cfab66f-1918-0410-86b3-c06b76f9a464>2007-05-05 18:57:20 +0000
commit70eff9fe9201b932ddf7dfc035c281df25eff085 (patch)
tree0c01b830a25ae6d991bb9164bd5fc0e7c3e7c5e3 /debian/mdadm-startall
parent3a1e403066b047b03dce95a0669199dc57492441 (diff)
* startall is now mdadm-startall and lives in /sbin, thanks to Eduard Bloch.
It now can handle existing mdadm.conf files much more gracefully, mostly thanks to the above mkconf enhancements (closes: #415336).
Diffstat (limited to 'debian/mdadm-startall')
-rw-r--r--debian/mdadm-startall34
1 files changed, 34 insertions, 0 deletions
diff --git a/debian/mdadm-startall b/debian/mdadm-startall
new file mode 100644
index 00000000..cc6be57d
--- /dev/null
+++ b/debian/mdadm-startall
@@ -0,0 +1,34 @@
+#!/bin/sh
+#
+# startall -- starts all existing arrays after creating mdadm.conf
+# overrides the AUTOSTART variable in /etc/default/mdadm
+#
+# Copyright © martin f. krafft <madduck@madduck.net>
+# distributed under the terms of the Artistic Licence 2.0
+#
+# $Id$
+#
+
+set -eu
+
+CONFIG=/etc/mdadm/mdadm.conf
+ALTCONFIG=/etc/mdadm.conf
+
+modprobe -kq md 2>/dev/null || :
+
+[ ! -f $CONFIG ] && [ -f $ALTCONFIG ] && CONFIG=$ALTCONFIG
+
+if ! grep -q '^ARRAY' $CONFIG 2>/dev/null; then
+ /usr/share/mdadm/mkconf force-generate || ret=$?
+ case ${ret:-0} in
+ 0) :;;
+ *)
+ echo E: mdadm: mdadm.conf creation failed, aborting. >&2
+ exit $ret
+ ;;
+ esac
+else
+ echo W: mdadm: using ARRAYs defined in existing mdadm.conf. >&2
+fi
+
+MDADM_FORCE_AUTOSTART__=1 exec /etc/init.d/mdadm-raid start