linux下硬盘检测工具: smartmontools
工具主页: http://smartmontools.sourceforge.net/
Smartmontools for SCSI硬盘: http://smartmontools.sourceforge.net/smartmontools_scsi.html
smartctl命令参数列表:
The following options are currently available for SCSI disks and tape drives unless otherwise noted:
-
-a | --all : equivalent to the combination -i -H -A -l error -l selftest options invoked in that order.
-
-A | --attributes : outputs the current device temperature, trip temperature, the number of elements in the grown defect list (GLIST) and data from the start-stop log page. Outputs some vendor specific information if available.
-
-C | --captive : used in conjunction with -t short or -t long options to do short or long self tests in the foreground. [Has no effect on tape drives.]
-
-d TYPE | --device=TYPE where TYPE is "ata", "scsi", "sat", "marvell", "3ware,N", "hpt,L/N[,M]" or "cciss,N". Overrides utility's guess about the class of the device which is based on the form of the nominated device's name.
-
-h | --help : outputs lengthy usage message and exits without any other action.
-
-H | --health : outputs single device health metric determined by the device manufacturer. This will be "OK" or a failure message.
-
-i | --info : outputs device identification information (derived from a SCSI INQUIRY command) and whether the device supports SMART (and temperature warnings) and if those facilities are currently enabled. The type of transport (e.g. FC or SAS) is also reported, if available. Some users have reported disks that report the wrong transport.
-
-l TYPE | --log=TYPE where TYPE is either "background", "selftest" or "error". Decodes are outputs the requested log. Note that --all does not include --log=background .
-
-q TYPE | --quietmode=TYPE where TYPE is either "silent" or "errorsonly". When the type is silent then nothing is output to the console but the exit status is set (so it is suitable for scripts). For "errorsonly" only errors are output to the console. The exit status is always set. [See the smartctl man page.]
-
-r TYPE | --report=TYPE where TYPE is either "ioctl[,<n>]" or "scsiioctl[,<n>]". Turns on low level debugging of issued commands and responses. These commands are issued through a system command called an "ioctl" in Unix. The debug can be for all issued commands (i.e. "ioctl") or only SCSI commands ("scsiioctl"). Optionally the TYPE can have a comma and a number post pended to increase the volume of debug. See this section for more details.
-
-s VALUE | --smart=VALUE where VALUE is either "on" or "off". Enables or disables SMART monitoring (and temperature warnings).
-
-S VALUE | --saveauto=VALUE where VALUE is either "on" or "off". Controls whether the error log values are preserved across device power cycles.
-
-t TEST | --test=TEST where TEST is either "offline", "short" or "long". Despite its name "offline" is a short foreground test that all SCSI devices should support. A "short" self test is typically 2 minutes or less. A "long" self test will be considerably longer than 2 minutes, depending on the size of the media. The estimated time that a "long" self test will take is printed after the "selftest" log (i.e. with '-l selftest' or '-a')
-
-V | --version : outputs the smartctl version number (including the cvs version of all its source files) and build information then exits without any other action.
-
-X | --abort : will terminate a background short or long self test. Usually the self test log notes that a self test has been aborted. [Has no effect on tape drives.]
简单用法:
1、smartctl -a <device> 检查该设备是否已经打开SMART技术。
2、smartctl -s on <device> 如果没有打开SMART技术,使用该命令打开SMART技术。
3、smartctl -t short <device> 后台检测硬盘,消耗时间短;
smartctl -t long <device> 后台检测硬盘,消耗时间长;
smartctl -C -t short <device> 前台检测硬盘,消耗时间短;
smartctl -C -t long <device> 前台检测硬盘,消耗时间长。
其实就是利用硬盘SMART的自检程序。
4、smartctl -X <device> 中断后台检测硬盘。
5、smartctl -l selftest <device> 显示硬盘检测日志。
6、smartctl -l error <device> 显示硬盘错误汇总。