e2fsck superblock 修复
e2fsck superblock 修复
https://blog.csdn.net/vincent_duan/article/details/117325224
使用ls或者rm命令出现错误:
类似于input/output error,
应该是文件系统出现错误。
用fsck.ext4 -y /dev/sda2修复是报如下信息:
Could this be a zero-length partition
而且修复明显没有进行;
各种 Google 之后发现造成这个问题的原因是文件系统的 Superblock 损坏了。解决办法是找到文件系统上的备份 Superblock 位置,具体做法有两种:用 dumpe2fs 或者 mke2fs -n。先试了下 dumpe2fs:
root@livecd# dumpe2fs /dev/sda3 | grep -i superblock
dumpe2fs 1.39 (29-May-2006)
Attempt to read block from filesystem resulted in short read while
trying to open /dev/sda3. Could this be a zero-length partition.
还是报同样的错误,接着试了下mke2fs -n,还好这下可以工作:
root@livecd# mke2fs -n /dev/sda2
mke2fs 1.39 (29-May-2006)
Filesystem label=
OS type: Linux
Block size=4096 (log=2)
Fragment size=4096 (log=2)
17924096 inodes, 35822934 blocks
1791146 blocks (5.00%) reserved for the super user
First data block=0
Maximum filesystem blocks=4294967296
1094 block groups
32768 blocks per group, 32768 fragments per group
16384 inodes per groupSuperblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872
其中32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424, 20480000, 23887872就是文件系统上的 Superblock 备份,从中挑选一个作为 e2fsck 的参数:
e2fsck -y /dev/sda2 -b 32768
结果顺利修复了文件系统。
e2fsck 的 -b 选项是指定一个 Superblock 的位置,使用上面的命令中输出的任意一个都可以。可以看到 Superblock 的备份很多,一个不行可以用另一个,实践中所有 Superblock 都损坏的概率很小,因此还是比较安全的。
========== End
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
2020-08-12 Windows下命令行查看占用端口的程序
2020-08-12 令App可调试的几种方法
2020-08-12 动态分析Android App之动态调试
2019-08-12 如何禁止Chrome浏览器隐藏URL的WWW前缀