zoukankan      html  css  js  c++  java
  • fsck检查和修复文件系统

    重视: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
  • 相关阅读:
    Eclipse / android studio 添加第三方jar包 步骤
    Android checkbox 自定义点击效果
    Android 程序打包和安装过程
    Android 基础
    (转)Genymotion安装virtual device的“unable to create virtual device, Server returned Http status code 0”的解决方法
    (转)eclipse 导入Android 项目 步骤
    微信开放平台注册 步骤
    Android Studio 初级安装
    数组
    作用域问题代码
  • 原文地址:https://www.cnblogs.com/itcomputer/p/4614473.html
Copyright © 2011-2022 走看看