且构网

分享程序员开发的那些事...
且构网 - 分享程序员编程开发的那些事

fsck.ext3之后系统出现内核恐慌

更新时间:2022-08-13 09:02:26

用fsck.ext3以后 回答了yes然后重新启动机器,centos 5.5启动提示以下界面,也不知道为什么会出现这个问题,刚开始linux reboot启动系统没反应,所以强行reset了系统,可是到最后说超级块有问题,还有inode节点有问题,后来就用fsck.ext3来修复根目录,开始到最后启动居然内核恐慌,还找不到/根文件。后来用rescue救援模式还是不行,不知道有哪位51cto遇到这类问题,是怎么解决的。

EXT3-fs: error loading journal. 
mount: error mounting /dev/root on /sysroot as ext3. 
setuproot: moving /dev filed.: No such file or dictory. 
setuproot: error mounting /proc: No such file or dictory. 
setuproot: error mounting /sys: No such file or dictory. 
kenel panic: not syncing: Attempt to kill init! 
 

后来用单用户进不了系统,启动grub然后c进入命令模式

grub> root (hd0,7)

kernel /vmlinuz.2.6.xx.

initrd /initrd.2.6.xx.el.img

boot 启动之后还是出现以上内核恐慌

        没办法网上查询但是基本上都是编译内核也是会出现这个问题的,CONFIG_SYSFS_DEPRECATED_V2这个选项上了.解决办法如下 
编辑内核源码包里面的.config文件. 
CONFIG_SYSFS_DEPRECATED_V2=y #默认该选项为not set,被注释掉的. 
然后再编译一遍内核就都OK了.

       但是我是fsck   yes之后启动出现问题,因为我自己没有在单用户下扫描,还有在superblock, inode出现问题,强行关机也可能是导致文件系统出现问题,一般都是用reboot来重启,但是最近就是启动不了。等了许久没办法直接机器reset之后出现了问题所以用fsck来扫描就出现了问题。

      大家对Windows中的scandisk不寞生吧,在Linux中就有类似这样的工具fsck,不过fsck 可不仅仅是扫描,还能修正文件系统的一些问题。值得注意的是fsck 扫描文件系统时一定要在单用户模式、修复模式或把设备umount后进行。警告:如果扫描正在运行中的系统,会造成系统文件损坏;如果您的系统是正常,请不要用扫描工具,她可能会把您的系统搞坏掉,fsck运行是有危险的;以Fedora 为例,文件系统扫描工具有 fsck fsck.ext2 fsck.jfs fsck.msdos fsck.vfat fsck.ext3 fsck.reiserfs(reiserfsck)其中fsck 默认支持文件系统ext2,如果想支持ext3文件系统的扫描,应该加-j 参数,***是我们应该根据不同的文件系统来调用不同的扫描工具,比如 fsck.ext2,fsck.jfs,fsck.msdos,fsck.ext3,fsck.reiserfs(reiserfsck)等。我们也可以根据自己的文件系统选择不同的扫描工具;举例:扫描/dev/hda10分区(基于reiserfs文件系统 );
 

fsck的用法如下:

令:fsck

  使用权限 : 超级使用者

  使用方式 : fsck [-sACVRP] [-t fstype] [--] [fsck-options] filesys [...]

  说明 : 检查与修复 Linux 档案系统,可以同时检查一个或多个 Linux 档案系统

  参数 :

  filesys : device 名称(eg./dev/sda1),mount 点 (eg. / 或 /usr)

  -t : 给定档案系统的型式,若在 /etc/fstab 中已有定义或 kernel 本身已支援的则不需加上此参数

  -s : 依序一个一个地执行 fsck 的指令来检查

  -A : 对/etc/fstab 中所有列出来的 partition 做检查

  -C : 显示完整的检查进度

  -d : 列印 e2fsck 的 debug 结果

  -p : 同时有 -A 条件时,同时有多个 fsck 的检查一起执行

  -R : 同时有 -A 条件时,省略 / 不检查

  -V : 详细显示模式

  -a : 如果检查有错则自动修复

  -r : 如果检查有错则由使用者回答是否修复

  例子 :

  检查 msdos 档案系统的 /dev/hda5 是否正常,如果有异常便自动修复 :

  fsck -t msdos -a /dev/hda5

  注意 :

  此指令可与 /etc/fstab 相互参考操作来加以了解。



本文转自zh888 51CTO博客,原文链接:http://blog.51cto.com/zh888/392629,如需转载请自行联系原作者