You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

BTRFS文件系统超级块损坏导致LVM逻辑卷无法挂载,系统无法启动求助

BTRFS文件系统超级块损坏导致LVM逻辑卷无法挂载,系统无法启动求助

系统背景

我大概一个月前完成了新Arch系统的搭建,用了两块NVMe硬盘:

  • nvme0n1:2TB的铠侠EXCERIA PLUS G2
  • nvme3n1:1TB的英睿达P5

按照Arch Wiki的步骤,我把两块盘做成物理卷,创建了LVM逻辑卷,再在上面格式化了BTRFS分区作为系统盘。

故障发生过程

前几天系统盘突然变成只读模式,重启后恢复正常,当时没太在意。今天早上又出现只读,重启后直接无法启动,报错如下:

mount: /new_root: can't read superblock on /dev/mapper/vg.fermat-lv.fermat
ERROR: Failed to mount '/dev/mapper/vg.fermat-lv.fermat' on real root
You are now being dropped into an emergency shell.

现在我用Live CD启动,正在排查问题,但卡住了。

当前排查信息

LVM相关信息

[root@ArcoLinuxB-plasma liveuser]# pvdisplay
--- Physical volume ---
PV Name               /dev/nvme0n1p2
VG Name               vg.fermat
PV Size               <1.82 TiB / not usable 4.00 MiB
Allocatable           yes (but full)
PE Size               4.00 MiB
Total PE              476803
Free PE               0
Allocated PE          476803
PV UUID               1yXIyW-r3kZ-TRRW-VyVs-dwtW-GtWZ-HA2BkO

--- Physical volume ---
PV Name               /dev/nvme3n1p1
VG Name               vg.fermat
PV Size               931.51 GiB / not usable 4.00 MiB
Allocatable           yes (but full)
PE Size               4.00 MiB
Total PE              238466
Free PE               0
Allocated PE          238466
PV UUID               B4BQsn-pffm-fMfw-QjPb-22da-v13l-vbcoiz
[root@ArcoLinuxB-plasma liveuser]# vgdisplay
--- Volume group ---
VG Name               vg.fermat
System ID
Format                lvm2
Metadata Areas        2
Metadata Sequence No  2
VG Access             read/write
VG Status             resizable
MAX LV                0
Cur LV                1
Open LV               0
Max PV                0
Cur PV                2
Act PV                2
VG Size               <2.73 TiB
PE Size               4.00 MiB
Total PE              715269
Alloc PE / Size       715269 / <2.73 TiB
Free  PE / Size       0 / 0
VG UUID               ayLDzU-tD0J-AQyN-G3lV-BdgH-wn9D-TbRZsp
[root@ArcoLinuxB-plasma liveuser]# lvdisplay
--- Logical volume ---
LV Path                /dev/vg.fermat/lv.fermat
LV Name                lv.fermat
VG Name                vg.fermat
LV UUID                NxCCrP-cA6K-4eZh-2O2p-gaBs-rSex-jh2MJR
LV Write Access        read/write
LV Creation host, time archiso, 2023-11-27 15:49:45 +0000
LV Status              available
# open                 0
LV Size                <2.73 TiB
Current LE             715269
Segments               2
Allocation             inherit
Read ahead sectors     auto
- currently set to     256
Block device           254:1

文件系统挂载与检测情况

尝试挂载逻辑卷失败:

[root@ArcoLinuxB-plasma liveuser]# mount /dev/vg.fermat/lv.fermat /mnt/test
mount: /mnt/test: can't read superblock on /dev/mapper/vg.fermat-lv.fermat.
dmesg(1) may have more information after failed mount system call.

用dumpe2fs检测(误操作,因为是BTRFS):

[root@ArcoLinuxB-plasma liveuser]# dumpe2fs -h /dev/vg.fermat/lv.fermat
dumpe2fs 1.47.0 (5-Feb-2023)
dumpe2fs: Bad magic number in super-block while trying to open /dev/vg.fermat/lv.fermat
Couldn't find valid filesystem superblock.
/dev/vg.fermat/lv.fermat contains a btrfs file system labelled 'Root'

检测物理盘同样报错:

[root@ArcoLinuxB-plasma liveuser]# dumpe2fs -h /dev/nvme0n1
dumpe2fs 1.47.0 (5-Feb-2023)
dumpe2fs: Bad magic number in super-block while trying to open /dev/nvme0n1
Couldn't find valid filesystem superblock.
/dev/nvme0n1 contains `DOS/MBR boot sector; partition 1 : ID=0xee, start-CHS (0x0,0,2), end-CHS (0x3ff,255,63), startsector 1, 3907029167 sectors, extended partition table (last)' data
[root@ArcoLinuxB-plasma liveuser]# dumpe2fs -h /dev/nvme3n1
dumpe2fs 1.47.0 (5-Feb-2023)
dumpe2fs: Bad magic number in super-block while trying to open /dev/nvme3n1
Couldn't find valid filesystem superblock.
/dev/nvme3n1 contains `DOS/MBR boot sector; partition 1 : ID=0xee, start-CHS (0x0,0,2), end-CHS (0x3ff,255,63), startsector 1, 1953525167 sectors, extended partition table (last)' data

磁盘分区信息(fdisk -l)

[root@ArcoLinuxB-plasma liveuser]# fdisk -l
Disk /dev/sda: 931.51 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: T-FORCE 1TB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: F844A08E-4F0E-46B5-B392-B36AAF2495D3
Device     Start        End    Sectors   Size Type
/dev/sda1   2048 1953523711 1953521664 931.5G Linux filesystem

Disk /dev/sdb: 931.51 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: T-FORCE 1TB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 9D2D5B13-1C00-554A-9F37-400A05AC3B5F
Device     Start        End    Sectors   Size Type
/dev/sdb1   2048 1953521663 1953519616 931.5G Microsoft basic data

Disk /dev/nvme0n1: 1.82 TiB, 2000398934016 bytes, 3907029168 sectors
Disk model: KIOXIA-EXCERIA PLUS G2 SSD
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: C61199F3-F473-42D5-80B5-60BD7C0DFE06
Device           Start        End    Sectors  Size Type
/dev/nvme0n1p1    2048    1050623    1048576  512M EFI System
/dev/nvme0n1p2 1050624 3907028991 3905978368  1.8T Linux filesystem

Disk /dev/nvme2n1: 476.94 GiB, 512110190592 bytes, 1000215216 sectors
Disk model: Samsung SSD 960 PRO 512GB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 1E1A4C9E-E48E-4848-9EC6-DCB3FA1A5817
Device             Start        End   Sectors   Size Type
/dev/nvme2n1p1      2048     206847    204800   100M EFI System
/dev/nvme2n1p2    206848     239615     32768    16M Microsoft reserved
/dev/nvme2n1p3    239616  998932479 998692864 476.2G Microsoft basic data
/dev/nvme2n1p4 998932480 1000212479   1280000   625M Windows recovery environment

Disk /dev/nvme1n1: 476.94 GiB, 512110190592 bytes, 1000215216 sectors
Disk model: Samsung SSD 960 PRO 512GB
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: 8FCA4CDE-8E68-47B8-A973-991CCEE89354
Device          Start        End   Sectors   Size Type
/dev/nvme1n1p1     40     409639    409600   200M EFI System
/dev/nvme1n1p2 409640 1000215175 999805536 476.7G Apple APFS

Disk /dev/nvme3n1: 931.51 GiB, 1000204886016 bytes, 1953525168 sectors
Disk model: CT1000P5PSSD8
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: gpt
Disk identifier: B76AA81C-93F9-4489-8E50-7AF9B725D84F
Device         Start        End    Sectors   Size Type
/dev/nvme3n1p1  2048 1953523711 1953521664 931.5G Linux filesystem

Disk /dev/sdc: 58.59 GiB, 62914560000 bytes, 122880000 sectors
Disk model: MyUSB Drive
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xf70f22b6
Device     Boot     Start       End   Sectors  Size Id Type
/dev/sdc1  *         2048 122814463 122812416 58.6G  7 HPFS/NTFS/exFAT
/dev/sdc2       122814464 122879999     65536   32M ef EFI (FAT-12/16/32)

Disk /dev/mapper/ventoy: 2.45 GiB, 2634657792 bytes, 5145816 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0xfcb65ee5
Device                   Boot   Start     End Sectors  Size Id Type
/dev/mapper/ventoy-part1 *         64 5114431 5114368  2.4G  0 Empty
/dev/mapper/ventoy-part2      5114432 5145151   30720   15M ef EFI (FAT-12/16/32)

Disk /dev/loop0: 2.31 GiB, 2481229824 bytes, 4846152 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

Disk /dev/mapper/vg.fermat-lv.fermat: 2.73 TiB, 3000055627776 bytes, 5859483648 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes

后续排查更新

EDIT 1:找到备份超级块信息

我强行用mke2fs -n命令(本来是针对ext文件系统的),意外得到了备份超级块的位置:

[root@ArcoLinuxB-plasma liveuser]# mke2fs -n /dev/vg.fermat/lv.fermat
mke2fs 1.47.0 (5-Feb-2023)
/dev/vg.fermat/lv.fermat contains a btrfs file system labelled 'Root'
Proceed anyway? (y,N) y
Creating filesystem with 732435456 4k blocks and 183115776 inodes
Filesystem UUID: 3964e616-a731-49c1-80e5-e27777a87a39
Superblock backups stored on blocks:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,
4096000, 7962624, 112
相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.21 02:59:29