zoukankan      html  css  js  c++  java
  • 磁盘检验

    由于系统在运行时谁也说不准啥时候硬盘或者是电源会有问题、所以死机可能是难免的情况(不管是硬件还是软件)。现在我们知道文件系统运行时会有硬盘与内存数据异步的状况发生,因此莫名其妙的死机非常可能导致文件系统的错乱。如果文件系统真的发生错乱的话,那该如何是好?此时那个好用的fsck就能拿来仔细分析一下了。

     1 fsck [-t 文件系统类型] [-ACay] 设备名称
     2 参数:
     3 -t:指定文件系统类型,通常不需要。
     4 -A:依据/etc/fstab的内容,将需要的设备扫描一次。通常开机过程中就会执行此命令。
     5 -a:自动修复检查到的有问题的扇区,所以你不用一直按Y。
     6 -y:与-a类似,但是某些文件系统不支持-y这个参数。
     7 -C:可以在检验的过程当中使用一个直方图来显示目前的进度。
     8 
     9 EXT3/EXT2 的额外参数功能:(e2fsck这支命令所提供)
    10 -f:强制检查,一般来说,如果fsck没有发现任何unclean的标志,不会主动进入细化检查的,如果你想要强制fsck进入细化检查,就得加上-f标志。
    11 -D:针对文件系统下的目录进行优化配置。
    12 
    13 范例:强制将新建的/dev/xvdb1这个设备检查一下。
    14 [root@iZ255cppmtxZ data]# umount /dev/xvdb1
    15 [root@iZ255cppmtxZ data]# fsck -C -f -t ext4 /dev/xvdb1
    16 fsck from util-linux 2.23.2
    17 e2fsck 1.42.9 (28-Dec-2013)
    18 Pass 1: Checking inodes, blocks, and sizes
    19 Pass 2: Checking directory structure                                           
    20 Pass 3: Checking directory connectivity
    21 Pass 4: Checking reference counts
    22 Pass 5: Checking group summary information
    23 /dev/xvdb1: 11/1966080 files (0.0% non-contiguous), 167409/7864064 blocks       


    注意:通常只有身为root且你的文件系统有问题的时候才使用这个命令,否则在正常状况下使用此命令,可能会造成对文件系统的危害。

    刚才谈到的fsck是用来检验文件系统是否出错,至于badblocks则是用来检查硬盘或软盘扇区有没有坏道的命令

     1 badblocks -[svw] 设备名称
     2 参数:
     3 -s:在屏幕上列出进度;
     4 -v:可以在屏幕上看到进度;
     5 -w:使用写入的方式来测试,建议不要使用此参数,尤其是待检查的设备已有的文件时;
     6 
     7 [root@iZ255cppmtxZ data]# fsck -C -f -t ext4 /dev/xvdb1
     8 fsck from util-linux 2.23.2
     9 e2fsck 1.42.9 (28-Dec-2013)
    10 Pass 1: Checking inodes, blocks, and sizes
    11 Pass 2: Checking directory structure                                           
    12 Pass 3: Checking directory connectivity
    13 Pass 4: Checking reference counts
    14 Pass 5: Checking group summary information
    15 /dev/xvdb1: 11/1966080 files (0.0% non-contiguous), 167409/7864064 blocks       
    16 [root@iZ255cppmtxZ data]# badblocks -sv /dev/xvdb1
    17 Checking blocks 0 to 31456255
    18 Checking for bad blocks (read-only test): q^Hdone                                                 
    19 Pass completed, 0 bad blocks found. (0/0/0 errors)
  • 相关阅读:
    Hibernate 中 get()和load()的区别
    Socket网络编程
    经典
    jsp的九大内置对象及EL表达式的隐含对象
    TreeSet
    centos7.4安装npm
    centos7.4中安装docker
    centos7安装nginx
    centos中安装基础环境
    在docker中安装mysql
  • 原文地址:https://www.cnblogs.com/liuyisai/p/5329872.html
Copyright © 2011-2022 走看看