磁盘检验

Posted 青衫lys

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了磁盘检验相关的知识,希望对你有一定的参考价值。

由于系统在运行时谁也说不准啥时候硬盘或者是电源会有问题、所以死机可能是难免的情况(不管是硬件还是软件)。现在我们知道文件系统运行时会有硬盘与内存数据异步的状况发生,因此莫名其妙的死机非常可能导致文件系统的错乱。如果文件系统真的发生错乱的话,那该如何是好?此时那个好用的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 [[email protected] data]# umount /dev/xvdb1
15 [[email protected] 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 [[email protected] 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 [[email protected] 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)

 

以上是关于磁盘检验的主要内容,如果未能解决你的问题,请参考以下文章

linux------磁盘分区,格式化,检验与挂载

redhat磁盘检验挂载与卸载

磁盘的分区格式化检验与挂载

Linux 的磁盘格式化挂载磁盘检验等管理功能

磁盘分区格式化检验挂载

奇偶校验位