1 #!/bin/sh /etc/rc.common
10 CONF
="/var/etc/mdadm.conf"
24 if [ -n "$sep" ]; then
25 config_list_foreach
"$cfg" "$opt" append_list_item str
"$sep"
27 config_get str
"$cfg" "$opt"
30 [ -n "$str" ] && append
"$var" $
(printf "%s=%s" "${name:-${opt//_/-}}" "$str")
37 if [ -x /usr
/sbin
/sendmail
]; then
38 config_get email
"$cfg" email
39 [ -n "$email" ] && printf "MAILADDR %s\n" "$email" >> $CONF
42 config_list_foreach
"$cfg" devices append_list_item devices
" "
43 [ -n "$devices" ] && printf "DEVICE %s\n" "$devices" >> $CONF
48 local uuid device devices name array
50 config_get uuid
"$cfg" uuid
51 config_get name
"$cfg" name
52 config_get device
"$cfg" device
54 if [ -z "$device" ] ||
[ -z "$uuid$name" ]; then
55 echo "Skipping array without device, uuid or name" >&2
59 [ -n "$uuid" ] && append array
"uuid=$uuid"
60 [ -n "$name" ] && append array
"name=$name"
62 append_option array
"$cfg" super_minor
63 append_option array
"$cfg" spares
64 append_option array
"$cfg" spare_group
65 append_option array
"$cfg" bitmap
66 append_option array
"$cfg" container
67 append_option array
"$cfg" member
68 append_option array
"$cfg" devices devices
","
70 printf "ARRAY %s %s\n" "$device" "$array" >> $CONF
77 printf "# Autogenerated from /etc/config/mdadm, do not edit!\n" > $CONF
80 config_foreach mdadm_common mdadm
81 config_foreach mdadm_array array
83 $PROG --assemble --scan --config="$CONF"
86 procd_set_param
command "$PROG" --monitor --syslog --scan --config="$CONF"