Рейтинг:0

Приходится вручную создавать RAID-массив при каждой загрузке и не может добавить третий диск — MDADM

флаг es

У меня есть массив RAID1, который мне приходилось вручную перестраивать каждый раз при загрузке системы в течение длительного времени. Никогда не было времени понять, почему. Это команда, которую я использовал для пересборки при каждой загрузке: sudo mdadm --build /dev/md0 --level=1 --raid-devices=2 /dev/sdb1 /dev/sde1

Это прекрасно работает и не теряет никаких данных. Затем я могу вручную смонтировать /dev/md0 там, где мне это нужно (в данном случае /mnt/plex). Однако я только что установил третий жесткий диск на свой сервер и хотел бы перейти на RAID5. Я использовал cfdisk для создания раздела на моем диске.

Затем я обновил массив до RAID5:
sudo mdadm --grow /dev/md0 -l 5

Затем я добавил свой новый диск в массив sudo mdadm /dev/md0 --добавить /dev/sda1

Наконец, я пытаюсь увеличить массив до 3 дисков. sudo mdadm /dev/md0 --grow -n 3 В этот момент мне выдаются следующие ошибки:

mdadm: строка ARRAY /dev/md0 не имеет идентификационной информации.
mdadm: /dev/md0: невозможно получить суперблок из /dev/sda1

Первая ошибка возникает часто, это вторая ошибка, вызывающая проблему. Почему я не могу добавить /dev/sda1 в массив? Пока я занимаюсь этим, почему массив не создается автоматически при загрузке системы?

Вот мои диски/разделы, если это поможет:

sda 8:0 0 3.7T 0 диск
+-sda1 8:1 0 3.7T 0 часть
  +-md0 9:0 0 3.7T 0 raid5 /mnt/plex
sdb 8:16 0 3.7T 0 диск
+-sdb1 8:17 0 3.7T 0 часть
  +-md0 9:0 0 3.7T 0 raid5 /mnt/plex
sdc 8:32 0 931.5G 0 диск
+-md1 9:1 0 931.4G 0 raid1 /mnt/nas
sdd 8:48 0 931.5G 0 диск
+-md1 9:1 0 931.4G 0 raid1 /mnt/nas
sde 8:64 0 3.7T 0 диск
+-sde1 8:65 0 3.7T 0 часть
  +-md0 9:0 0 3.7T 0 raid5 /mnt/plex
sdf 8:80 0 149.1G 0 диск
+-sdf1 8:81 0 512M 0 часть /boot/efi
+-sdf2 8:82 0 148.6G 0 часть /

SDB и SDF являются корректно функционирующими элементами RAID. Вот подробности массива из mdadm, если это поможет

gradyn@hbi-сервер:~$ sudo mdadm --detail /dev/md0
mdadm: строка ARRAY /dev/md0 не имеет идентификационной информации.
/dev/md0:
           Версия:
     Время создания: Чт, 14 октября, 22:19:50 2021
        Уровень рейда: рейд5
        Размер массива: 3906886464 (3725,90 ГиБ 4000,65 ГБ)
     Используемый размер разработки: 3906886464 (3725,90 ГиБ 4000,65 ГБ)
      Рейдовые устройства: 2
     Всего устройств: 3

             Состояние: чистое
    Активные устройства: 2
   Рабочие устройства: 3
    Неудачные устройства: 0
     Запасные устройства: 1

            Макет: левосимметричный
        Размер блока: 64 КБ

Политика согласованности: повторная синхронизация

    Номер Основной Младший RaidDevice State
       0 8 17 0 активная синхронизация /dev/sdb1
       1 8 65 1 активная синхронизация /dev/sde1

       2 8 1 - запасной /dev/sda1

Рейтинг:2
флаг ca

Если вам нужно оформить мдадм --сборка для сборки массива, значит, вы создали массив "старого стиля", с нет суперблока. Другими словами, геометрия массива (и другие метаданные) нет хранится на затронутых дисках, система ожидает, что эта информация будет предоставлена ​​в командной строке или найдена в файле конфигурации с именем /etc/mdadm.conf

Что касается другой проблемы (невозможность добавить третий активный диск), давайте посмотрим, что говорится на странице руководства. --строить (без суперблока) массивы:

При использовании с --build только linear, stripe, raid0, 0, raid1, multipath, mp и faulty допустимы.

Как видите, RAID5 не разрешен для устаревших массивов. Выпустив первый --расти команда, которую вы заставили систему войти в неожиданный сценарий, и следующее --Добавлять оставалось только установить новый диск как запасной. Второй --расти затем происходит сбой, потому что он не может найти действительный суперблок на дисках-участниках.

Я настоятельно рекомендую вам сделать резервную копию ваших данных и воссоздать массив RAID5 как с суперблоком, так и с битовой картой записи. Для этого вам просто нужно использовать мдадм настройки по умолчанию. Другими словами, что-то вроде

mdadm --create /dev/md0 -l 5 -n 3 /dev/sda1 /dev/sdb1 /dev/sde1

должно быть достаточно. Обязательно поймите, что приведенная выше команда удалит все ваши данные с затронутых дисков, так и быть Конечно иметь подтвержденную исправную резервную копию перед ее выпуском.

Gradyn Wursten avatar
флаг es
Не уверен, почему он не уведомил меня об этом ответе раньше.В конце концов я пришел к тому же выводу, что использовал какой-то устаревший массив и нуждался в его перестройке, но я не мог понять, как это произошло или в чем разница между «старым» и «новым». "массивы. Это объясняет это очень ясно и подробно, спасибо!

Ответить или комментировать

Большинство людей не понимают, что склонность к познанию нового открывает путь к обучению и улучшает межличностные связи. В исследованиях Элисон, например, хотя люди могли точно вспомнить, сколько вопросов было задано в их разговорах, они не чувствовали интуитивно связи между вопросами и симпатиями. В четырех исследованиях, в которых участники сами участвовали в разговорах или читали стенограммы чужих разговоров, люди, как правило, не осознавали, что задаваемый вопрос повлияет — или повлиял — на уровень дружбы между собеседниками.