сначала немного предыстории к этому вопросу: я использую RAID-6 внутри внешней системы RAID / NAS QNAP TS869L. Раньше я начал с 5 дисков по 3 ТБ каждый, а позже добавил в RAID еще 2 диска по 3 ТБ. Внутренние компоненты QNAP обрабатывали рост, повторную синхронизацию и т. Д., И, похоже, все было в порядке.
Около 2 недель назад у меня произошел сбой одного из дисков (диск № 5, диск № 2 вышел из строя), и каким-то образом (я не знаю почему) также диски 1 и 2 были выброшены из массива. . Я заменил диск №5, но RAID снова не заработал.
После нескольких обращений в службу технической поддержки QNAP они воссоздали массив (используя mdadm --create --force --assume-clean ...), но получившийся массив не смог найти файловую систему, и меня любезно отослали обратитесь в компанию по восстановлению данных, которую я не могу себе позволить.
После некоторого покопания в старых файлах журнала, сброса диска до заводских значений по умолчанию и т. Д. Я обнаружил несколько ошибок, которые были сделаны во время этого воссоздания - я бы хотел, чтобы у меня остались некоторые исходные метаданные, но, к сожалению, у меня их нет (я определенно усвоил этот урок).
В настоящее время я нахожусь в точке, где я знаю правильный размер блока (64 КБ), версию метаданных (1.0; заводское значение по умолчанию было 0,9, но из того, что я читал, 0.9 не обрабатывает диски более 2 ТБ, у меня 3 ТБ) , и теперь я нахожу файловую систему ext4, которая должна быть на дисках.
Осталось только определить правильный порядок дисков!
Я начал использовать описание из ответа №4 из "Восстановление данных RAID 5 после создания нового массива вместо повторного использования"но я немного не понимаю, в каком порядке должен быть надлежащий RAID-6. RAID-5 довольно хорошо документирован во многих местах, но RAID-6 гораздо меньше.
Кроме того, изменяется ли компоновка, то есть распределение блоков данных по четности и данных по дискам, после увеличения массива с 5 до 7 дисков, или же повторная синхронизация реорганизует их таким образом, как собственный 7-дисковый RAID -6 было бы?
Спасибо
еще несколько выводов mdadm, которые могут быть полезны:
версия mdadm:
[~] # mdadm --version
mdadm - v2.6.3 - 20th August 2007
Детали mdadm с одного из дисков в массиве:
[~] # mdadm --examine /dev/sda3
/dev/sda3:
Magic : a92b4efc
Version : 1.0
Feature Map : 0x0
Array UUID : 1c1614a5:e3be2fbb:4af01271:947fe3aa
Name : 0
Creation Time : Tue Jun 10 10:27:58 2014
Raid Level : raid6
Raid Devices : 7
Used Dev Size : 5857395112 (2793.02 GiB 2998.99 GB)
Array Size : 29286975360 (13965.12 GiB 14994.93 GB)
Used Size : 5857395072 (2793.02 GiB 2998.99 GB)
Super Offset : 5857395368 sectors
State : clean
Device UUID : 7c572d8f:20c12727:7e88c888:c2c357af
Update Time : Tue Jun 10 13:01:06 2014
Checksum : d275c82d - correct
Events : 7036
Chunk Size : 64K
Array Slot : 0 (0, 1, failed, 3, failed, 5, 6)
Array State : Uu_u_uu 2 failed
Детали mdadm для массива в текущем порядке дисков (на основе моего лучшего предположения, восстановленного из старых файлов журнала)
[~] # mdadm --detail /dev/md0
/dev/md0:
Version : 01.00.03
Creation Time : Tue Jun 10 10:27:58 2014
Raid Level : raid6
Array Size : 14643487680 (13965.12 GiB 14994.93 GB)
Used Dev Size : 2928697536 (2793.02 GiB 2998.99 GB)
Raid Devices : 7
Total Devices : 5
Preferred Minor : 0
Persistence : Superblock is persistent
Update Time : Tue Jun 10 13:01:06 2014
State : clean, degraded
Active Devices : 5
Working Devices : 5
Failed Devices : 0
Spare Devices : 0
Chunk Size : 64K
Name : 0
UUID : 1c1614a5:e3be2fbb:4af01271:947fe3aa
Events : 7036
Number Major Minor RaidDevice State
0 8 3 0 active sync /dev/sda3
1 8 19 1 active sync /dev/sdb3
2 0 0 2 removed
3 8 51 3 active sync /dev/sdd3
4 0 0 4 removed
5 8 99 5 active sync /dev/sdg3
6 8 83 6 active sync /dev/sdf3
вывод из / proc / mdstat (md8, md9 и md13 - это внутренние RAID-массивы с подкачкой и т. д.; тот, который мне нужен, - это md0)
[~] # more /proc/mdstat
Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4] [multipath]
md0 : active raid6 sdf3[6] sdg3[5] sdd3[3] sdb3[1] sda3[0]
14643487680 blocks super 1.0 level 6, 64k chunk, algorithm 2 [7/5] [UU_U_UU]
md8 : active raid1 sdg2[2](S) sdf2[3](S) sdd2[4](S) sdc2[5](S) sdb2[6](S) sda2[1] sde2[0]
530048 blocks [2/2] [UU]
md13 : active raid1 sdg4[3] sdf4[4] sde4[5] sdd4[6] sdc4[2] sdb4[1] sda4[0]
458880 blocks [8/7] [UUUUUUU_]
bitmap: 21/57 pages [84KB], 4KB chunk
md9 : active raid1 sdg1[6] sdf1[5] sde1[4] sdd1[3] sdc1[2] sda1[0] sdb1[1]
530048 blocks [8/7] [UUUUUUU_]
bitmap: 37/65 pages [148KB], 4KB chunk
unused devices: <none>
Я бы предложил использовать тот же порядок, что и другие массивы, потому что они, скорее всего, были созданы в тех же условиях, что и рассматриваемый массив.
Не забывайте всегда использовать "--assume-clean" при сборке или создании - вы, вероятно, знаете это достаточно хорошо, но стоит упомянуть еще раз.
В идеале вы должны работать с образами (dd) оригинальных дисков, а не с самими дисками. Я понимаю, что не всегда все идеально :-)
Наконец, если вы можете, «mount -o ro», если можете, просто для еще одного уровня безопасности «Не пишите на диски, пожалуйста» :-)