转自:http://www.linuxso.com/command/fsck.html

使用权限 : 超级使用者
  
  使用方式 : fsck [-sACVRP] [-t fstype] [--] [fsck-options] filesys [...]
  
  说明 : 在Linux系统中,为了增加系统性能,通常系统默认一些数据写在内存中,并不会直接将数据写入硬盘,这是因为内存速度要比硬盘快若干倍。但是有个问题,万一由于“断电”或者其他未知原因,造成系统死机,怎么办?系统就崩溃了。所以,我们需要在特定的时候让数据直接回存到硬盘中。这里提供几个常用的命令,其中,fsck命令最重要. 当文件系统发生错误时,可用fsck命令尝试加以修复.直接采用分区编号(如/dev/had3),或使用挂载点(Mount Point,如/、/usr等)指定文件系统皆可。假设一次指定多个文件系统,而这些系统分别位于不同的物理磁盘上,则fsck将会尝试同步的方式去检查他们,以节省操作时间。  
  
  参数 :
  
  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 相互参考操作来加以了解。

范例:检查/dev/sda3
[root@localhost ~]# fsck -C -t ext3 /dev/sda3fsck 1.39 (29-May-2006)e2fsck 1.39 (29-May-2006)/dev/sda3 is mounted.
WARNING!!! Running e2fsck on a mounted filesystem may causeSEVERE filesystem damage.
Do you really want to continue (y/n)? yes
/home: recovering journal/home: clean, 11/524288 files, 25399/524120 blocks#一切正常就会出现上述信息
#主意通常只有ROOT且系统有问题的时候才用这个命令,否则在正常状态下使用此命令可能会损坏文件。

相关知识:

  Linux FSCK数据出错的灾难应急方案介绍

[适用于]

1、文件系统:ext2 ext3 reiserfs xfs等

2、范围:提示文件系统需要FSCK时,未执行或FSCK执行完成

[症状]

1、无法MOUNT分区;

2、大量文件、目录丢失,根目录下生成/LOST+FOUND文件夹,里面有大量#XXXXXX类的文件和目录;

3、FSCK很快报错完成;

4、FSCK执行时,有大量提示,如修改节点、清0节点等操作

[应急方案]

1、如遇提示FSCK时,请小心。如果可能,请尽快断开系统,UMOUNT所有分区。

2、必需执行FSCK时,先做准备工作,方法一:可事先用dd命令将所涉及到的分区输出到另外的存储体上(最好不要在出错的存储体本身上做dd) 命令大致结构可如: dd if=/dev/sda0 of=/dev/sdb0 .....

3、必需执行FSCK时,先做准备工作,方法二:将整个LINUX存储体挂载到虚拟机环境,将LINUX存储体设为Nonpersisten模式,再执行,执行过后,如果数据完好,应尽快通过FTP等方式拷贝出来。

4、必需执行FSCK时,先做准备工作,方法三:将整个LINUX存储体挂载到其他系统上(如WINDOWS),做好镜像后再做FSCK。

5、如上面几种方式均因条件等原因无法实施,必须执行时,可小心观察FSCK的执行提示(关掉-a)如果发现有提示节点错误需更正或清0、节点描述文件大小不正确等信息,应停止执行FSCK。

6、因恢复需要参考很多信息,因尽可能保持系统不工作状态,至少不得再次MOUNT分区(即便不做任何读写操作,也会因系统的工作原理不断降低数据恢复的可能性,增加数据恢复的难度)

7、寻求专业数据恢复公司帮助。

对磁盘进行镜像的方案:

1、可用相同或大于源盘容量的硬盘做为目标盘,将源盘全部扇区方式CLONE到目标盘。

2、可将源盘完全以扇区方式输出文件到某大容量存储空间(如大容量硬盘、NAS、SAN、DAS等)

输入Root密码登录后采用:fsck -t ext3 -r /usr/local 修复

【转】linux之fsck命令的更多相关文章

  1. Linux学习之fsck命令

    在windows下,磁盘的文件系统出错,需要运行chkdsk命令进行修复.而在linux下,则需要运行fsck命令.由于linux对于文件系统的错误非常敏感,由于意外断电或者其它原因导致linux系统 ...

  2. Linux fsck命令详解

    fsck(file system check)用来检查和维护不一致的文件系统.若系统掉电或磁盘发生问题,可利用fsck命令对文件系统进行检查. fsck常见命令参数 -a:自动修复文件系统,不询问任何 ...

  3. Linux磁盘修复命令----fsck

    使用fsck命令修复磁盘时 一定要进入单用户模式去修复 语 法fsck.ext4[必要参数][选择参数][设备代号] 功 能fsck.ext4 命令: 针对ext4型文件系统进行检测 参数  -a 非 ...

  4. 由问题引出的fsck命令

    博客停了两天,今天打开linux虚拟机,突然间报错了,顿时心中一喜(是吗?),当时看了下错误说明,好像有关于时间的问题(某个时间是未来时间)..然后我就去兴匆匆的修改系统时间,重启...唉,没作用.只 ...

  5. Linux系统常用命令权威指南

    <一>线上查询及帮助命令(2)1.man man [选项] [命令] 查看命令帮助,命令的词典,更复杂的还有info,但不常用. #man cd-a 显示所有的手册页,不只是显示第一个-f ...

  6. Linux文件系统管理命令(第二版)

    Linux文件系统管理命令 常用命令 1.df命令 查看分区使用情况 常用选项 -h 比较人性化 -m 以兆字节显示分区使用情况 显示信息: Mounted on:挂载点 Filesystem:对应的 ...

  7. 我把一些Linux的中英文命令做了对应翻译大家参考一下

    本文我们把Linux的中英文命令做了对应翻译,给需要的朋友参考一下.(http://wap.0834jl.com) 很多朋友在论坛上找Linux英文命令,我们给大家整理了比较全的Linux英文命令,并 ...

  8. Linux常用基础命令整理:关机命令、查看目录下文件命令等

    Linux常用基础命令整理:关机命令.查看目录下文件命令等 整理了一些Linux常用基础命令,欢迎指正. 首先记住四个热键,学会这四个键,收益一辈子. Tab按键---命令补齐功能Ctrl+c按键-- ...

  9. 转: Linux mount/unmount命令

    https://blog.csdn.net/okhymok/article/details/76616892 楼主具体哪里转的 我不清楚 好像没看到原始出处 开机自动挂载 如果我们想实现开机自动挂载某 ...

随机推荐

  1. iOS:核心动画具体的类和协议的介绍

    核心动画类:CAAnimation.CAPropertyAnimation.CABasicAnimation.CAKeyframeAnimation.CATransition.CAAnimationG ...

  2. Data Flow ->> Union All

    Wrox的<Professional Microsoft SQL Server 2012 Integration Services>一书中再讲Merge的时候有这样一段解释: This t ...

  3. powerdesigner jdbc 连接 oracle

    实验环境: powerdesigner 15 oracle 11g jdk1.6.0_43 提示:jdk必须选择32位,64位会报  "Could not Initialize JavaVM ...

  4. Zn离子参数

    Generating Topology and Coordinates Files Using xLeap (AmberTools V1.5) Parameter and example files: ...

  5. Mac 如何截屏(快捷键)

    全屏截图:Command + Shift + 3 使用快捷键后会马上截取当前的全屏 指定区域截图:Command + Shift + 4 使用快捷键后会出来一个带有座标的瞄准器,用鼠标的拖放可以选择需 ...

  6. windows下安装python,安装框架django。

    第一步:  首先下载python安装包: 第二步:安装          双击安装包,安装程序.           这里安装到C盘   文件夹命名为  python33. 正在安装......... ...

  7. [原]poj-2488-water-DFS

    题目大意: 输入一个p*q的棋盘, 行用数字表示, 列用大写字母表示 , 1 <= p*q <= 26, 输出能够把棋盘全部空格走完且每个空格只走一次的字典序最小的路径.不存在则输出“im ...

  8. jsp中@import导入外部样式表与link链入外部样式表的区别

    昨天碰到同事问了一个问题,@impor导入外部样式与link链入外部样式的优先级是怎样的,为什么实验的结果是按照样式表导入后的位置来决定优先级.今天就这个问题具体总结如下:   先解释一下网页添加cs ...

  9. linux学习之centos(三):网卡配置

    Linux系统版本:Centos 6.5 在linux学习之centos(二):虚拟网络三种连接方式和SecureCRT的使用中,使用远程工具SecureCRT,通过“ifconfig eth0 + ...

  10. c语言宏定义

    一. #define是C语言中提供的宏定义命令,其主要目的是为程序员在编程时提供一定的方便,并能在一定程度上提高程序的运行效率,但学生在学习时往往不能理解该命令的本质,总是在此处产生一些困惑,在编程时 ...