На нескольких серверах я хочу автоматизировать тест программного RAID.
Можно ли проверить / proc / mdstat ?
Есть ли в Персоналии какие-либо списки, только если ПРОГРАММНЫЙ RAID?
Если нет программного RAID, могу ли я остановиться эти демоны? mdmonitor mdadm mdmpd
Да, и это, вероятно, самый быстрый и простой способ, если все, что вас интересует, это mdadm
программный рейд (, а не lvm
или btrfs
и т. д. )-, но имена рейдовых устройств произвольны (, так что вы не можете просто предположить, что они будут соответствовать^md[0-9]+
-большинство из них, но они не обязаны, и стандарт/стандарт по умолчанию может измениться в будущем ).
Кстати, вот парсер python /proc/mdstat
:https://github.com/truveris/py-mdstat/(, который включает в себя mdjson
инструмент для печати /proc/mdstat
в формате json)
Это был только первый, который я нашел в Google, наверняка есть и другие для perl
, awk
и других языков.
А вот очень быстрый -и -грязный awk
один -лайнер, который определяет наличие каких-либо рейд-устройств (, предполагая, что если второе поле любой строки ввода после первой строки двоеточие :
, то это указывает на рейд-устройство):
awk 'NR > 1 && $2 == ":" {found++}; END {exit !found}' /proc/mdstat
Завершается с true (0 ), если найдено одно или несколько устройств, иначе false.
Personalities
просто перечисляет типы mdadm
рейдов, поддерживаемые ядром. Это не указывает на то, что ЛЮБОЙ из них активно используется, просто в ядре есть необходимый драйвер, скомпилированный в (или загруженный модуль )
Конечно, почему бы и нет. Если они не делают ничего полезного, нет необходимости их запускать или даже устанавливать.