作者:聂勇 欢迎转载,请保留作者信息并说明文章来源!
工作中,开发、调试和部署代码都是基于Linux。有时候,某些发行版本的Linux因其BUG而给我们带来一些麻烦。不过,不要紧,Linux下就是要折腾,折腾多了,用起来就更加得心应手。
最近,在Redhat5和CentOS5上碰到一个问题:文件系统损坏。下面的方法已经在出现问题的几台机器上都成功应用。
一、问题现象 | Problem description
现象一:文件系统突然无法进行修改操作(无法写入和删除),提示“只读文件系统”。
另外还有一种现象是:Redhat / CentOS在锁屏后为鼠标和按键盘没有任何反应,只能强制重启,重启后出现如图4所示的画面。
现象二:关闭系统时无法移除临时文件。
二、修复文件系统 | Repaire filesystem
1、重启系统系统时,Linux系统提示“contains a file system with errors”,并自动扫描并尝试修复错误。
2、当自动修复失败时,提示你输入root用户的密码进行手动修复或者按Ctrl+D继续。在这种情况下,按Ctrl+D是没有用的,检查一会儿系统会继续回到当前的界面。
3、输入root用户的密码,按回车。系统出现“(Repair filesystem) 1 #”的提示符。现在可以执行root用户的权限,运行所有的命令。
4、首先用fdisl -l
查看磁盘设备。
5、找到需要修复的设备后,执行命令fsck -y /dev/sda2
。
说明:/dev/sda2 是我需要修复的设备。
6、总共会进行5个步骤,执行时间和设备中文件数据的大小有关系。在我的机器上,30GB的文件数据共了约20分钟进行修复。修复完成后,会出现提示“FILE SYSTEM WAS MODIFIED”。这时输入命令 “reboot” 命令重启系统。