Отключал СХД на двух одинаковых серверах с Oracle Linux, подключенные через multipath, и столкнулся с интересной ошибкой. На одном сервере команда multipath -l отображает список устройств, а на втором — нет. При этом multipath отображает ошибки вида:
Feb 01 16:47:33 | sdb01_v1: ignoring map
При этом программный массив, собранный из многоканальных устройств, вполне себе работает. Непонятно. Пришлось приостановить работы и разобраться.
Было выдвинуто такое предположение: кто-то не пересобрал initramfs на одном из серверов, поэтому, после загрузки сервера и монтирования массива список устройств в multipath пуст.
После конфигурации multipath нужно пересобрать образ initramfs с помощью функции multipath. Делаем резервную копию текущего образа.
cp /boot/initramfs-$(uname -r).img /boot/initramfs-$(uname -r).img.bak
Выполняем команду dracut со следующими параметрами:
/sbin/dracut -v --force --add multipath --include /etc/multipath
Проверяем создание образа.
ls -lrt /boot/initramfs-$(uname -r).img
Перезагружаем сервер.
reboot
Вроде заработало, теперь можно всё разбирать смело.