Eu tinha um volume mdadm raid5 de 3 discos (feito de / dev / sd [abc]) que estava no meio de uma nova forma, indo para 5 discos (adicionando / dev / sd [df]), quando o poder de o servidor falhou. isto é no Ubuntu 8.10 intrépido 64bit servidor (kernel 2.6.27), mdadm versão 2.6.4, construído a partir da fonte. O daemon monitor de ups foi legal o suficiente para executar os seguintes comandos naquele momento
mdadm --stop /dev/md0
shutdown -P now
quando eu coloquei a caixa de volta em funcionamento, eu usei o seguinte comando para trazer o ataque de volta, uma vez que não iria aparecer por si só.
mdadm --assemble /dev/md0 /dev/sd[abcdf]
ele voltou e reiniciou o processo de remodelação, mas com apenas 4 discos. / dev / sdf não tinha superbloco, então não apareceria para o passeio. Eu tentei adicioná-lo de volta em:
mdadm --add /dev/md0 /dev/sdf
mas isso apenas o adicionou como hot spare, não como o quinto membro ausente do ataque. então eu removi com --remove, uma vez que um hot spare neste momento do processo é meio inútil. para piorar, isso adicionou um superbloco ao disco que o identifica como um hotspare agora. fácil o suficiente para se livrar de --zero-superblock embora.
O que eu quero saber é, como faço para massagear esse disco para colocá-lo de volta no array em seu devido lugar? Não tenho motivos para acreditar que os dados sejam ruins, apenas o superbloco. ou nem é apropriado neste momento tentar readicioná-lo agora que a remodelação progrediu sem ela?
conteúdo de / proc / mdstat:
root@FS1:~# cat /proc/mdstat
Personalities : [raid6] [raid5] [raid4]
md0 : active raid5 sda[0] sdd[4] sdc[2] sdb[1]
1953524736 blocks super 0.91 level 5, 512k chunk, algorithm 2 [5/4] [UUU_U]
[======>..............] reshape = 33.4% (326807040/976762368) finish=1175.3min speed=9216K/sec
unused devices: <none>
conteúdo do /etc/mdadm/mdadm.conf
root@FS1:~# cat /etc/mdadm/mdadm.conf
# mdadm.conf
#
# Please refer to mdadm.conf(5) for information about this file.
#
# by default, scan all partitions (/proc/partitions) for MD superblocks.
# alternatively, specify devices to scan, using wildcards if desired.
DEVICE partitions
# auto-create devices with Debian standard permissions
CREATE owner=root group=disk mode=0660 auto=yes
# automatically tag new arrays as belonging to the local system
HOMEHOST <system>
# instruct the monitoring daemon where to send mail alerts
MAILADDR root
# definitions of existing MD arrays
ARRAY /dev/md0 level=raid5 num-devices=3 UUID=4128dcfb:b5e905ae:60b633ef:af4ede72
# This file was auto-generated on Wed, 15 Jul 2009 09:09:57 -0400
# by mkconf $Id$
saída do mdadm --examine --scan
root@FS1:~# mdadm --examine --scan
ARRAY /dev/md0 level=raid5 num-devices=5 UUID=4128dcfb:b5e905ae:60b633ef:af4ede72
spares=1
saída do mdadm -D
root@FS1:~# mdadm -D /dev/md0
/dev/md0:
Version : 00.91.03
Creation Time : Sun Jul 12 15:57:27 2009
Raid Level : raid5
Array Size : 1953524736 (1863.03 GiB 2000.41 GB)
Used Dev Size : 976762368 (931.51 GiB 1000.20 GB)
Raid Devices : 5
Total Devices : 4
Preferred Minor : 0
Persistence : Superblock is persistent
Update Time : Thu Jul 16 23:34:21 2009
State : clean, degraded, recovering
Active Devices : 4
Working Devices : 4
Failed Devices : 0
Spare Devices : 0
Layout : left-symmetric
Chunk Size : 512K
Reshape Status : 33% complete
Delta Devices : 2, (3->5)
UUID : 4128dcfb:b5e905ae:60b633ef:af4ede72 (local to host FS1)
Events : 0.216044
Number Major Minor RaidDevice State
0 8 0 0 active sync /dev/sda
1 8 16 1 active sync /dev/sdb
2 8 32 2 active sync /dev/sdc
3 0 0 3 removed
4 8 48 4 active sync /dev/sdd