Замена диска RAID1 – размеры разделов отличаются

Вопрос или проблема

Недавно один из моих дисков RAID1 вышел из строя. Я купил замену, подключил его и отформатировал как Linux RAID с помощью cfdisk.

  • Новый диск – /dev/sdc
  • Старый диск – /dev/sdd

Они, похоже, имеют одинаковое количество байтов и секторов в целом, но отформатированные разделы отличаются по размеру…

# fdisk -l /dev/sd{c,d}
Диск /dev/sdc: 7.28 TiB, 8001563222016 байт, 15628053168 секторов
Модель диска: ST8000VN0022-2EL
Единицы: сектора по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 4096 байт
Размер ввода-вывода (минимальный/оптимальный): 4096 байт / 4096 байт
Тип метки диска: gpt
Идентификатор диска: 952AC4E6-20B9-408D-83CE-AC4AEFBC1075

Устройство     Начало         Конец     Секторы  Размер Тип
/dev/sdc1   2048 15628052479 15628050432  7.3T Linux RAID


Диск /dev/sdd: 7.28 TiB, 8001563222016 байт, 15628053168 секторов
Модель диска: ST8000VN004-2M21
Единицы: сектора по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 4096 байт
Размер ввода-вывода (минимальный/оптимальный): 4096 байт / 4096 байт
Тип метки диска: gpt
Идентификатор диска: 4069B8CB-4C43-304B-B872-DDB89C0E0AA1

Устройство     Начало         Конец     Секторы  Размер Тип
/dev/sdd1   2048 15628053134 15628051087  7.3T Linux RAID

Конкретно…

/dev/sdc1   2048 15628052479 15628050432  7.3T Linux RAID
/dev/sdd1   2048 15628053134 15628051087  7.3T Linux RAID

Новый раздел /dev/sdc1 меньше существующего раздела. В результате…

# mdadm --manage /dev/md127 --add /dev/sdc1
mdadm: Значение "kimura:0" не может быть установлено как devname. Причина: несовместимо с POSIX. Значение игнорируется.
mdadm: /dev/sdc1 недостаточно большой, чтобы присоединиться к массиву

Я нашел тему, которая предполагает, что один из них (/dev/sdd, который является ST8000VN004) использует 512E для эмуляции 512 байт на логический сектор, несмотря на то что физический сектор составляет 4096 байт.

Теперь я опасаюсь изменить размер существующего раздела на /dev/sdd1, чтобы он совпадал с размером /dev/sdc1, так как это часть массива RAID1 с тремя логическими томами наверху.

Я нашел связанную тему, но проблема там другая, так как у них RAID на 3 ТБ, и они хотят разделить новый на 14 ТБ, так что проблема пространства не актуальна, а в моем случае новый раздел меньше существующего.

Буду признателен за любые мысли или советы о том, как поступить дальше.

Ответ или решение

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

Шаг 1: Анализ причин различия

Вы уже выяснили, что один из дисков использует 512E и эмулирует 512 байт на логическом уровне, тогда как нa новом диске размер сектора физически составляет 4096 байт. Этот факт может объяснять, почему вы видите различия в размерах разделов. Однако не стоит сбрасывать со счетов возможность того, что параметры, заданные инструментом cfdisk для нового диска, также могут влиять на результат.

Шаг 2: Создание раздела аналогичного существующему

Вам необходимо привести новый раздел к размерам, сопоставимым с уже существующим. В вашем случае, новый раздел /dev/sdc1 меньше, чем /dev/sdd1. Вот как это можно сделать:

  1. Резервное копирование данных: Перед любыми изменениями лучше всего создать резервные копии всех важных данных из существующих логических томов.

  2. Удаление раздела на новом диске: Используйте cfdisk или gdisk, чтобы удалить текущий раздел /dev/sdc1.

  3. Создание нового раздела: Воссоздайте раздел с теми же параметрами, что и на старом диске /dev/sdd1. Убедитесь, что:

    • Начальный сектор совпадает (2048).
    • Конечний сектор соответствует (15628053134).
  4. Форматирование нового раздела: После создания деления убедитесь, что новый раздел отформатирован в формате Linux RAID.

Шаг 3: Добавление нового диска в RAID

После того как новый раздел будет создан с правильными размерами, можно снова попытаться добавить его в массив RAID:

mdadm --manage /dev/md127 --add /dev/sdc1

Следите за сообщениями в командной строке. Если всё сделано правильно, новый раздел должен добавиться без проблем.

Шаг 4: Проверка статуса массива

После выполнения этих шагов обязательно проверьте статус RAID массива с помощью команды:

cat /proc/mdstat
mdadm --detail /dev/md127

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

Заключение

В случае возникновения каких-либо дальнейших вопросов или сомнений, не стесняйтесь обращаться к документации mdadm, а также к специалистам в области хранения данных. Работая с RAID, всегда важно обеспечивать безопасность данных и иметь резервные копии, прежде чем выполнять кардинальные изменения.

Оцените материал
Добавить комментарий

Капча загружается...