A Synology possui uma versão personalizada do driver md e dos conjuntos de ferramentas mdadm que adicionam um sinalizador 'DriveError' à estrutura de sinalizadores rdev-> no kernel.
Efeito líquido - se você tiver a infelicidade de obter uma falha na matriz (primeira unidade), combinada com um erro em uma segunda unidade - a matriz entra no estado de não permitir reparar / reconstruir a matriz, mesmo que as leituras da unidade estejam funcionando bem.
Neste ponto, não estou realmente preocupado com essa questão do ponto de vista dessa matriz, pois já retirei o conteúdo e pretendo reconstruir, mas mais por querer ter um caminho de resolução para isso no futuro , já que é a segunda vez que eu passo por isso e sei que já vi outras pessoas fazendo perguntas semelhantes em fóruns.
O suporte a Synology tem sido pouco útil (e geralmente não responde) e não compartilha nenhuma informação sobre como lidar com os ataques da caixa.
Conteúdo de / proc / mdstat:
ds1512-ent> cat /proc/mdstat
Personalities : [linear] [raid0] [raid1] [raid10] [raid6] [raid5] [raid4]
md2 : active raid5 sdb5[1] sda5[5](S) sde5[4](E) sdd5[3] sdc5[2]
11702126592 blocks super 1.2 level 5, 64k chunk, algorithm 2 [5/4] [_UUUE]
md1 : active raid1 sdb2[1] sdd2[3] sdc2[2] sde2[4] sda2[0]
2097088 blocks [5/5] [UUUUU]
md0 : active raid1 sdb1[1] sdd1[3] sdc1[2] sde1[4] sda1[0]
2490176 blocks [5/5] [UUUUU]
unused devices: <none>
Status de um mdadm --detail / dev / md2:
/dev/md2:
Version : 1.2
Creation Time : Tue Aug 7 18:51:30 2012
Raid Level : raid5
Array Size : 11702126592 (11160.02 GiB 11982.98 GB)
Used Dev Size : 2925531648 (2790.00 GiB 2995.74 GB)
Raid Devices : 5
Total Devices : 5
Persistence : Superblock is persistent
Update Time : Fri Jan 17 20:48:12 2014
State : clean, degraded
Active Devices : 4
Working Devices : 5
Failed Devices : 0
Spare Devices : 1
Layout : left-symmetric
Chunk Size : 64K
Name : MyStorage:2
UUID : cbfdc4d8:3b78a6dd:49991e1a:2c2dc81f
Events : 427234
Number Major Minor RaidDevice State
0 0 0 0 removed
1 8 21 1 active sync /dev/sdb5
2 8 37 2 active sync /dev/sdc5
3 8 53 3 active sync /dev/sdd5
4 8 69 4 active sync /dev/sde5
5 8 5 - spare /dev/sda5
Como você pode ver - / dev / sda5 foi adicionado novamente à matriz. (Foi a unidade que falhou completamente) - mas mesmo que o md veja a unidade como uma reposição, ela não será reconstruída. / dev / sde5, nesse caso, é a unidade problemática com o estado (E) DiskError.
Eu tentei parar o dispositivo md, executar remontagens de força, remover / ler sda5 do dispositivo / etc. Nenhuma mudança de comportamento.
Consegui recriar completamente a matriz com o seguinte comando:
mdadm --stop /dev/md2
mdadm --verbose \
--create /dev/md2 --chunk=64 --level=5 \
--raid-devices=5 missing /dev/sdb5 /dev/sdc5 /dev/sdd5 /dev/sde5
que trouxe a matriz de volta a esse estado:
md2 : active raid5 sde5[4] sdd5[3] sdc5[2] sdb5[1]
11702126592 blocks super 1.2 level 5, 64k chunk, algorithm 2 [5/4] [_UUUU]
Em seguida, adicionei novamente / dev / sda5:
mdadm --manage /dev/md2 --add /dev/sda5
após o qual iniciou uma reconstrução:
md2 : active raid5 sda5[5] sde5[4] sdd5[3] sdc5[2] sdb5[1]
11702126592 blocks super 1.2 level 5, 64k chunk, algorithm 2 [5/4] [_UUUU]
[>....................] recovery = 0.1% (4569508/2925531648) finish=908.3min speed=53595K/sec
Observe a posição da unidade "ausente" que corresponde à posição exata do slot ausente.
Quando isso terminar, acho que provavelmente puxarei a unidade questionável e a reconstruiremos novamente.
Estou procurando sugestões para saber se existe alguma maneira "menos assustadora" de fazer esse reparo - ou se alguém passou por essa experiência com uma matriz Synology e sabe como forçá-la a reconstruir, além de colocar o dispositivo md offline e recriar a matriz do zero.