首页 > 代码库 > 检测磁盘驱动的健康程度

检测磁盘驱动的健康程度

在服务器中,所有组件中一般最容易坏掉的就是磁盘。所以一般采取RAID来保证系统的稳定性,通过冗余磁盘的方式防止磁盘故障。

现代硬件驱动器一般支持SMART(自我监测分析和报告技术),它能够监视整个硬盘驱动器的健康状况,并且当硬盘驱动器即将故障的时候会发出警告。

一般硬件厂商提供的磁盘工具,是在系统重启后检查磁盘驱动的健康状况,而SMART可以不用重启系统就可以检查硬盘驱动器的健康程度。

在linux中,工具包的名字为smartmontools

在centos中可以使用 yum install smartmontools来安装工具

首先通过smartctl -i /dev/sda 来检查一下硬盘是否具有 SMART 特性

这个是我在虚拟机中测试的不支持

y

这个是我在真服务器中测试的,支持

 SMART support 是 Disabled 状态的话,需要开启 SMART 的支持:

smartctl -s on /dev/sda

然后使用smartctl -H /dev/sda来检测磁盘的健康状况


使用

smartctl -t short /dev/sda

做一个快速自检


smartctl -l selftest /dev/sda

查看自检的进度和结果


使用smartctl -t long /dev/sda 做长时间自检,这个很耗时,一般放在凌晨

使用smartctl -l error /dev/sda查看出错日志



没写完,明天再写


检测磁盘驱动的健康程度