拯救你的文件系统-- 修复超级块

2016-01-29 18:26 12 1 收藏

拯救你的文件系统-- 修复超级块,拯救你的文件系统-- 修复超级块

【 tulaoshi.com - Linux 】

哇!!!停电了,又是对 FS 一次严峻的考验,555555555,这次它没挺住,提示超级块坏掉了。。我的data阿。。。My God!!!!!怎么把root分区当作SWAP给mkswap了,我的data阿。。。。还好有这个修复大法,不然真是哭死了。。。^_^
Are you ready?   OK,Let`s Go ! 超级块: 从磁盘上读出来的第一块信息就是超级块(superblock),它记录了磁盘的几何尺寸,可用空间容量最重要的是记录了第一个inode位置,就是"/ "的拉,ext2/3文件存取都是通过inode定位的,比如使用/home/blue/test这个文件,首先先找到/的inode,然后找到/home的inode,再找到blue的inode最后找到test的inode,可见没有超级块,文件系统就没有使用意义。来看看ext2/3文件系统的结构图:可以看出,ext2/3文件系统是由许多的块组组成,在其他的块组中保存了超级块的复本通常只有块组0的超级块会被程序读取,比如mount,e2fsck默认就只读取块组0的。如果超级块被写上其他的数据,比如被mkswap后,超级块保存的信息就丢失了mount,fsck就会报告超级块损坏,无法正常挂载系统了 :(鉴于超级块如此重要,文件系统的设计者将这些超级块拷贝了许多份分散在整个文件系统的块组中。以对付第一个超级块损坏,真是想的周到阿 ^_^我们要做的就是用分散在其他块组中超级块替换已经损坏的,就万事大吉啦。首先找出超级块都被藏到哪去了 :P 注意: -n 参数表示只列出文件系统的信息,并不真的格式化分区,使用mke2fs时一定要加倍小心 不然真给格了,可就无回天之术了阿!一定要小心。。。。呼。。。。  [root@NEWLFS ~]#mke2fs -n /dev/hda10 mke2fs 1.35 (28-Feb-2004)Filesystem label=OS type: LinuxBlock size=4096 (log=2)Fragment size=4096 (log=2)883008 inodes, 1763125 blocks88156 blocks (5.00%) reserved for the super userFirst data block=054 block groups32768 blocks per group, 32768 fragments per group16352 inodes per groupSuperblock backups stored on blocks:        32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632[root@NEWLFS ~]#哈哈,原来藏在32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632下面就使用e2fsck命令修复吧![root@NEWLFS ~]#e2fsck -b 32768 /dev/hda10 -b参数指定超级块位置,不使用默认的超级块,必须的啦,默认的都坏掉了。按照提示,一路y后,就OK啦。 相关资源: http://www.science.unitn.it/~fiorella/guidelinux/tlk/node97.html介绍了超级块中都保存了什么东东,是做什么用的 :p http://e2fsprogs.sourceforge.net/ext2.htmlext2fs的主页,里面有详细的ext2文档。 http://bbs.linuxsir.org/showthread.php?t=167666一篇介绍恢复mkswap的方法,本文就根据它写的啦。谢谢whblackhorse精彩的文章!

来源:http://www.tulaoshi.com/n/20160129/1505807.html

延伸阅读
标签: 服务器
Linux文件系统基本结构   Linux的文件系统结构 Linux文件系统为一个倒转的单根树状结构 文件系统的根为"/" 文件系统严格区分大小写 路径使用/来分割,在windows使用"" 当前工作目录 1 每一个shell或系统进程都有一个当前工作目录 2 使用pwd命令可以显示当前的工作目录 ...
使用文件系统控件(Directory List Box、Drive List Box 和 File ListBox) 许多应用程序必须显示关于磁盘驱动器、目录和文件的信息。为使用户能够利用文件系统,Visual Basic 提供了两种选择。可以使用由 CommonDialog控件提供的标准对话框,或者使用 DirListBox、DriveListBox 和 FileListBox这三种特殊的控件的组合创建自定义对话...
设置当前目录 可用目录列表框的Path属性设置或返回列表框中的当前目录(ListIndex=-1)。例如,若为图7.18中的Drive1.Path赋以"c:payroll",则目录Pagroll将成为当前工作目录。 同样,可把驱动器列表框的Drive属性赋予目录列表框的Path属性: Dir1.Path=Drive1.Drive 执行赋值语句时,目录列表框将显示此驱动器上所有有效...
标签: 电脑入门
计算机系统中的文件千千万万,如果没有进行分类的话就会变得杂乱无章,使用起来也十分不方便,而文件系统就能很好的分类存放各类文件,下面图老师小编就给大家详细介绍下Linux文件系统,一起来学习下吧。 对于计算机来说,所谓的数据就是0和1的序列。这样的一个序列可以存储在内存中,但内存中的数据会随着关机而消失。为了将数据长久保存,我...
虚拟文件系统蓝森林 http://www.lslnet.com 2001年5月20日 21:16作 者: difeijingRichard Gooch 23-APR-1999翻译:difeijing 本文档中的惯例用法 ==================文档中的每一节标题的右边都有一个字符串" "。每个小节都会有个" "在右边。这些字符串是为了在文档中查询更容易而设的。注意:本文档的最新更新可在下...

经验教程

990

收藏

35
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部