Eu andei por aí / sys e cheguei muito perto da resposta.
# cd /sys/block/md0/md
# cat component_size
2147479552
Isso concorda com o que vimos antes. Mas isso:
# grep . dev-sd*/size
dev-sdc/size:2147482623
dev-sdd/size:2147482623
dev-sde/size:2147482623
dev-sdf/size:2930265560
dev-sdg/size:2147482623
dev-sdh/size:2147482623
dev-sdi/size:2147482623
dev-sdj/size:2147482623
dev-sdk/size:2147482623
dev-sdl/size:2147483648
dev-sdm/size:2147482623
dev-sdn/size:2147482623
dev-sdo/size:2147482623
dev-sdp/size:2147482623
dev-sdq/size:2147482623
dev-sdr/size:2147482623
dev-sds/size:2147482623
dev-sdt/size:2147482623
dev-sdu/size:2147482623
dev-sdv/size:2147482623
dev-sdw/size:2930265560
parece explicar por que o RAID vê o tamanho errado: a maioria dos drives aparece como 2TB, enquanto os 2 que foram substituídos aparecem como 3TB. Todas as unidades são do mesmo modelo, portanto, vamos ver se podemos alterar o tamanho percebido:
# parallel echo 2930265560 \> ::: dev-sd*/size
# grep . dev-sd*/size
dev-sdc/size:2930265560
dev-sdd/size:2930265560
dev-sde/size:2930265560
dev-sdf/size:2930265560
dev-sdg/size:2930265560
dev-sdh/size:2930265560
dev-sdi/size:2930265560
dev-sdj/size:2930265560
dev-sdk/size:2930265560
dev-sdl/size:2930265560
dev-sdm/size:2930265560
dev-sdn/size:2930265560
dev-sdo/size:2930265560
dev-sdp/size:2930265560
dev-sdq/size:2930265560
dev-sdr/size:2930265560
dev-sds/size:2930265560
dev-sdt/size:2930265560
dev-sdu/size:2930265560
dev-sdv/size:2930265560
dev-sdw/size:2930265560
Voila. Component_size ainda é pequeno, embora:
# cat component_size
2147479552
Talvez isso possa ser alterado pelo mdadm:
# mdadm --grow /dev/md0 --size=max
Isso infelizmente trava mdadm
e o acesso subsequente a / dev / md0 é bloqueado. E assim é o acesso ao component_size:
# cat component_size # This blocks
Suga. Mas a parte boa é que no syslog diz:
Apr 27 20:45:50 server kernel: [124731.725019] md0: detected capacity change from 39582343102464 to 54010589478912
O sistema de arquivos em / dev / md0 ainda é executado.
Após a reinicialização eu tive que fazer 'mdadm --grow / dev / md0 --size = max' novamente. Aguarde então que resync
seja concluído. Novamente, o acesso a / dev / md0 foi bloqueado. Então, outra reinicialização, seguida por xfs_growfs /dev/md0
e depois o redimensionamento foi concluído.