好久没来了,博客长草了,我来除除草。

给我分了两人,一个统招,一个Java两年开发经验的社招,让我这从工具平台运维往Python开发方向转的工作是举步维艰啊~

领导看人还是真特么的不准,希望今年招聘的两位童鞋能来啊~

昨天下午,某客户打来电话,说文件系统只读,无法写入内容,导致系统无法正常使用——说实在的,现在转行做开发,问题接触得少(因为公司主要用Windows系统),所以也没听说过。

后来客户提供了账号密码,远程再远程登录上去(相当不稳定,看了不到20分钟的日志,我特么就登录了不下5次)查看dmesg和messages文件内容:

May 7 01:46:36 hostserver1 kernel: EXT3-fs error (device dm-10): ext3_free_blocks_sb: bit already cleared for block 154861
May 7 01:46:36 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_free_blocks_sb: Journal has aborted
May 7 01:46:36 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_free_blocks_sb: Journal has aborted
May 7 01:46:36 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_reserve_inode_write: Journal has aborted
May 7 01:46:36 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_truncate: Journal has aborted
May 7 01:46:36 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_reserve_inode_write: Journal has aborted
May 7 01:46:36 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_orphan_del: Journal has aborted
May 7 01:46:36 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_reserve_inode_write: Journal has aborted
May 7 01:46:36 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_delete_inode: Journal has aborted
May 7 01:46:36 hostserver1 kernel: EXT3-fs error (device dm-10): ext3_journal_start_sb: Detected aborted journal
May 7 13:37:08 hostserver1 kernel: usb 1-1: device not accepting address 2, error -71
May 7 13:37:35 hostserver1 kernel: EXT3-fs warning (device dm-10): ext3_clear_journal_err: Filesystem error recorded from previous mount: IO failure
May 7 13:37:35 hostserver1 kernel: EXT3-fs warning: mounting fs with errors, running e2fsck is recommended
May 7 13:49:23 hostserver1 kernel: EXT3-fs error (device dm-10): ext3_free_blocks_sb: bit already cleared for block 131687
May 7 13:49:23 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_free_blocks_sb: Journal has aborted
May 7 13:49:23 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_free_blocks_sb: Journal has aborted
May 7 13:49:23 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_reserve_inode_write: Journal has aborted
May 7 13:49:23 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_reserve_inode_write: Journal has aborted
May 7 13:49:23 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_orphan_del: Journal has aborted
May 7 13:49:23 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_truncate: Journal has aborted
May 7 13:49:23 hostserver1 kernel: EXT3-fs error (device dm-10): ext3_journal_start_sb: Detected aborted journal
May 7 13:50:26 hostserver1 kernel: batchtrans[6636]: segfault at 0000000000000001 rip 000000361005e587 rsp 00007fffc77df470 error 4
May 7 13:56:15 hostserver1 kernel: batchtrans[18111]: segfault at 0000000000000001 rip 000000361005e587 rsp 00007fff62ef30e0 error 4
May 7 14:08:02 hostserver1 kernel: EXT3-fs warning (device dm-10): ext3_clear_journal_err: Filesystem error recorded from previous mount: IO failure
May 7 14:08:02 hostserver1 kernel: EXT3-fs warning: mounting fs with errors, running e2fsck is recommended
May 7 14:30:40 hostserver1 kernel: EXT3-fs error (device dm-10): ext3_free_blocks_sb: bit already cleared for block 131731
May 7 14:30:40 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_reserve_inode_write: Journal has aborted
May 7 14:30:40 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_reserve_inode_write: Journal has aborted
May 7 14:30:40 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_orphan_del: Journal has aborted
May 7 14:30:40 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_truncate: Journal has aborted
May 7 14:30:40 hostserver1 kernel: EXT3-fs error (device dm-10): ext3_journal_start_sb: Detected aborted journal
May 7 16:28:20 hostserver1 kernel: usb 1-1: device not accepting address 2, error -71
May 7 16:28:40 hostserver1 kernel: EXT3-fs warning (device dm-10): ext3_clear_journal_err: Filesystem error recorded from previous mount: IO failure
May 7 16:28:40 hostserver1 kernel: EXT3-fs warning: mounting fs with errors, running e2fsck is recommended
May 7 20:08:24 hostserver1 kernel: EXT3-fs error (device dm-10): ext3_free_blocks_sb: bit already cleared for block 20605365
May 7 20:08:24 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_reserve_inode_write: Journal has aborted
May 7 20:08:24 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_reserve_inode_write: Journal has aborted
May 7 20:08:24 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_orphan_del: Journal has aborted
May 7 20:08:24 hostserver1 kernel: EXT3-fs error (device dm-10) in ext3_truncate: Journal has aborted
May 7 20:08:24 hostserver1 kernel: EXT3-fs error (device dm-10): ext3_journal_start_sb: Detected aborted journal
May 7 22:38:11 hostserver1 kernel: EXT3-fs warning (device dm-10): ext3_clear_journal_err: Filesystem error recorded from previous mount: IO failure
May 7 22:38:11 hostserver1 kernel: EXT3-fs warning: mounting fs with errors, running e2fsck is recommended

外事不决问Google,技术问题当然也是——查得是因为Ext3日志型文件系统的原因,重启后没有进行磁盘检查,日志与文件数据不一致,累积多了文件系统就锁定了,只需要进行e2fsck修复即可。

device dm-10是什么意思呢?对应的是一个磁盘设备,用下面的命令判断吧:

lvdisplay|awk  '/LV Name/{n=$3} /Block device/{d=$3; sub(".*:","dm-",d); print d,n;}' | grep dm-10

实际上就是Block device对应的“:”后的内容。

处理办法也很简单:

  1. 备份分区数据,并进行修复分区操作,建议使用e2fsck修复。
  2. 如果此方法无效,建议卸载分区后重新格式化使用。
  3. 上述方法无效,估计硬件有问题了?可惜没到这一步。

很简单的问题处理了6个小时,原因是客户那边的系统管理员对系统不熟,业务系统并没有全关,导致数据备份做了很多次才OK。

另外,处理过程中客户不断强调要无损数据,但是文件系统已经受损,你让我怎么无损?幸好被开掉的前系统管理员来了,确认这个分区的文件都有备份,这才大胆的进行检查和恢复。

ps:整个过程中,感受到前系统管理员在某些方面经验都特么的比我丰富……泪奔啊

RHCE ext3文件系统故障一例的更多相关文章

  1. Java文件选择对话框(文件选择器JFileChooser)的使用:以一个文件加密器为例

    文件加密器,操作过程肯定涉及到文件选择器的使用,所以这里以文件加密器为例.下例为我自己写的一个文件加密器,没什么特别的加密算法,只为演示文件选择器JFileChooser的使用. 加密器界面如图: 项 ...

  2. u盘文件系统故障的修复方法

    比如U盘挂载的文件系统是/dev/sda1,且文件系统有故障(FAT: Filesystem error) 修复U盘文件系统故障 sudo dosfsck -v -a /dev/sda1

  3. 62.在cdc文件上某些例化模块看不到的原因

    比如在顶层文件中,例化了几个模块,综合后打开cdc文件,会在structure/net中少几个例化模块,即看不到,但在顶层文件中还是存在的,只是ISE软件综合的问题而已,原因是在顶层或子模块中,有些应 ...

  4. 【从翻译mos文章】rac数据库,HC_<SID>.dat其他文件Oracle_Home用例下。

    rac数据库.HC_<SID>.dat其他文件Oracle_Home用例下. 参考原始: RAC database HC_<SID>.dat is used by instan ...

  5. ext3文件系统目录限制问题

    昨晚排查了在KVM的build系统中的一个问题,跟踪到后面发现在一个目录下mkdir创建目录失败.我手动试了一下,提示如下:cannot create directory `/home/master/ ...

  6. 08.Linux系统启动root密码忘记及文件系统故障问题

    问题:root用户密码忘记了,在重置root密码时,出现文件系统故障,没有root密码进不去,怎么办? Error:UNEXPECTED INCONSISTENCY;RUN fsck MANUALIY ...

  7. jmeter接口自动化-通过csv文件读取用例并执行测试

    最近在公司测试中经常使用jmeter这个工具进行接口自动化,简单记录下~ 一.在csv文件中编写好用例 首先在csv文件首行填写相关参数(可根据具体情况而定)并编写测试用例.脚本可通过优先级参数控制执 ...

  8. 实现读入一个彩色视频文件并以灰度格式输出这个视频文件,学习opencv例2-10

    #include "cv.h"#include "highgui.h"int main(int argc,char* argv[]){ //书本中的main没有 ...

  9. (java)从零开始之--异常处理(以文件拷贝为例)

    开发过程中避免不了对异常的处理,但是异常的处理又不能乱throw 下面是简单的抛异常处理 public static void CopyFile(String souFile,String dirFi ...

随机推荐

  1. 李洪强iOS开发之【零基础学习iOS开发】【01-前言】02-准备

    在上一讲中,介绍了什么是iOS开发.说简单一点,iOS开发,就是开发运行在iPhone或者iPad上的软件.这么一说完,应该有很多人就会产生一些疑惑,比如学习iOS开发是不是一定要买iPhone?需不 ...

  2. lintcode : find peak element 寻找峰值

    题目 寻找峰值 你给出一个整数数组(size为n),其具有以下特点: 相邻位置的数字是不同的 A[0] < A[1] 并且 A[n - 2] > A[n - 1] 假定P是峰值的位置则满足 ...

  3. python package list

    argparse: 解析命令行参数:http://www.cnblogs.com/snow-backup/p/4010751.html logging: 写日志; http://blog.csdn.n ...

  4. iOS开发网络篇-NSURLSession介绍

    NSURLSession: 作用: 和NSURLConnection一样 1.负责发送请求,建立客户端和服务器的连接发送数据给服务器 2.并收集来自服务器的响应数据 步骤: 1.创建NSURLSess ...

  5. 关于NGUI制作图集在低内存设备上的注意事项

    正在写一个游戏.由于2D且比较简单.打算用NGUI全权搞定,对,游戏内容也用NGUI. 想的很好,做的很爽.PC上跑起来happy. 天杀的诺基亚出了个手机叫lumia520,可用内存512M.单个程 ...

  6. 项目中使用Quartz集群分享--转载

    项目中使用Quartz集群分享--转载 在公司分享了Quartz,发布出来,希望大家讨论补充. CRM使用Quartz集群分享  一:CRM对定时任务的依赖与问题  二:什么是quartz,如何使用, ...

  7. 如何查看linux是32位还是64位

    可以用命令“getconf LONG_BIT”查看,如果返回的结果是32则说明是32位,返回的结果是64则说明是64位. 此外还可以使用命令“uname -a”查看,输出的结果中,如果有x86_64就 ...

  8. linux中压缩与解压缩命令小结

    linux中压缩与解压操作非常常见,其命令参数也非常的多,这里只介绍最经常用的带打包文件的几种压缩和解压方式和几个最常用的参数. 现在最常用的压缩和解压工具是gzip和bzip2,这两种工具不能相互解 ...

  9. Effective C++学习笔记 条款05:了解C++默默编写并调用的哪些函数

    一.如果用户没有提供构造函数.copy构造函数.copy assignment操作符和析构函数,当且仅当这些函数被需要的时候,编译器才会帮你创建出来.编译器生成的这些函数都是public且inline ...

  10. JAVA操作Excel 可配置,动态 生成复杂表头 复杂的中国式报表表头

    转载:开源社区http://www.oschina.net/code/snippet_1424099_49530?p=2代码] [Java]代码 该代码实现了Excel复杂表头的生成 基于sql se ...