В новых версиях metadata (начиная с 1.0) у raid-разделов появился аргумент name, в который по-умолчанию добавляется homehost, или hostname вашего сервера, который вы ввели при установке. Идея хорошая: если вы случайно вставите диск не в тот сервер, рейд-массив просто не сможет собраться в автоматическом режиме под необходимым именем. Но если вы решите сменить hostname на сервере - у вас начнутся проблемы.
В нашем примере, у нас есть 3 рейд массива md0, md50 И md100. На первом находится корневая файловая система и его мы исправлять не будем (да и проблем пока наличие в нем некорректного hostname не приносит). Остальные 2 массива используются под данные и под своп.
Пример проблемы можно увидеть на примере:
[root@**superserver** ~]# mdadm --misc --scan --detail\\
ARRAY /dev/md/node6:0 metadata=1.0 name=**superserver**:0 UUID=2ee88b6c:c6760b18:4bb7a623:4d2402b4\\
ARRAY /dev/md50 metadata=1.2 name=**superserver**:50 UUID=20be6157:895489db:065d7058:dd9d7b5b\\
ARRAY /dev/md100 metadata=1.2 name=**superserver**:100 UUID=c7093260:ff809ad1:ae8cd04a:1357f1b0\\
Пример, когда проблемы нет:
ARRAY /dev/md50 metadata=**0.90** UUID=60179f5e:927c6eb5:ada23c42:5bc247c6
(Для версии metadata меньше 1 проблема не актуальна)
# Останавливаем все сервисы, использующие диск и отклбчаем своп
/etc/init.d/superserver stop
swapoff -a
# Останавливаем рейд-массив
mdadm --stop /dev/md100
mdadm --stop /dev/md50
# Переподключаем массив, указав опцию обновления
mdadm -v -A /dev/md50 --update=homehost --homehost=ignore
mdadm -v -A /dev/md100 --update=homehost --homehost=ignore
# Сейчас в выводе hostname уже не должен быть указан
mdadm --misc --scan --detail
Пример, когда проблемы уже нет:
[root@superserver /]# mdadm --misc --scan --detail\\
ARRAY /dev/md/node6:0 metadata=1.0 name=**superserver**:0 UUID=2ee88b6c:c6760b18:4bb7a623:4d2402b4\\
ARRAY /dev/md100 metadata=1.2 name=**ignore**:100 UUID=c7093260:ff809ad1:ae8cd04a:1357f1b0\\
ARRAY /dev/md50 metadata=1.2 name=**ignore**:50 UUID=20be6157:895489db:065d7058:dd9d7b5b\\
Чтобы исправить md0 нужно отмонтировать корневую файловую систему, но мы этого не делаем. Значение ignore - означает, что hostname проверяться не будет.
Осталось обновить конфиг mdadm.conf:
cp /etc/mdadm.conf /etc/mdadm.conf.bk
echo 'AUTO +imsm +1.x -all' > /etc/mdadm.conf
mdadm --detail --scan >> /etc/mdadm.conf
# Проверяем, что обновилось только необходимое
diff -U0 /etc/mdadm.conf*
После этого можно поменять hostname, проверьте файлы
vim /etc/sysconfig/network
vim /etc/hosts
hostname new.hostname.ru
После всего этого обязательно проведите тестовую перезагрузку и удостоверьтесь, что radi-массив собрался корректно, чтобы не поймать проблемы позже, когда перезагрузка произойдет по другой причине, а о возможных проблемах с рейдом вы уже забудете.