我build立了一个新的两个磁盘RAID1,在mdstat中看起来很健康。 几个小时后,我就看到了当我运行cat /proc/mdstat 。
Personalities : [raid1] md1 : active (auto-read-only) raid1 sda2[0] sdb2[1] 4982784 blocks super 1.2 [2/2] [UU] resync=PENDING md0 : active raid1 sda1[0] 483266560 blocks super 1.2 [2/1] [U_] bitmap: 4/4 pages [16KB], 65536KB chunk unused devices: <none>
我认为这是奇怪的, md0显示缺less一个sdb分区,但md1不是。 我不认为sdb失败了,因为它是新的,所以我怎样才能修复md0 ?
从系统日志中:
$ dmesg | grep sdb [ 3.612217] sd 1:0:0:0: [sdb] 976773168 512-byte logical blocks: (500 GB/465 GiB) [ 3.612219] sd 1:0:0:0: [sdb] 4096-byte physical blocks [ 3.612290] sd 1:0:0:0: [sdb] Write Protect is off [ 3.612294] sd 1:0:0:0: [sdb] Mode Sense: 00 3a 00 00 [ 3.612326] sd 1:0:0:0: [sdb] Write cache: enabled, read cache: enabled, doesn't support DPO or FUA [ 3.630283] sdb: sdb1 sdb2 [ 3.631320] sd 1:0:0:0: [sdb] Attached SCSI disk [ 3.793804] md: bind<sdb1> [ 3.795337] md: bind<sdb2> [ 3.846233] md: kicking non-fresh sdb1 from array! [ 3.846240] md: unbind<sdb1> [ 3.865721] md: export_rdev(sdb1)
从“从arrays踢非新鲜的sdb1”的许多谷歌命中之一:
这可能发生在不洁净的关机(如电源故障)之后。 通常删除和重新添加问题设备将纠正情况:
/sbin/mdadm /dev/md0 --fail /dev/sdb1 --remove /dev/sdb1 /sbin/mdadm /dev/md0 --add /dev/sdb1