Вопрос или проблема
Немного истории для начала. У меня был RAID5 из 4 дисков, и один из дисков вышел из строя. Я удалил его из массива, и некоторое время он находился в деградированном состоянии:
mdadm --manage /dev/md127 --fail /dev/sde1 --remove /dev/sde1
Моя потребность в данных внезапно уменьшилась, и я решил навсегда уменьшить массив до 3 дисков. Я уменьшил файловую систему до размера, гораздо меньшего нового размера массива, затем:
mdadm --grow /dev/md127 --array-size 35156183040 # уменьшает размер массива
mdadm --grow --raid-devices=3 /dev/md127 --backup-file /store/4TB_WD/md127.backup # преобразует массив, удаляя 1 диск.
Теперь это завершено:
cat /proc/mdstat
Личности : [raid6] [raid5] [raid4]
md127 : активный raid5 sdd1[1] sdc1[3](S) sdb1[2]
35156183040 блоков супер 1.2 уровень 5, 64k кусок, алгоритм 2 [3/2] [_UU]
битовая карта: 103/131 страницы [412KB], 65536KB кусок
неиспользуемые устройства: <нет>
но это оставило меня с деградированным RAID5 из 3 дисков с 2 активными дисками и одним резервным:
mdadm -D /dev/md127
/dev/md127:
Версия : 1.2
Время создания : Пт Сен 9 22:39:53 2022
Уровень RAID : raid5
Размер массива : 35156183040 (32.74 TiB 36.00 TB)
Используемый размер устройства : 17578091520 (16.37 TiB 18.00 TB)
RAID устройства : 3
Всего устройств : 3
Устойчивость : Суперблок является постоянным
Намеренная битовая карта : Внутренняя
Время обновления : Пт Янв 20 11:12:10 2023
Состояние : активный, деградированный
Активные устройства : 2
Рабочие устройства : 3
Неуспешные устройства : 0
Резервные устройства : 1
Макет : левосимметричный
Размер куска : 64K
Политика согласованности : битовая карта
Имя : oldserver-h.oldserver.lan:127
UUID : 589dd683:d9945b24:768d9b2b:28441f90
События : 555962
Номер Major Minor Устройство RAID Состояние
- 0 0 0 удалено
1 8 49 1 активный синхронный /dev/sdd1
2 8 17 2 активный синхронный /dev/sdb1
3 8 33 - резервный /dev/sdc1
Как сделать этот резервный диск активным, чтобы массив мог восстановиться до здорового состояния? cat /sys/block/md127/md/sync_action
показывает idle
, и эхо repair
не дает никакого результата.
Кроме того, где я ошибся в первую очередь?
[правка]
Добавляю вывод команды lsblk
по запросу:
lsblk
ИМЯ MAJ:MIN RM РАЗМЕР RO ТИП ТОЧКА_МОНТИРОВАНИЯ
sda 8:0 0 100G 0 диск
├─sda1 8:1 0 1G 0 часть /boot
└─sda2 8:2 0 99G 0 часть
├─clearos-root 253:0 0 91.1G 0 lvm /
└─clearos-swap 253:1 0 7.9G 0 lvm [SWAP]
sdb 8:16 0 16.4T 0 диск
└─sdb1 8:17 0 16.4T 0 часть
└─md127 9:127 0 32.8T 0 raid5 /store/RAID_A
sdc 8:32 0 16.4T 0 диск
└─sdc1 8:33 0 16.4T 0 часть
└─md127 9:127 0 32.8T 0 raid5 /store/RAID_A
sdd 8:48 0 16.4T 0 диск
└─sdd1 8:49 0 16.4T 0 часть
└─md127 9:127 0 32.8T 0 raid5 /store/RAID_A
sde 8:64 0 3.7T 0 диск
└─sde1 8:65 0 3.7T 0 часть /store/4TB_WD
sdf 8:80 0 931.5G 0 диск
└─sdf1 8:81 0 931.5G 0 часть /store/1TB1
sdg 8:96 0 931.5G 0 диск
└─sdg1 8:97 0 931.5G 0 часть /store/1TB2
sr0 11:0 1 1.2G 0 rom
[/правка]
Резервный диск должен автоматически использоваться. Странно, что этого не произошло.
Вы можете попробовать удалить и заново добавить резервный диск:
mdadm -f /dev/md127 /dev/sdc1
mdadm -r /dev/md127 /dev/sdc1
mdadm --zero-superblock /dev/sdc1
mdadm -a /dev/md127 /dev/sdc1
Если это не сработает, должны быть сообщения об ошибках в dmesg
, объясняющие, что не так.
Вы также можете попробовать сначала увеличить raid1 до 6 устройств, а затем уменьшить его обратно до 5, это вручную активирует резервный диск:
mdadm --grow /dev/md0 -n6
Затем подождите, пока диски синхронизируются, проверьте это, выполнив
cat /proc/mdstat
до тех пор, пока не отобразится UUUUU_ с 5 дисками
Затем вы можете уменьшить назад до 5 устройств:
mdadm --grow /dev/md0 -n5
Ответ или решение
Как активировать резервный диск в деградированном RAID5 с использованием mdadm
При работе с RAID массивами в Linux, важно понимать принцип работы программного обеспечения mdadm, которое используется для управления RAID конфигурациями. Вы уже находитесь в процессе оптимизации вашего RAID5 массива после сбоя одного из дисков. Теперь рассмотрим шаги, которые помогут вам превратить резервный диск в активный, чтобы восстановить массив до здорового состояния.
Текущая ситуация
Вы имеете RAID5 массив, состоящий из трех дисков, где два диска активны, а один диск (sdc1) находится в состоянии резервного:
- Доступные диски:
- sdd1 — активный
- sdb1 — активный
- sdc1 — резервный
Проверяем состояние массива с помощью:
cat /proc/mdstat
Поскольку состояние массива обозначено как "деградированное", это вызывает необходимость активировать резервный диск.
Шаги для активации резервного диска
-
Проверка состояния вашего RAID массива
Начните с анализа состояния вашего устройства RAID.mdadm -D /dev/md127
Убедитесь, что система распознает резервный диск (sdc1).
-
Удаление и повторное добавление резервного диска
В некоторых случаях резервный диск может не активироваться автоматически. Чтобы решить эту проблему, можно удалить его из массива и добавить снова:mdadm -f /dev/md127 /dev/sdc1 mdadm -r /dev/md127 /dev/sdc1 mdadm --zero-superblock /dev/sdc1 mdadm -a /dev/md127 /dev/sdc1
Объяснение команд:
-f
— помечает диск как неисправный.-r
— удаляет неисправный диск из массива.--zero-superblock
— обнуляет суперблок на диске, который позволяет mdadm обработать его как новый.-a
— добавляет диск обратно в массив.
-
Проверка результатов
После выполнения этих команд проверьте статус массива:cat /proc/mdstat
Вы должны увидеть, что массив стал активным, и происходит синхронизация.
Диагностика проблем
Если вышеописанные шаги не сработали, обратите внимание на логи системы. Используйте команду:
dmesg | tail
Эта команда покажет последние сообщения системы и может указывать на ошибки, связанные с RAID.
Почему не активировался резервный диск?
Возможные причины:
- Ошибки в конфигурации: Если RAID массив не был правильно настроен после удаления диска, это может привести к проблемам с активацией резервного.
- Неисправности диска: Иногда резервный диск может иметь физические проблемы или поврежденные блоки, что препятствует его активации.
Заключение
Работа с RAID массивами требует точности и тщательного контроля состояния каждого из дисков. Если после выполнения всех шагов проблема сохраняется, можно рассмотреть возможность обращения к профессиональным услугам по восстановлению данных или технической поддержке. Убедитесь, что создаете резервные копии важных данных перед выполнением операций, которые могут повлиять на состояние вашего RAID массива.