重视:fsck不能乱用。先要把文件系统umount掉,然后检查。最好启动到单用户模式下fsck。
常见的5种损坏类型
1 未被引用的inode
2 难以置信的超大链接数
3 没有记录在磁盘块映射表中的未用数据快
4 列出的空闲数据快还在某个文件中便用
5 超级块中不正确的汇总信息
fsck能够安全和自动地修复这类,如果fsck对文件系统进行了改正,您就应该私利运行它,直到文件系统能够完全干净的启动为止。
 
如果fsck请求获得权限去删除一个文件,那么就应该充许fsck进行此项操作之前先将文件复制到一个不同的文件系统中,应该清楚,任何时候去试图访问一个已被子损坏的文件系统,都会有使系统混乱的危险,我自己已用犯过一次这样的错误。
 
如果一个受损的文件系统(也就是fsck无法自动修复的文件系统)包含了非常有价值的数据,那么在稳固地备份它之前不要对其进行任何试验,,您可以试着转储(dump)硬盘,用最保险的策略就是dd整个硬盘到另一个备份文件或都备份硬盘中去。注意:如果使用不正确的话,dd命令有时候能够破坏分区信息,它只能在大小完全相同的两个分区之间复制文件系统。
dd if=/dev/sda of=/dev/sdb
 
修复下面这两个参数用的比较多,其它的基本上不用:
 
a  :自動修復檢查到的有問題的磁區,所以你不用一直按 y 囉!
-y  :與 -a 類似,但是某些 filesystem 僅支援 -y 這個參數!
fsck /dev/sda5
fsck -a /dev/sda5
fsck -y /dev/sda5
-----------------------------------------------------------------------------------------------------------------------------------------------------------------------
3.20 fsck(检查并修复Linux 文件系统)                                     http://book.51cto.com/art/201107/278053.htm

《Linux指令从初学到精通》第3章文件管理,本章介绍了许多常用命令,如cp、ln、chmod、 chown、diff、tar、mv等,因为这些都与文件管理相关,在日常的使用中经常用到,因此本章是本书的重点章节。本节为大家介绍fsck(检查并 修复Linux 文件系统)。

AD:

3.20 fsck(检查并修复Linux 文件系统)

(1)频度等级:☆☆

(2)功能说明:

检查文件系统的一致性并且以交互方式修复文件系统。在出现系统故障之后,总是运行fsck 命令。矫正的动作也许会导致某些数据丢失。对于每个一致性的矫正,默认的操作是等待操作员输入“yes”或者“no”。如果对于已经受到影响的文件系统操 作员没有写的许可,那么无论实际响应是什么,fsck 命令默认的动作都是“no”。

(3)语法:

  1. fsck [-aANPrRsTV][-t <文件系统类型>][文件系统...]

(4)所属包:

  1. e2fsprogs

(5)使用技巧:

fsck 仅仅是一个前端工具,它必须通过“-t”参数来调用相应的文件系统检查器完成文件系统的检查和修复工作。

fsck命令的返回状态值可以反映命令的运行状况,返回值及其含义如表3-22 所示。

表3-22 fsck返回值及其含义列表

(6)相关命令:

  1. e2fsck

(7)参数:

fsck主要参数如表3-23 所示。

表3-23 fsck参数表

 

(8)补充说明:

当文件系统发生错误时,可用fsck指令尝试加以修复。

对于一个已经安装好了的文件系统,fsck 命令不会做出矫正。

fsck 命令可以在一个已经安装好了的文件系统中运行,但不进行修复。当文件系统安装完毕之后,也许会返回不准确的错误消息。

(9)典型实例:

例:检查文件系统。

例如使用fsck命令的“-t”参数指明要检查的文件系统的类型,具体命令为:

  1. fsck-t ext3 /dev/sda1 #检查ext3 类型的分区/dev/sad1

此时输出如下信息,需要用户确认,输入“yes”之后按回车键。

  1. cmd@cmd-desktop:~$ fsck -t ext3 /dev/sda1 #检查ext3 类型的分区/dev/sad1
  2. fsck 1.41.3 (12-Oct-2008) #fsck版本
  3. e2fsck 1.41.3 (12-Oct-2008) #e2fsck版本
  4. /dev/sda1 is mounted. #已经加载的文件系统
  5. #强制检查已经加载的文件系统,是一种不推荐使用的方式。
    除非管理员可以确定当前没有任何程序正在读写要检
  6. 查的文件系统,否则必须先卸载文件系统后,再进行检查
  7. WARNING!!! Running e2fsck on a mounted filesystem may cause
  8. SEVERE filesystem damage.
  9. Do you really want to continue (y/n)? #等待用户确认,输入yes或no

继续输出如下信息:

    1. /dev/sda1: recovering journal #检查结果
    2. /dev/sda1: clean, 177826/1001712 files, 1141903/4006201 blocks

fsck检查和修复文件系统的更多相关文章

  1. Linux使用fsck修复文件系统

      1.fsck---file system check fsck 扫描文件系统时一定要在单用户模式.修复模式或把设备umount后进行.如果扫描运行中的系统,会造成系统文件损坏. RHEL6中fsc ...

  2. 如何在Linux上实现文件系统的自动检查和修复?

    Linux文件系统有可能在各种各样的情况下受到损坏,比如系统崩溃.突然断电.磁盘断开,或者文件节点 (i-node)不小心被覆盖等等,因此需要定期检查文件系统,而说到检查和修复Linux文件系统,fs ...

  3. linux命令--使用fsck修复文件系统

    使用fsck修复文件系统错误 1.问题描述 服务器maint_samba 由于服务器maint_samba (debian操作系统)没有正常关机,在重新启动过程中/dev/sdb1出现文件系统错误,需 ...

  4. fsck---于检查并且试图修复文件系统中的错误

    fsck命令被用于检查并且试图修复文件系统中的错误.当文件系统发生错误四化,可用fsck指令尝试加以修复. -a:自动修复文件系统,不询问任何问题: -A:依照/etc/fstab配置文件的内容,检查 ...

  5. Linux修复文件系统

    注意:修复有风险,操作需谨慎.风险一定要说明啊! 由于还没遇到过,我就当网上找了一张图. 如果在启动时,出现了如上图红色框内的RUN fsck MANUALLY,那么一般是文件系统有问题. 最下面提示 ...

  6. testdisk修复文件系统

    故障修复步骤: 1. 检查磁盘分区级文件系统确实不在: 2. 云主机内部下载testdisk工具修复 yum install testdisk -y 3. 执行命令testdisk /dev/vdc进 ...

  7. [MySQL] 怎样使用Mysqlcheck来检查和修复, 优化表

    mysqlcheck 是 MySQL 自带的一个工具,作用就是保养 表,其实就是检查,分析,修复和优化了.下面来介绍 mysqlcheck 工具的简单使用,官方文档在这里 原文网址:http://bl ...

  8. Linux命令应用大词典-第19章 文件系统管理

    19.1 mkfs:创建Linux文件系统 19.2 mke2fs:创建ext2.3.4文件系统 19.3 mkfs.ext4:创建ext4文件系统 19.4 mkfs.ext3:创建ext3文件系统 ...

  9. Basis 基础

    [转自 http://www.cnblogs.com/elegantok/archive/2008/11/03/1325163.html] 1 Basis1. Unix操作 更改口令 passwd e ...

随机推荐

  1. ansible 配置运行环境

    P34 2.3.1 配置ansible的环境 ansible的配置文件是以ini格式存储配置数据的,在ansible中几乎所有的配置都可以通过playbook或者环境变量来重新赋值 运行ansible ...

  2. C# 全角符号转半角

    public static string SBCCaseToNumberic(string SBCCase) { char[] c = SBCCase.ToCharArray(); ; i < ...

  3. LCA最近公共祖先 Tarjan离线算法

    学习博客:  http://noalgo.info/476.html 讲的很清楚! 对于一颗树,dfs遍历时,先向下遍历,并且用并查集维护当前节点和父节点的集合.这样如果关于当前节点(A)的关联节点( ...

  4. sql-exists和not exists

    EXISTS用于检查子查询是否至少会返回一行数据,该子查询实际上并不返回任何数据,而是返回值True或FalseEXISTS 指定一个子查询,检测行的存在. 实例: (一). 在子查询中使用 NULL ...

  5. 【Java线程】Callable和Future

    Future模式 Future接口是Java线程Future模式的实现,可以来进行异步计算. Future模式可以这样来描述: 我有一个任务,提交给了Future,Future替我完成这个任务.期间我 ...

  6. Cocos2d-X3.0 刨根问底(三)----- Director类源码分析

    上一章我们完整的跟了一遍HelloWorld的源码,了解了Cocos2d-x的启动流程.其中Director这个类贯穿了整个Application程序,这章随小鱼一起把这个类分析透彻. 小鱼的阅读源码 ...

  7. 38.Android之ListView简单学习(一)

    android中ListView用的很普遍,今天来学习下,本篇主要以本地数据加载到listview,后面会学习从网络获取数据添加到listview. 首先改下布局文件: <?xml versio ...

  8. 【BZOJ-2818】Gcd 线性筛

    2818: Gcd Time Limit: 10 Sec  Memory Limit: 256 MBSubmit: 3347  Solved: 1479[Submit][Status][Discuss ...

  9. BZOJ-3524 Couriers 可持久化线段树

    可持久化线段树,其实就是类主席树了.. 3524: [Poi2014]Couriers Time Limit: 20 Sec Memory Limit: 128 MB Submit: 1124 Sol ...

  10. php编程常用经验

    1.用单引号代替双引号来包含字符串,这样做会更快一些.因为PHP会在双引号包围的字符串中搜寻变量, 单引号则不会,注意:只有echo能这么做,它是一种可以把多个字符串当作参数的"函数&quo ...