安装相关工具
yum -y install smartmontools hdparm
SMART是一种磁盘自我分析检测技术,早在90年代末就基本得到了普及每一块硬盘(包括IDE、SCSI),在运行的时候都会将自身的若干参数记录下来,这些参数包括型号、容量、温度、密度、扇区、寻道时间、传输、误码率等。硬盘运行了几千小时后,很多内在的物理参数都会发生变化,某一参数超过报警阈值,则说明硬盘接近损坏,此时硬盘依然在工作,如果用户不理睬这个报警继续使用,那么硬盘将变得非常不可靠,随时可能故障。
启用SMART
SMART是和主板BIOS上相应功能配合的,要使用SMART,必须先进入到主板BIOS设置里边启动相关设置。一般从Pentium2级别起的主板,都支持SMART,BIOS启动以后,就是操作系统级别的事情了(Windows没有内置SMART相关工具,需要安装第三方工具软件),好在Linux上很早就有了SMART支持了,如果把Linux装在VMware等虚拟机上,在系统启动时候可以看到有个服务启动报错:smartd。这个服务器就是smart的daemon进程(因为vmware虚拟机的硬盘不支持SMART,所以报错)。smartd是一个守护进程(一个帮助程序),它能监视拥有自我监视,分析和汇报技术(Self-Monitoring, Analysis, and Reporting Technology - SMART)的硬盘。SMART体系使得硬盘能监视并汇报自己的运行状况.它的一个重要特性是能够预测失败,使得系统管理员能避免数据丢失。
1、smartctl -i <device> :显示设备的身份信息,检查硬盘是否打开了SMART支持。
看到有:
SMART support is: Enabled
说明硬盘支持SMART。
如果为Disabled,使用:
smartctl --smart=on --offlineauto=on --saveauto=on <device>
启用SMART。
2、smartctl -H <device> :查看硬盘的健康状况。
=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment test result: PASSED
PASSED表示硬盘健康状态良好,如果为Failure那就要立刻更换硬盘。
3、smartctl -A <device> :显示设备SMART厂商属性和值。
4、smartctl -l error <device> :显示硬盘历史错误信息。
5、smartctl --test=TEST <device> :硬盘自测。
TEST可取值:offline, short, long, conveyance, select,M-N, pending,N, afterselect,[on|off], scttempint,N[,p]
此时可以用smartctl -X中断后台测试。
6、smartctl -l selftest <device> :显示硬盘测试信息。
7、smartctl -a <device> :显示硬盘SMART的全部信息。
8、hdparm -Tt <device> :测试读取速度
其它测试读写速度方法:
测试写速度:dd if=/dev/zero bs=1k count=1000000 of=1Gb.file
测试读速度:dd if=1Gb.file bs=64k |dd of=/dev/null