首页 > 其他分享 >smartctl命令以及介绍

smartctl命令以及介绍

时间:2023-04-26 10:45:33浏览次数:47  
标签:count smartctl 计数 扇区 介绍 命令 硬盘 SMART

SMART是一种磁盘自我分析检测技术。

硬盘在运行的时候,都会将自身的若干参数记录下来。

这些参数包括型号、容量、温度、密度、扇区、寻道时间、传输、误码率等。
硬盘运行了几千小时后,很多内在的物理参数都会发生变化。
某一参数超过报警阈值,则说明硬盘接近损坏。
此时硬盘依然在工作,如果用户不理睬这个报警继续使用。
那么硬盘将变得非常不可靠,随时可能故障。

因此我们可以利用smartctl信息分析磁盘健康状态来判断磁盘是否需要更换。

smartctl工具常在Linux系统下面使用,Windows系统有其他类似的工具使用。

常用命令

1、smartctl -a <device> :显示硬盘SMART的全部信息。检查该设备是否已经打开SMART技术。

2、smartctl -H <device> :查看硬盘的健康状况。一般看不出来问题,没啥用。

root@username:~# smartctl -H /dev/sdc
smartctl 7.1 2019-12-30 r5022 [sw_64-linux-4.19.0-sw64-desktop] (local build)
Copyright (C) 2002-19, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED

3、smartctl -l selftest <device> :显示硬盘测试信息。

4、smartctl -l error <device> :显示硬盘历史错误信息。

5、smartctl -A <device> :显示设备SMART厂商属性和值。

6、对硬盘进行检测 手工对硬盘进行测试的方法有以下四种:
smartctl -t short <device> 后台检测硬盘,消耗时间短
smartctl -t long <device> 后台检测硬盘,消耗时间长
smartctl -C -t short <device> 前台检测硬盘,消耗时间短
smartctl -C -t long <device> 前台检测硬盘,消耗时间长

其实就是利用硬盘SMART的自检程序。此时可以用smartctl -X中断后台测试。

7、smartctl -i <device> :显示设备的身份信息,检查硬盘是否打开了SMART支持。
看到有:SMART support is: Enabled,说明硬盘支持SMART。
如果为Disabled,使用:smartctl --smart=on --offlineauto=on --saveauto=on <device>,启用SMART。

8、smartctl -s on <device>    如果没有打开SMART技术,使用该命令打开SMART技术。

smartctl 参数信息说明:

使用smartctl -a /dev/sda 可以查看所有磁盘信息,分析磁盘关键smartctl信息可以直接使用smartctl  -A /dev/sda

例如: (主要是SATA盘,SAS盘无法读取这些信息)

 FLAG是标记,WHEN_FAILED 代表错误信息,上面显示的WHEN_FAILED纵行是空行,说明硬盘没有故障。如果WHEN_FAILED显示数字,表明硬盘磁道可能有比较大的坏道。

参数说明:

Raw read error rate 错误读取率:记录读取数据错误次数(累计),非0值表示硬盘已经或者可能即将发生坏道;

Reallocated_Sector_Ct  出厂后产生的坏块个数, 初始值为100,如果有坏块,从1开始增加,每4个坏块增加1

reallocated sectors count  重分配扇区计数:硬盘生产过程中,有一部分扇区是保留的。当一些普通扇区读/写/验证错误,则重新映射到保留扇区,挂起该异常扇区,并增加计数。随着计数增加,io性能骤降。如果数值不为0,就需要密切关注硬盘健康状况;如果持续攀升,则硬盘已经损坏;如果重分配扇区数超过保留扇区数,将不可修复;

power-on hours 累计通电时间:指硬盘通电时间累计值。(单位:天/时/分/秒。休眠/挂起不计入,新购入的硬盘应小于100hrs);

power cycle count 电源开关计数:每次加电增加一次计数,新硬盘应小于10次;

Temperature_Celsius 温度:显示磁盘温度。

reallocetion event count 重映射扇区操作次数:上边的重映射扇区还记得吧,这个就是操作次数,成功的,失败的都计数。

throughput performance 磁盘吞吐量:平均吞吐性能(一般在进行了人工 Offline S.M.A.R.T. 测试以后才会有值。);

spinup time 主轴电机到达要求转速时间(毫秒/秒);

start/stop count 电机启动/停止次数(可以当作开机/关机次数,或者休眠后恢复,均增加一次计数。全新的硬盘应该小于10);

seek error rate 寻道错误率:磁头定位错误一次,则技术增加一次。如果持续攀升,则可能是机械部分即将发生故障;

seek timer performance 寻道时间:寻道所需要的时间,越短则读取数据越快,但是如果时间增加,则可能机械部分即将发生故障;

spinup retry count 电机启动失败计数:电机启动到指定转速失败的累计数值。如果失败,则可能是动力系统产生故障;

g-sensor error rate 坠落计数:异常加速度(例如坠落,抛掷)计数——磁头会立即回到landing zone,并增加一次计数;

power-off retract count 异常断电次数:磁头在断电前没有完全回到landing zone的次数,每次异常断电则增加一次计数;

load/unload cycle count 磁头归位次数:指工作时,磁头每次回归landing zone的次数;

current pending sector count 待映射扇区数:出现异常的扇区数量,待被映射的扇区数量。 如果该异常扇区之后成功读写,则计数会减小,扇区也不会重新映射。读错误不会重新映射,只有写错误才会重新映射;

uncorrectable sector count 不可修复扇区数:所有读/写错误计数,非0就证明有坏道,硬盘报废;

 

标签:count,smartctl,计数,扇区,介绍,命令,硬盘,SMART
From: https://www.cnblogs.com/zaq12wsx/p/17354835.html

相关文章

  • 英语笔记:入门介绍
    短期快速掌握语法基础,不同时做几件事同时学语法和词汇,用造句的方法来学语法,再结合阅读巩固积累词汇,进而掌握造句和理解句子的能力,有了这个基础,再学发音,口语和听力,就容易多了。语法知识练习复习虽然能截取视频画面,但是最多一百张,字多了确实累,那还不如直接抄下来,在加上对自己......
  • 你不太熟悉的JVM命令配置参数
    导读JVM是多数开发人员视为理所当然的Java功能和性能背后的重负荷机器,然而我们很少有人能理解JVM是如何进行工作的—像任务分配和垃圾收集、转动线程、打开和关闭文件、中断和/或JIT编译Java字节码,等等。不熟悉JVM将不仅会影响应用程序性能,而且当JVM出问题时,尝试修复也会......
  • Prometheus监控之SNMP Exporter介绍和数据展现
    由于技术能力有限,文章仅能进行简要分析和说明,如有不对的地方,请指正,谢谢......
  • 关于vcpkg中x-history命令移除后及git subtree的使用问答
    1、现在的版本中已经移除了x-history命令,我该使用什么方式来查看port的历史记录呢如果当前版本的vcpkg中已经移除了x-history命令,您可以使用以下方法查看port的历史记录:使用Git命令:首先,确保您已经安装了Git。然后,在命令行或终端中,导航到vcpkg的安装目录。接下来,使用以下命令......
  • Docker CLI docker compose kill常用命令
    Docker是一个开源的应用容器引擎,让开发者可以打包他们的应用以及依赖包到一个可移植的镜像中,然后发布到任何流行的Linux或Windows操作系统的机器上,也可以实现虚拟化。Docker是内核虚拟化,不使用Hypervisor是不完全虚拟化,依赖内核的特性实现资源隔离。本文主要介绍DockerCLI中d......
  • wget命令解析
    wget命令是Linux系统用于从Web下载文件的命令行工具,支持HTTP、HTTPS及FTP协议下载文件,而且wget还提供了很多选项,例如下载多个文件、后台下载,使用代理等等,使用非常方便。接下来就介绍一下wget的使用方法。wget命令的使用语法格式wget[options][url]#示例,默认下载目......
  • CentOS7修改开机启动模式:命令行模式(runlevel=3)
    1.打开文件/etc/inittab: sudo/etc/inittab显示当前的runlevel:systemctlget-default设置默认的运行级别:systemcltset-defaultXX.target。XX可以是multi-user或者graphical按照提示在终端中执行命令:systemctlset-defaultmulti-user.target注意:按照inittab文件中的提......
  • 快速上手Linux核心命令(五):文本处理三剑客
    @目录前言正则表达式第一剑客grep第二剑客sed第三剑客awk小结剑仙镇楼~O(∩_∩)O前言上一篇中已经预告,我们这篇主要说Linux文本处理三剑客。他们分别是grep、sed、awk。既然能被业界称为三剑客,可见其在Linux命令中占有举足轻重得地位。所以呢,这里也专门写一篇文章说一说......
  • 命令行上的数据科学第二版:十、多语言数据科学
    通晓多种语言的人就是能讲多种语言的人。在我看来,通晓多种语言的数据科学家是指使用多种编程语言、工具和技术来获取、清理、探索和建模数据的人。命令行刺激了多语言方法。命令行并不关心工具是用哪种编程语言编写的,只要它们遵循Unix的理念。我们在第四章中非常清楚地看到了这一......
  • jvm Classload method介绍
    1,jvmClassload默认几个重要方法介绍findClass:FindsandloadstheclasswiththespecifiednamefromtheURLsearchpath.找到class文件并把字节码加载到内存中,如果自定义的加载器仅覆盖了findClass,而未覆盖loadClass(即加载规则一样,但加载路径不同......