Ubuntu Server 22.04升级内核至6.2.0后RAID/LVM存储丢失的排查求助
Ubuntu Server 22.04升级内核至6.2.0后RAID/LVM存储丢失的排查求助
看起来你升级内核到6.2.0后,原本的4盘RAID(结合你提到的物理卷、卷组,应该是基于软RAID的LVM配置)不见了,不过好在lsblk还能识别到磁盘和分区,咱们一步步来排查解决:
第一步:先确认软RAID(mdadm)的状态
你提到之前lsblk里有dev mapper条目,首先得排查是不是mdadm的RAID阵列没被识别:
- 先查看当前系统的RAID状态:
cat /proc/mdstat,如果能看到你的RAID阵列(比如md0),说明RAID本身没问题,问题可能在LVM;如果看不到任何RAID设备,继续下一步。 - 扫描磁盘上的RAID签名:针对那四个盘的分区(比如/dev/sdb1、/dev/sdc1这类,你可以从lsblk里找到对应的设备名),执行
mdadm --examine /dev/sdX,看看有没有RAID元数据。如果能看到,说明磁盘上的RAID信息还在,只是没被组装。 - 尝试重新组装RAID:如果上面的命令找到了元数据,可以用
mdadm --assemble --scan让系统自动识别并组装RAID阵列,之后再用cat /proc/mdstat确认是否成功。
第二步:排查LVM组件状态
如果RAID阵列已经正常识别,接下来检查LVM的物理卷、卷组:
- 扫描所有物理卷:执行
pvscan,看看能不能列出那四个盘(或RAID设备)对应的物理卷。如果能看到,说明PV存在,继续下一步;如果看不到,可能是PV的元数据损坏,但概率较低。 - 扫描卷组:执行
vgscan,看看能不能找到你之前创建的卷组。如果找到了,但状态是未激活,可以用vgchange -ay <你的卷组名>手动激活卷组。 - 扫描逻辑卷:激活卷组后,执行
lvscan,应该就能看到对应的逻辑卷了,之后可以尝试挂载测试。
第三步:检查内核模块加载情况
升级内核后,可能相关的存储模块没自动加载:
- 检查mdadm相关模块:
lsmod | grep md,看看md_mod、md_raid456这类模块是否加载。如果没加载,手动执行modprobe md_mod和对应的RAID级别模块(比如modprobe md_raid456)。 - 检查LVM的device mapper模块:
lsmod | grep dm,确保dm_mod、dm_cache这类模块已经加载,没加载的话用modprobe dm_mod加载。
第四步:查看系统日志找线索
如果上面的步骤都没解决,看看启动时的错误日志:
- 查看RAID相关日志:
dmesg | grep -i md,看看有没有RAID设备识别失败、元数据错误之类的信息。 - 查看LVM相关日志:
dmesg | grep -i lvm,看看有没有卷组激活失败、物理卷识别错误的提示。
另外,你提供的当前lsblk输出如下:
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINTS loop0 7:0 0 55.7M 1 loop /snap/core18/2796 loop1 7:1 0 55.7M 1 loop /snap/core18/2812 loop2 7:2 0 63.9M 1 loop /snap/core20/2105 loop3 7:3 0 63.9M 1 loop /snap/core20/2182 loop4 7:4 0 91.8M 1 loop /snap/lxd/23991 loop5 7:5 0 91.8M 1 loop /snap/lxd/24061 loop6 7:6 0 40.4M 1 loop /snap/snapd/20671 loop7 ...
备注:内容来源于stack exchange,提问作者James
相关产品推荐
相关产品推荐

