诊断一个有问题的Linux磁盘

来自Chinese Ikoula Wiki
Jump to navigation Jump to search
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

ro:Diagnosticarea unui disc Linux defect ru:Диагностика неисправного диска Linux pl:Diagnozowanie uszkodzonego dysku w systemie Linux ja:故障したLinuxディスクの診断 fr:Diagnostic d'un disque défectueux Linux
这篇文章是从由软件进行自动翻译。你可以看到这篇文章的源代码

de:Diagnose einer defekten Linux-Festplatte nl:Diagnose van een defecte Linux-schijf it:Diagnosticare un disco Linux difettoso pt:Diagnosticar um disco Linux defeituoso es:Diagnóstico de un disco Linux defectuoso en:Diagnosing a faulty Linux disk

简介

本文旨在诊断和识别Linux服务器上有问题的磁盘。

以下操作可以通过Linux终端或Netboot来完成。

命令

=== 如果你的操作系统有RAID == =

作为第一步,你可以做以下命令。

cat /proc/mdstat

然后你会得到一个类似于以下的结果。

 
[root@localhost ~]# cat /proc/mdstat

Personalities : [raid1]
read_ahead 1024 sectors
md2 : active raid1 sda3[1] sdb3[0]
262016 blocks [2/2] [UU]

md1 : active raid1 sda2[1] sdb2[0]
119684160 blocks [2/2] [UU]

md0 : active raid1 sda1[1] sdb1[0]
102208 blocks [2/2] [UU]

unused devices: <none>

这里你可以看到[UU] ,在每个逻辑驱动器的末端。U表示一个驱动器被正确地集成在RAID中。 因此,只要你能看到类似[_U] 的序列,我们就会推断出一个硬盘有缺陷。

你也可以得到这样的结果。


[root@localhost ~]# cat /proc/mdstat

Personalities : [raid1]
md3 : active raid1 sda3[0] sdb3[2](F)
      439553856 blocks super 1.0 [2/1] [U_]
      bitmap: 1/4 pages [4KB], 65536KB chunk

md1 : active raid1 sdb1[2](F) sda1[0]
      19529600 blocks super 1.0 [2/1] [U_]

unused devices: <none>

在这种情况下,(F)告诉我们分区是有缺陷的。在我们的例子中,分区sdb3和sdb1是有问题的。

=== 诊断 == =

为了诊断哪个磁盘是坏的,我们将使用SMART。

要做到这一点,你将需要安装它。 根据你的Linux发行版,该命令可能会改变。

对于Centos :

yum install smartmontools

对于Ubuntu / Debian :

apt-get install smartmontools

然后你可以执行下面的命令,它将列出现有的磁盘。

smartctl --scan

要获得有关磁盘的更多信息,请使用以下命令。

smartctl -iHAl error [NOM DU DISQUE]

然后将生成一份磁盘的报告,并向你展示所有存在的异常情况。 本报告由四个部分组成。第一部分是磁盘信息,其序列号、型号、容量、... 第二部分是SMART测试的回报,如果结果不是PASSED,就需要更换磁盘。 第三部分是测试产生的与磁盘有关的所有数值。 最后一个部分是磁盘错误日志。