转载:https://linux.cn/article-4682-1.html

Smartctl(S.M.A.R.T 自监控,分析和报告技术)是类Unix系统下实施SMART任务命令行套件或工具,它用于打印SMART自检错误日志,启用并禁用SMRAT自动检测,以及初始化设备自检。

Smartctl对于Linux物理服务器十分有用,在这些服务器上,可以对智能磁盘进行错误检查,并将与硬件RAID相关的磁盘信息摘录下来。

在本帖中,我们将讨论smartctl命令的一些实用样例。如果你的Linux上海没有安装smartctl,请按以下步骤来安装。

安装 Smartctl

对于 Ubuntu

 $ sudo apt-get install smartmontools

对于 CentOS & RHEL

1 # yum install smartmontools

启动Smartctl服务

对于 Ubuntu

 $ sudo /etc/init.d/smartmontools start

对于 CentOS & RHEL

 # service smartd start ; chkconfig smartd on

样例

样例:1 检查磁盘的 Smart 功能是否启用

root@linuxtechi:~# smartctl -i /dev/sdb
smartctl 6.2 -- r3841 [x86_64-linux-3.13.--generic] (local build)
Copyright (C) -, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF INFORMATION SECTION ===
Model Family: Seagate Momentus 5400.6
Device Model: ST9320325AS
Serial Number: 5VD2V59T
LU WWN Device Id: 000c50 020a37ec4
Firmware Version: 0002BSM1
User Capacity: ,,, bytes [ GB]
Sector Size: bytes logical/physical
Rotation Rate: rpm
Device is: In smartctl database [for details use: -P show]
ATA Version is: ATA8-ACS T13/-D revision
SATA Version is: SATA 2.6, 1.5 Gb/s
Local Time is: Sun Nov :: IST
SMART support is: Available - device has SMART capability.
SMART support is: Enabled

这里‘/dev/sdb’是你的硬盘。上面输出中的最后两行显示了SMART功能已启用。

样例:2 启用磁盘的 Smart 功能

root@linuxtechi:~# smartctl -s on /dev/sdb
smartctl 6.2 -- r3841 [x86_64-linux-3.13.--generic] (local build)
Copyright (C) -, Bruce Allen, Christian Franke, www.smartmontools.org
=== START OF ENABLE/DISABLE COMMANDS SECTION ===.SMART Enabled.

样例:3 禁用磁盘的 Smart 功能

root@linuxtechi:~# smartctl -s off /dev/sdb
smartctl 6.2 -- r3841 [x86_64-linux-3.13.--generic] (local build)
Copyright (C) -, Bruce Allen, Christian Franke, www.smartmontools.org === START OF ENABLE/DISABLE COMMANDS SECTION ===
SMART Disabled. Use option -s with argument 'on' to enable it.

样例:4 显示磁盘的详细 Smart 信息

root@linuxtechi:~# smartctl -a /dev/sdb // For IDE drive
root@linuxtechi:~# smartctl -a -d ata /dev/sdb // For SATA drive

样例:5 显示磁盘总体健康状况

root@linuxtechi:~# smartctl -H /dev/sdb

smartctl 6.2 -- r3841 [x86_64-linux-3.13.--generic] (local build)

Copyright (C) -, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===

SMART overall-health self-assessment test result: PASSED

Warning: This result is based on an Attribute check.

Please note the following marginal Attributes:

ID# ATTRIBUTE_NAME FLAG VALUE WORST THRESH TYPE UPDATED WHEN_FAILED RAW_VALUE

 Airflow_Temperature_Cel 0x0022    Old_age Always In_the_past  (Min/Max /)

样例:6 使用long和short选项测试硬盘

Long测试

root@linuxtechi:~# smartctl --test=long /dev/sdb

smartctl 6.2 -- r3841 [x86_64-linux-3.13.--generic] (local build)

Copyright (C) -, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===

Sending command: "Execute SMART Extended self-test routine immediately in off-line mode".

Drive command "Execute SMART Extended self-test routine immediately in off-line mode" successful.

Testing has begun.

Please wait  minutes for test to complete.

Test will complete after Sun Nov  :: 

Use smartctl -X to abort test.

或者,我们可以重定向测试输出到日志文件,就像下面这样

root@linuxtechi:~# smartctl --test=long /dev/sdb > /var/log/long.text

Short测试

root@linuxtechi:~# smartctl --test=short /dev/sdb

smartctl 6.2 -- r3841 [x86_64-linux-3.13.--generic] (local build)

Copyright (C) -, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF OFFLINE IMMEDIATE AND SELF-TEST SECTION ===

Sending command: "Execute SMART Short self-test routine immediately in off-line mode".

Drive command "Execute SMART Short self-test routine immediately in off-line mode" successful.

Testing has begun.

Please wait  minutes for test to complete.

Test will complete after Sun Nov  :: 

Use smartctl -X to abort test.

root@linuxtechi:~# smartctl --test=short /dev/sdb > /var/log/short.text

注意:short测试将花费最多2分钟,而在long测试中没有时间限制,因为它会读取并验证磁盘的每个段。

样例:7 查看驱动器的自检结果

root@linuxtechi:~# smartctl -l selftest /dev/sdb

smartctl 6.2 -- r3841 [x86_64-linux-3.13.--generic] (local build)

Copyright (C) -, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===

SMART Self-test log structure revision number
Num Test_Description Status Remaining LifeTime(hours) LBA_of_first_error
# Short offline Completed: read failure %
# Extended offline Completed: read failure %

样例:8 计算测试时间估值

root@linuxtechi:~# smartctl -c /dev/sdb

smartctl 6.2 -- r3841 [x86_64-linux-3.13.--generic] (local build)

Copyright (C) -, Bruce Allen, Christian Franke, www.smartmontools.org

=== START OF READ SMART DATA SECTION ===

General SMART Values:
Offline data collection status: (0x00) Offline data collection activity was never started. Auto Offline Data Collection: Disabled. Self-test execution status: ( ) The previous self-test completed having the read element of the test failed.
Total time to complete Offline
data collection: ( ) seconds.
Offline data collection
capabilities: (0x73) SMART execute Offline immediate.
Auto Offline data collection on/off support.
Suspend Offline collection upon new command.
No Offline surface scan supported.
Self-test supported.
Conveyance Self-test supported.
Selective Self-test supported.
SMART capabilities: (0x0003) Saves SMART data before entering
power-saving mode.
Supports SMART auto save timer.
Error logging capability: (0x01) Error logging supported.
General Purpose Logging supported.
Short self-test routine
recommended polling time: ( ) minutes.
Extended self-test routine
recommended polling time: ( ) minutes.
Conveyance self-test routine
recommended polling time: ( ) minutes.
SCT capabilities: (0x103b) SCT Status supported.
SCT Error Recovery Control supported.
SCT Feature Control supported.
SCT Data Table supported.

样例:9 显示磁盘错误日志

root@linuxtechi:~# smartctl -l error /dev/sdb

Sample Output
smartctl 6.2 -- r3841 [x86_64-linux-3.13.--generic] (local build)
Copyright (C) -, Bruce Allen, Christian Franke, www.smartmontools.org === START OF READ SMART DATA SECTION ===
SMART Error Log Version: ATA Error Count:
CR = Command Register [HEX]
FR = Features Register [HEX]
SC = Sector Count Register [HEX]
SN = Sector Number Register [HEX]
CL = Cylinder Low Register [HEX]
CH = Cylinder High Register [HEX]
DH = Device/Head Register [HEX]
DC = Device Command Register [HEX]
ER = Error register [HEX]
ST = Status register [HEX]
Powered_Up_Time is measured from power on, and printed as
DDd+hh:mm:SS.sss where DD=days, hh=hours, mm=minutes,
SS=sec, and sss=millisec. It "wraps" after 49.710 days.
Commands leading to the command that caused the error were:
CR FR SC SN CL CH DH DC Powered_Up_Time Command/Feature_Name
-- -- -- -- -- -- -- -- ---------------- --------------------
da e7 e5 a5 4c ::44.515 READ DMA EXT
da df e5 a5 4c ::44.514 READ DMA EXT
da 5f e5 a5 4c ::44.502 READ DMA EXT
da f0 5f e6 a5 4c ::44.496 READ DMA EXT
da 4f e6 a5 4c ::44.383 READ DMA EXT

smartctl工具应用(转载整理)的更多相关文章

  1. vs2015添加ActiveX Control Test Container工具(转载)

    http://blog.csdn.net/lphbtm/article/details/8647565 vs2010 中添加 ActiveX Control Test Container工具(转载) ...

  2. GitHub上整理的一些工具【转载】

    技术站点 Hacker News:非常棒的针对编程的链接聚合网站 Programming reddit:同上 MSDN:微软相关的官方技术集中地,主要是文档类 infoq:企业级应用,关注软件开发领域 ...

  3. 用Python做自然语言处理必知的八个工具【转载】

    Python以其清晰简洁的语法.易用和可扩展性以及丰富庞大的库深受广大开发者喜爱.其内置的非常强大的机器学习代码库和数学库,使Python理所当然成为自然语言处理的开发利器. 那么使用Python进行 ...

  4. IOS开发--常用工具类收集整理(Objective-C)(持续更新)

    前言:整理和收集了IOS项目开发常用的工具类,最后也给出了源码下载链接. 这些可复用的工具,一定会给你实际项目开发工作锦上添花,会给你带来大大的工作效率. 重复造轮子的事情,除却自我多练习编码之外,就 ...

  5. IT项目管理工具总结(转载)

    以前用过一个cs版的忘记叫啥名了,还用个禅道,感觉一般“5. 测试管理: 项目软件缺陷Bug状态跟踪”在公司内部自己测试或者试用期上线后后期维护阶段用的多,有的公司单独做个系统让用户提问题来修改,也是 ...

  6. Delphi--最强大的开发工具(欢迎转载)

    最强大的开发工具 Delphi 目录 --------------------------------------------------------------------------- 前言 De ...

  7. iOS and JAVA 的 RSA 加密解密 (转载整理 )

    参考原文地址:http://www.cnblogs.com/makemelike/articles/3802518.html (至于RSA的基本原理,大家可以看 阮一峰的网络日志 的 RSA算法原理( ...

  8. win7环境下安装运行gotour【转载整理】

    转载请注明出处:http://www.cnblogs.com/Vulpers/p/5562586.html 最近尝试学习golang,在某个网站(真忘了)上发现gotour是一款灰常叼的教程& ...

  9. 最新的JavaScript核心语言标准——ES6,彻底改变你编写JS代码的方式!【转载+整理】

    原文地址 本文内容 ECMAScript 发生了什么变化? 新标准 版本号6 兑现承诺 迭代器和for-of循环 生成器 Generators 模板字符串 不定参数和默认参数 解构 Destructu ...

随机推荐

  1. e2e 自动化集成测试 架构 实例 WebStorm Node.js Mocha WebDriverIO Selenium Step by step (三) SqlServer数据库的访问

    上一篇文章“e2e 自动化集成测试 架构 京东 商品搜索 实例 WebStorm Node.js Mocha WebDriverIO Selenium Step by step 二 图片验证码的识别” ...

  2. bindService和startService的区别

    区别: startService,关闭服务退出activity,service仍然处于后台运行 bindService,关闭服务退出activity直接stopService,停止服务 bindSer ...

  3. 编写安全代码:小心volatile的原子性误解

    本文的copyleft归gfree.wind@gmail.com所有,使用GPL发布,可以自由拷贝,转载.但转载请保持文档的完整性,注明原作者及原链接,严禁用于任何商业用途. ============ ...

  4. 【转载】shell中的特殊变量$

    shell中的特殊变量:变量名含义$0shell或shell脚本的名字$*以一对双引号给出参数列表$@将各个参数分别加双引号返回$#参数的个数$_代表上一个命令的最后一个参数$$代表所在命令的PID$ ...

  5. Visual Studio C++ Command Line

    最近在Visual Studio 2012进行vp8的开发,之前一直都是在ubuntu上进行开发,关于编译链接的一些选项可直接在makefile中定义,比如vp8的头文件都放在include文件下面, ...

  6. jitsi-meet

    Jitsi Meet在Ubuntu上的快速安装与卸载 1. 进入到终端,切换到root用户 # sudo su 添加相应的代码仓库: # echo 'deb http://download.jitsi ...

  7. [Objective-c 基础 - 2.10] description方法

    A. 实例对象打印-description 1.当使用NSLog函数并且使用%@占位符的时候,会调用对象的-description方法 2.拿到-description的返回值,显示到console中 ...

  8. 【PAT Advanced Level】1004. Counting Leaves (30)

    利用广度优先搜索,找出每层的叶子节点的个数. #include <iostream> #include <vector> #include <queue> #inc ...

  9. ios键盘上添加辅助视图

  10. VB二进制文件读写

    数组存取 存数组 Private Sub Command2_Click() Dim fileNumber As Integer Dim S9 As String Dim k As Integer Di ...