我遇到了一种奇怪的情况,我们正在尝试解决,但无法弄清楚。对于一台服务器,我们的配置如下:
md0 : active raid0 md101[1] md100[0]
642050048 blocks super 1.2 512k chunks
md100 : active raid1 sda3[1](W) nvme2n1p3[0]
321157120 blocks super 1.2 [2/2] [UU]
bitmap: 0/3 pages [0KB], 65536KB chunk
md101 : active raid1 nvme0n1p3[0] nvme1n1p3[1]
321157120 blocks super 1.2 [2/2] [UU]
bitmap: 0/3 pages [0KB], 65536KB chunk
这是两个 raid 1(md100、md101),在 md0 中组合为 raid 0,从而产生 raid 1+0。md0 被指定为 LVM VG 的物理驱动器。
我们正在测试启动时的磁盘故障,奇怪的是,从逻辑卷挂载的 fstab 上的分区出现致命错误,并且系统无法启动,即使 fstab 中有 nofail 标志。
我将此归咎于 LVM,但在维护模式下访问后,我注意到当我删除 sda 时,md100 和 md0 报告为“不活动”:
md0 : inactive md101[1](S)
321025024 blocks super 1.2
md101 : active raid1 nvme0n1p3[0] nvme1n1p3[1]
321157120 blocks super 1.2 [2/2] [UU]
bitmap: 0/3 pages [0KB], 65536KB chunk
md100 : inactive nvme2n1p3[0](S)
321157120 blocks super 1.2
mdadm 报告:
/dev/md0:
Version : 1.2
Raid Level : raid0
Total Devices : 1
Persistence : Superblock is persistent
State : inactive
Working Devices : 1
Name : a20:0 (local to host a20)
UUID : 86a127b0:ebb2b28e:b892d07b:98b19065
Events : 0
Number Major Minor RaidDevice
- 9 101 - /dev/md/101
/dev/md100:
Version : 1.2
Raid Level : raid0
Total Devices : 1
Persistence : Superblock is persistent
State : inactive
Working Devices : 1
Name : a20:100 (local to host a20)
UUID : 407875f0:a37d4bfc:ac80f39c:b4095741
Events : 5904
Number Major Minor RaidDevice
- 259 15 - /dev/nvme2n1p3
在我看来这是不正确的。注意到 md100 (raid 1) 突然被报告为“raid0”了吗?md100 作为 raid 1 应该以 raid1“降级”启动,而据我了解,md0 应该处于降级或正常状态。
我试图找出可能导致这种情况的原因,猜测这与需要在 raid 的所有分区上写入超级块或我缺少的其他一些启动配置有关。