
我有一個 3 磁碟 mdadm raid5 磁碟區(由 /dev/sd[abc] 組成),正在重塑,當伺服器電源出現故障時,將變為 5 個磁碟(新增 /dev/sd[df]) 。這是在 ubuntu 8.10 intrepid 64 位元伺服器(核心 2.6.27)上,mdadm 版本 2.6.4,從原始碼建置的。 ups監控守護程式當時夠好,可以執行以下指令
mdadm --stop /dev/md0
shutdown -P now
當我讓盒子恢復並運行時,我使用以下命令來恢復 raid,因為它不會自行出現。
mdadm --assemble /dev/md0 /dev/sd[abcdf]
它恢復並重新開始重塑過程,但只有 4 個光碟。 /dev/sdf 沒有超級區塊,所以它不會隨之而來。我嘗試將其添加回:
mdadm --add /dev/md0 /dev/sdf
但這只是將其添加為熱備件,而不是作為突襲中失踪的第五名成員。所以我用 --remove 刪除了它,因為此時的熱備件有點無用。更糟的是,這向磁碟添加了一個超級區塊,現在將其標識為熱備用。不過,使用 --zero-superblock 很容易擺脫它。
我想知道的是,我如何按摩該磁碟以使其回到陣列中正確的位置?我沒有理由相信數據是壞的,只是超級塊。或者,既然重塑已經在沒有它的情況下進行,此時嘗試重新添加它是否甚至不合適?
/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>
/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$
mdadm --examine --scan 的輸出
root@FS1:~# mdadm --examine --scan
ARRAY /dev/md0 level=raid5 num-devices=5 UUID=4128dcfb:b5e905ae:60b633ef:af4ede72
spares=1
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
答案1
首先,讓 md0 設備完成現有設定的消化。此時不要胡鬧它,因為它正忙於遵循它唯一的命令 -讓陣列恢復到乾淨狀態!
一旦情況穩定下來,繼續刪除第五個磁碟機的「舊」條目。然後繼續將磁碟機新增至陣列並像最初一樣重新調整,不過這次您將從 4 個磁碟而不是 3 個磁碟開始。