Есть некоторая информация об изменениях формы в RAID-массивах, но я немного нервничаю и хотел бы получить подтверждение:
Проблема: у меня 2 500 ГБ накопителя в качестве программного рейда 5 (mdadm). Я хотел бы освободить один из двух дисков, так как избыточность RAID для слабаков ... Могу я просто
mdadm --grow --array-size=1
с последующим
mdadm --grow --raid-disks 1
?
Это кажется слишком простым. Как мне указать, какой диск будет освобожден? Одна из причин этого маневра в том, что у меня нет дополнительного места для запуска резервного копирования.
Изменить: Как это, это не стандартная реализация RAID5 (см. Комментарии Дэйва М или gman). Однако, пожалуйста, не наказывайте меня за безрассудство. Я просто заинтересован в наименее рискованном способе удаления диска. Давайте предположим, что я позаботился о проблеме резервного копирования, но я не собираюсь использовать ее для восстановления из резервной копии.
$ sudo mdadm --detail --test /dev/md1
/dev/md1:
Version : 00.90
Creation Time : Sat Sep 1 18:08:21 2007
Raid Level : raid5
Array Size : 488383936 (465.76 GiB 500.11 GB)
Used Dev Size : 488383936 (465.76 GiB 500.11 GB)
Raid Devices : 2
Total Devices : 2
Preferred Minor : 1
Persistence : Superblock is persistent
Update Time : Mon Nov 28 11:32:13 2011
State : clean
Active Devices : 2
Working Devices : 2
Failed Devices : 0
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 64K
UUID : XXX (local to host XXX)
Events : 0.29336
Number Major Minor RaidDevice State
0 8 33 0 active sync /dev/sdc1
1 8 17 1 active sync /dev/sdb1
Ответы:
При использовании mdadm RAID 5 с двумя накопителями является двоичным идентичным RAID1, а не RAID 0, и не существует волшебного невидимого устройства. Вы можете сказать, потому что массив имеет тот же размер, что и каждый из двух компонентов, а не их сумму:
Вы можете подтвердить это, выполнив:
MD5 одинаков для каждого, потому что диски являются избыточными. Поскольку это то же самое, что и RAID, после его остановки мы можем либо создать RAID1 на тех же устройствах и иметь те же данные:
Или сделайте RAID1 только с одним устройством, освобождая другое:
Затем очистите суперблок от удаленного:
Поскольку это суперблок версии 0.90 mdadm, каждый диск также должен использоваться самостоятельно. Поскольку 1.1 и 1.2 помещают метаданные в начало массива, они не будут работать для этих версий.
источник
Я понимаю, что на этот вопрос был дан ответ несколько лет назад, но недавно я решил похожую проблему, и я думаю, что смогу внести некоторую ясность как в вопрос, так и в ответ Рэя М ...
Подобный двухдисковый RAID5 с суперблоком версии 1.2, как сказал Рэй М, двоичен, идентичен RAID1. Однако, в отличие от версий v0.9, массивы с метаданными 1.x могут оставлять разрыв между началом устройства и началом данных массива. Итак, чтобы проверить эквивалентность двух устройств, сначала определите смещение данных каждого компонента:
Вы должны увидеть такую строку для каждого устройства (по умолчанию одинаково для обоих):
Здесь начинаются данные устройства. Начиная здесь, скопируйте некоторые данные:
Суммы md5 должны быть равны:
Поскольку диски на самом деле являются зеркалами друг друга, вы можете либо выйти из строя и удалить один диск, оставив массив поврежденным:
Или начните заново с одного диска RAID1:
Обратите внимание, что, несмотря на двоичную эквивалентность RAID5 для двух дисков RAID1, вы не можете просто:
с двухдисковым RAID5.
источник