SMART 硬盘状态检测

SMART 简介

S.M.A.R.T.,全称为“Self-Monitoring Analysis and Reporting Technology”,即“自我监测、分析及报告技术”。是一种自动的硬盘状态检测与预警系统和规范。通过在硬盘硬件内的检测指令对硬盘的硬件如磁头、盘片、马达、电路的运行情况进行监控、记录并与厂商所设定的预设安全值进行比较,若监控情况将或已超出预设安全值的安全范围,就可以通过主机的监控硬件或软件自动向用户作出警告并进行轻微的自动修复,以提前保障硬盘数据的安全。除一些出厂时间极早的硬盘外,现在大部分硬盘均配备该项技术。

smartmontools

  • 项目主页:http://www.smartmontools.org/
  • 功能描述:smartmontools是一款开源的磁盘控制,监视工具,可以运行在 Linux,Unix,BSD,Solaris,Mac OS,OS/2,Cygwin和Windows上,同时它还可以从启动光盘或启动软盘运行,支持ATA/ATAPI/SATA-3(到-8)位的硬盘和 SCSI硬盘,另外还支持磁带设备,它主要包括了两个实用程序:smartctl和smatd。

  它监控的硬盘必须有S.M.A.R.T特性,目前所有硬盘都有这个特性,但默认情况下通常没有开启这个功能,有两种 方法来开启这个特性:

  • 通过BIOS设置选项
  • 通过smartctl命令。利用它可以测试硬盘的健康状况,并在发生故障前进行预警。

smartctl的基本使用

  • smartctl –scan
  • smartctl -i /dev/sda
  • smartctl -H /dev/sda
  • smartctl -a /dev/sda
  • smartctl -A /dev/sda

SMART 属性概述

SMART的属性分为Critical Attributes和Informative attributes两类,关键属性和信息属性。
其中关键属性包括了有关硬盘健康的最重要的数据,而信息属性所提供的数据一般只是辅助性的。区分它们的方法是看threshold(阈值/极限值),值为非零代表关键属性,为零代表信息属性。

SMART的值的说明

* Value           当前值
* Worst           最坏值,可以理解为某项出现过的峰值
* Raw Values/Data 和某个属性有关联的数据总值
* Threshold       阈值/极限值:如果某个属性超过threshold规定的极限值时,就表示你的硬盘出现了问题。
* status          状态:
                   OK: Value is normal/OK:Always passing代表正常;
                   Warning、Pre-Failure表示可能会发生故障
                   Bad、Failed表示已经有故障了。

每个驱动器制造商定义了一组属性,并设置阈值,超过此属性不应在正常操作下通过。每个属性都有一个原始值,其含义是完全由驱动器制造商(但通常对应于计数或物理单位,如摄氏度或秒)归一化值,取值范围为1~253(一般来说 1代表最坏的情况下和253代表最好)和最差值,它代表了最低记录,归一化值。根据不同的生产厂家,100或200的值往往会被选为初始标准值。已在各种产品中实现至少一个SMART属性的制造商包括三星,希捷,IBM(日立),富士通,迈拓,东芝,英特尔,STEC公司,西部数据与易拓科技。

重要的关键属性

一般来说,如果下面这10项指标开始明显变化,说明硬盘开始进入不稳定的状态,甚至有随时停止工作的可能性

编号 十六进制值 名称 最优状态 中文名称
01 0x01 Read Error Rate 越低越好 底层数据读取错误率
05 0x05 Reallocated Sectors Count 越低越好 重新分配的扇区统计值
10 0x0A Spin Retry Count 越低越好 起转重试次数
184 0xB8 End-to-End error / IOEDC 越低越好 端到端错误
188 0xBC Command Timeout 越低越好 命令超时
196 0xC4 Reallocation Event Count 越低越好 重映射操作记数
197 0xC5 Current Pending Sector Count 越低越好 当前等待中扇区计数
198 0xC6 Offline Uncorrectable 越低越好 无法修正的扇区总数
201 0xC9 Soft Read Error Rate 越低越好 软读写错误率
230 0xE6 Drive Life Protection Status 越越高好 驱动器寿命保护状态

参考文档

时间: 2024-10-25 23:25:30

SMART 硬盘状态检测的相关文章

centos7之zabbix使用 lsiutil监控SAS 6/iR 型号硬盘状态

参考地址: https://yq.aliyun.com/articles/457140 https://www.cnblogs.com/zhangxinglong/p/5983376.html 下载地址:https://www.broadcom.com/site-search?q=LSIUtil_1.62 lsiutil -p 1 -a 21,2,0,0,0 — 查看物理硬盘状态 我们遍历所有硬盘的online信息,如果每块硬盘的状态如果是online的话,就是数字0,如果不是online就是数

状态检测防火墙原理

状态检测防火墙原理 防火墙发展到今天,虽然不断有新的技术产生,但从网络协议分层的角度,仍然可以归为以下三类: 1.包过滤防火墙: 2.基于状态检测技术(Stateful-inspection)的防火墙: 3.应用层防火墙 这三类防火墙都是向前兼容的,即基于状态检测的防火墙也有一般包过滤防火墙的功能,而基于应用层的防火墙也包括前两种防火墙的功能.由于<<浅>>文已讲了第一类防火墙,在这里我就讲讲基于状态检测技术的防火墙的实现原理. 为什么会有基于状态检测的防火墙呢?这就要先看看第一类

李洪强iOS下的实际网络连接状态检测

iOS下的实际网络连接状态检测 序言 网络连接状态检测对于我们的iOS app开发来说是一个非常通用的需求.为了更好的用户体验,我们会在无网络时展现本地或者缓存的内容,并对用户进行合适的提示.对绝大部分iOS开发者来说,从苹果示例代码改变而来的各种Reachablity框架是实现这个需求的普遍选择,比如这个库.但事实上,基于此方案的所有实现,都无法帮助我们检测真正的网络连接状态,它们能检测的只是本地连接状态:这种情况包括但不限于如下场景: 1.现在很流行的公用wifi,需要网页鉴权,鉴权之前无法

iptables状态检测

iptables状态检测 iptables状态检测是一种扩展匹配中的显式扩展,用于检测会话之间的连接关系的,有了检测我们可以实现会话间功能的扩展 什么是状态检测? 每个建立的连接包括以下信息:源IP地址.目标IP地址.源端口和目的端口,这叫一对套接字对(socket ); 协议类型.连接状态(TCP协议)和超时时间等信息.防火墙把这些信息叫作状态(stateful),能够检测每个连接状态的防火墙叫作带状态检测的包过滤防火墙:它除了能够完成简单包过滤防火墙的包过滤工作外,还在自己的内存中维护一个跟

iOS下的实际网络连接状态检测:RealReachability

序言 网络连接状态检测对于我们的iOS app开发来说是一个非常通用的需求.为了更好的用户体验,我们会在无网络时展现本地或者缓存的内容,并对用户进行合适的提示.对绝大部分iOS开发者来说,从苹果示例代码改变而来的各种Reachablity框架是实现这个需求的普遍选择,比如这个库.但事实上,基于此方案的所有实现,都无法帮助我们检测真正的网络连接状态,它们能检测的只是本地连接状态:这种情况包括但不限于如下场景: 1.现在很流行的公用wifi,需要网页鉴权,鉴权之前无法上网,但本地连接已经建立: 2.

LVS自动化添加及删除ipvsadm和后端服务器健康状态检测脚本

  LVS director 负载均衡器增加IPVSADM脚本 #vim director.sh #!/bin/bash #chkconfig: - 88 66 #description: this script to add lvs IP VIP=192.168.0.254 DIP=192.168.0.100 RIP1=192.168.0.101 RIP2=192.168.0.102 PORT=80 SCHELE=wrr LOCKFILE=/var/lock/subsys/ipvsadm ca

如何编写LVS对Real Server的健康状态检测脚本

简介:Linux 虚拟服务器(Linux Virtual Server. LVS),是一个由章文松开发的自由软件.利用KVS可以实现高可用的.可伸缩缩的Web, Mail, Cache和Medial等网络股务..井在此基 础上开发支持庞大用户数的,可伸缩的,高可用的电子商务应用.LVS1998年发展到现在,已经变得比较成熟,目前广泛应用在各种网络服务和电了商务应用 中.LVS具有很好的伸缩缩性.可靠性和管埋性,通过LVS要实现的最终目标是:利用linux 操作系统和LVS集群软件实现一个高可用.

系统状态检测 及进程控制

查看linux 服务器CPU 两大指导原则 #具有相同的core id的CPU是同一个core的超线程# #具有相同physical id的CPU是同一个CPU封装的线程或核心# cat /proc/cpuinfo | grep 'siblings'  查看是否为超线程 [[email protected] ~]# arch #这台是我的R51旧笔记本# i686 [[email protected] ~]# cat /proc/cpuinfo  #这台是我的R51旧笔记本# processor

JS版本网站资源状态检测

Title:JS版本网站资源状态检测  --2012-08-28 14:08 前几天需要一个网站状态检测的东东,后面写了个蹩脚的JS版本,里面用到了以前没用过的东西,在这里记下来,其实批处理加curl可以解决得很好,此脚本不能检测网络状态,只能检测网页资源,是否存在异常,如500,400,403错误等.. ------------------------------------------------------------------------------------------------