Вы должны иметь возможность напрямую использовать возвращаемое значение.
while ! cmd
do
...
done
/ dev / md5
и / dev / md / 5
- это не одно и то же. У вас, вероятно, действительно есть три массива, только у вас получилось одно и то же имя для двух из них.
/ dev / md5
- пронумерованное устройство md, а / dev / md / 5
- именованное. Имена произвольные, могут быть любыми. Вы можете сделать / dev / md / swap
, если хотите. Вы обновляете его, используя - update = name
, при создании это параметр - name =
или просто указывая / dev / md / name
в первом место. На странице руководства это подробно описано.
Лично мне не очень нравятся имена MD. Это особенно бессмысленно, когда вы в конечном итоге используете какое-то число в качестве имени. Тогда вы можете в первую очередь придерживаться цифр. Если вам нужны имена, используйте описательные (root, home, swap, ...).
В общем, mdadm --examine --scan
является лишь отправной точкой. Вам действительно нужен только UUID, чтобы вы могли сделать что-то вроде этого:
ARRAY /dev/md0 UUID=9985ef40:2eb8407d:c0a195b1:509136fe
ARRAY /dev/md1 UUID=34de79db:470dce04:ece45660:b4af82d5
ARRAY /dev/md2 UUID=27796750:70770c0a:f5af0aca:5367090e
Не забудьте добавить MAILADDR
(и запустить службу мониторинга mdadm).