Linux Ext3文件系统超级块(Superblock)错误问题.

.... bad superblock on /dev/hda4

一个同事做的恢复, 结果把数据都抹掉了. 后来想想, 当时的直接 fsck 的恢复方法不对. 正确的方法应该是这样的:

1 获取错误的出错磁盘(或者设备)块的大小.

有很多种方法可以得到. 比如,

# tune2fs -l /dev/hda4其实大多数情况下是 1 K.

2 对当前的出错磁盘备份.

恢复超级块(Superblock)的过程其实也是一个有风险的过程.能做备份就做好备份. 如果有其他空闲设备, 用 dd 命令把该设备上的内容备份起来.

3 一般来说, 超级块错基本上也就是主超级块错, 在 Ext2/Ext3 文件系统创建的时候, 会同时在屏幕上提示我们在已经在几个地方备份了超级块.那么怎么发现这些超级块在什么地方呢? 我们看看帮助信息:

-b superblock

Instead of using the normal superblock, use an alternative

superblock specified by superblock. This option is normally

used when the primary superblock has been corrupted. The loca-

tion of the backup superblock is dependent on the filesystem's

blocksize. For filesystems with 1k blocksizes, a backup

superblock can be found at block 8193; for filesystems with 2k

blocksizes, at block 16384; and for 4k blocksizes, at block

32768.

Additional backup superblocks can be determined by using the

mke2fs program using the -n option to print out where the

superblocks were created. The -b option to mke2fs, which spec-

ifies blocksize of the filesystem must be specified in order for

the superblock locations that are printed out to be accurate.

If an alternative superblock is specified and the filesystem is

not opened read-only, e2fsck will make sure that the primary

superblock is updated appropriately upon completion of the

filesystem check.

4 开始恢复.如果文件系统块大小为1K, 则我们可以用如下命令恢复:

# /sbin/fsck.ext3 -b 8193 /dev/hda4

如果这个备用块(8193)也有问题,那么 可以尝试 24577(8192*3 1) ,或者是 40961 (8192*5 1).

可能您也会看出来,超级块的保存位置是按照 1,3,5,7 这样的规律的. 具体的位置在 BlockSize(8192)*N 1. 在超过 500M 的空间上是这样的规律.小于 500M 的我不知道.那位知道告诉我一下,谢谢。

linux superblock位置,Linux下恢复EXT3 Superblock的正确方法相关推荐

  1. 中断方式下进行串口通讯的正确方法

    转载:http://bbs.ednchina.com/BLOG_ARTICLE_277752.HTM 中断方式下进行串口通讯的正确方法 一般普遍的把串口通讯分为查询方式和中断方式.查询方式比较容易理解 ...

  2. linux卸载minicom,ubuntu下minicom超级终端的使用方法

    ubuntu下minicom超级终端的使用方法 我的系统环境是ubuntu12.04 www.2cto.com 1:下载安装minicom #sudo    apt-get   install   m ...

  3. linux 释放进程res_linux下查询进程占用的内存方法总结

    linux下查询进程占用的内存方法总结 假设现在有一个「php-cgi」的进程 ,进程id为「25282」.现在想要查询该进程占用的内存大小.linux命令行 下有很多的工具进行查看,现总结常见的几种 ...

  4. amd显卡驱动linux 卸载,AMD显卡驱动安装和卸载的正确方法

    不正确的卸载和安装或升级会导致各种问题 比如蓝屏/驱动安装不了/新特性的功能没有用/CCC打不开/游戏出问题.下面是学习啦小编跟大家分享的是AMD显卡驱动安装和卸载的正确方法,欢迎大家来阅读学习. A ...

  5. Java并发编程(3):线程挂起、恢复与终止的正确方法(含代码)

    挂起和恢复线程 Thread 的API中包含两个被淘汰的方法,它们用于临时挂起和重启某个线程,这些方法已经被淘汰,因为它们是不安全的,不稳定的.如果在不合适的时候挂起线程(比如,锁定共享资源时),此时 ...

  6. linux superblock位置,Linux下对superblock的理解

    对superblock的理解首先从partition structure的结构开始: 1.首先了解下block,对于ext2(ext3)文件系统而言,硬盘分区首先被划分为一个个的block,同一个ex ...

  7. linux rz位置,Linux下rz命令使用的实例详解

    Linux中rz命令和sz命令都可用于文件传输,而rz命令主要用于文件的上传,下面将通过几个实例来给大家详细介绍下Linux下rz命令的用法,一起来学习下吧. rz命令可以批量上传文件,当然也可上传单 ...

  8. redis linux 文件位置,Linux下Redis的安装和部署

    一.Redis介绍 Redis是当前比较热门的NOSQL系统之一 它是一个key-value存储系统.和Memcache类似,但很大程度补偿了Memcache的不足,它支持存储的value类型相对更多 ...

  9. dota2 linux文件位置,Linux下能玩魔兽世界、打DOTA2了 4K 120Hz很爽

    最近魔兽世界的官方怀旧服开始测试了,月底就会正式运营,不少魔兽世界老粉也开始回归了,现在魔兽人气也高涨中,很多人正在为魔兽怀旧服做准备. 魔兽世界本身是有Windows及Mac版本的,但是没有官方Li ...

最新文章

  1. bootstrap 多选框
  2. VTK:创建一个圆锥用法实战
  3. 博客园访问量有些小,我就没有必要在复制一份了,博客园就这样吧,继续CSDN了。...
  4. throwable四参构造_深入分析Java反射(四)-动态代理
  5. 自定义的string类
  6. 软件封装-单文件打包
  7. html5移动页面自适应手机屏幕大小,移动页面自适应手机屏幕的方法
  8. 巧如范金,精比琢玉,一分钟高效打造精美详实的Go语言技术简历(Golang1.18)
  9. NLP - sentencepiece
  10. 基于领域模型的微服务划分--实战案例解析
  11. html语音合成text2audio讯飞,python讯飞语音合成
  12. 基于Web的文件管理系统,支持Office、WPS预览/编辑、在线解压缩、文件分享、文件加密、远程存储、远程文件推送、秒传、断点
  13. JavaScript进阶教程(6)—硬核动图让你轻松弄懂递归与深浅拷贝
  14. 影版《宫》曝海报 周冬雨:想与张艺谋再合作
  15. 预印:提前出版研究发表有负面影响吗?
  16. 计算机控制系统的输入输出信号,工业控制系统的输入与输出信号
  17. 奥鹏西交计算机应用基础在线作业,20秋西交《计算机应用基础》在线作业【答案】...
  18. 招商银行信用卡推荐链接
  19. 安卓基础学习 Day 6|常用控件---列表视图+古诗查看
  20. 计算机的组成及其功能

热门文章

  1. CVPR2021 三维目标检测(3D object detection)
  2. 2017年第5届东北亚 (沈阳)国际酒店用品展览会会刊(参展商名录)
  3. 众昂矿业:2022年全球萤石行业市场供给现状分析
  4. 程序猿媛:滑动翻页+区域点击事件
  5. 中位切分算法,一种图像获取多种主题色的方法
  6. 爱酷学习网鼓励大家上传视频教程
  7. 2017微软开发者大会“开发者夜趴” 在线直播
  8. 轴流风机动平衡如何打造?
  9. 基于百度地图画出物流起始线路
  10. python语法错误怎么帮助排痰_智慧职教APPPython程序设计基础作业答案