ext4文件系统超级块损坏,修复磁盘。
mount /dev/sda1 /sda1
mount: /sda1: wrong fs type, bad option, bad superblock on /dev/sda1, missing codepage or helper program, or other error.
挂载时提示超级块丢失,
使用dumpe2fs 和tune2fs -l 也提示找不到有效的文件系统超级块。
解决办法:
一般在磁盘会有超级块的备份。需要找到超级块的备份。
使用mke2fs -n 模拟创建时的样子,找到超级块的备份位置。
$ mke2fs -n /dev/sda1
mke2fs 1.45.6 (20-Mar-2020)
创建含有 5242624 个块(每块 4k)和 1310720 个inode的文件系统
文件系统UUID:69dd1627-9b9d-4ec6-a102-fd8e08fbb986
超级块的备份存储于下列块:
32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208,4096000
可以看到备份存在32768,98304 等地方。
随后使用e2fsck -b 32768 /dev/sda1 命令修复文件系统。
$ e2fsck -b 32768 /dev/sda1
e2fsck 1.45.6 (20-Mar-2020)
/dev/sda1 未被彻底卸载,强制进行检查。
第 1 步:检查inode、块和大小
第 2 步:检查目录结构
第 3 步:检查目录连接性
第 4 步:检查引用计数
第 5 步:检查组概要信息
Inode位图末尾的填充值未设置。 处理<y>? 是
块位图的差异: 组 1 块 位图 与自身校验值不符。
已处理.
/dev/sda1:***** 文件系统已修改 *****
/dev/sda1:11/1310720 文件(0.0% 为非连续的), 126322/5242624 块
挂载查看。