在CentOS 6.3 64bit上使用 smartmontools和MageCli 监测硬盘的健康状态

一、简介

smartmontools是一款开源的磁盘控制,监视工具,通过控制和管理硬盘的SMART(Self Monitoring Analysis and Reporting Technology,自动检测分析及报告技术)技术来实现的,SMART技术可以对硬盘的磁头单元、盘片电机驱动系统、硬盘内部电路以及盘片表面介质材料等进行监测,当SMART监测并分析出硬盘可能出现问题时会及时向用户报警以避免计算机数据受损失。SMART技术必须在主板支持的前提下才能发生作用。

smartmontools可以运行在 Linux,Unix,BSD,Solaris,Mac OS,OS/2,Cygwin和Windows上,同时它还可以从启动光盘或启动软盘运行,支持ATA/ATAPI/SATA-3(到-8)位的硬盘和 SCSI硬盘,另外还支持磁带设备,它的官网为http://www.smartmontools.org/。

smartmontools,包括了两个实用程 序:smartctl和smatd。它监控的硬盘必须具有S.M.A.R.T特性,目前所有硬盘都有这个特性,但默认情况下通常没有开启这个功能,有两种 方法来开启这个特性:1)通过BIOS设置选项2)通过smartctl命令。利用它可以测试硬盘的健康状况,并在发生故障前进行预警。

MegaCli是一款管理维护硬件RAID软件,可以通过它来了解当前raid卡的所有信息,包括 raid卡的型号,raid的阵列类型,raid 上各磁盘状态,等等。通过MegaCli可以实现对RAID阵列内的物理硬盘做监测。

二、安装smartmontools

yum install smartmontools

开启服务

service smartd start 
chkconfig smartd on
下面是安装截图


三、安装MegaCli的Linux版本
搜索MegaCli得到下面的截图


下载该压缩包8-07-14_MegaCLI.zip,解压后得到全平台文件,进入Linux目录下面安装rpm包


解压
mkdir -p 8-07-14_MegaCLI/
unzip 8-07-14_MegaCLI.zip -d 8-07-14_MegaCLI/
安装
rpm -ivh MegaCli-8.07.14-1.noarch.rpm
安装的文件默认在
/opt/MegaRAID/MegaCli/MegaCli64
为了使用方便,我们创建一个软连接
ln  -s /opt/MegaRAID/MegaCli/MegaCli64  /usr/local/bin/MegaCli
在命令行执行MegaCli就可以了,比如查询硬盘信息
MegaCli -PDList -aAll

四、常用命令:
MegaCli  -LDInfo -Lall -aALL 查raid级别
MegaCli -AdpAllInfo -aALL 查raid卡信息
MegaCli -PDList -aALL 查看硬盘信息
MegaCli -AdpBbuCmd -aAll 查看电池信息
MegaCli -FwTermLog -Dsply -aALL 查看raid卡日志
MegaCli -adpCount 【显示适配器个数】
MegaCli -AdpGetTime –aALL 【显示适配器时间】
MegaCli -AdpAllInfo -aAll    【显示所有适配器信息】
MegaCli -LDInfo -LALL -aAll    【显示所有逻辑磁盘组信息】
MegaCli -PDList -aAll    【显示所有的物理信息】
MegaCli -AdpBbuCmd -GetBbuStatus -aALL |grep ‘Charger Status’ 【查看充电状态】
MegaCli -AdpBbuCmd -GetBbuStatus -aALL【显示BBU状态信息】
MegaCli -AdpBbuCmd -GetBbuCapacityInfo -aALL【显示BBU容量信息】
MegaCli -AdpBbuCmd -GetBbuDesignInfo -aALL    【显示BBU设计参数】
MegaCli -AdpBbuCmd -GetBbuProperties -aALL    【显示当前BBU属性】
MegaCli -cfgdsply -aALL    【显示Raid卡型号,Raid设置,Disk相关信息】







五、 监控原理

smartctl -a -d megaraid,0 /dev/sda

其megaraid,0中的0代表的是在megaraid中的物理盘编号


下面使用smartctl透过Raid卡获取磁盘更详细的信息:

# smartctl manual 摘录..
              Under Linux , to look at SCSI/SAS disks behind LSI MegaRAID controllers, use syntax such as:
              smartctl -a -d megaraid,2 /dev/sda
              smartctl -a -d megaraid,0 /dev/sdb
              where in the argument megaraid,N, the integer N is the physical disk number within the MegaRAID controller.  This  interface  will
              also work for Dell PERC controllers.  The following /dev/XXX entry must exist:                 # 经测试只要存在即可,对应关系搞错确也仍可正常显示
              For PERC2/3/4 controllers: /dev/megadev0
              For PERC5/6 controllers: /dev/megaraid_sas_ioctl_node


对非Raid模式
可以通过这个命令来检测某个硬盘的健康状况:
# smartctl -s on -a /dev/sda 
在这个命令中,"-s on"标志开启指定设备上的SMART功能。如果/dev/sda上已开启SMART支持,那就省略它。

硬盘的SMART信息包含很多部分。其中,"READ SMART DATA"部分显示出硬盘的整体健康状况。

=== START OF READ SMART DATA SECTION ===
SMART overall-health self-assessment rest result: PASSED
这个测试的结果是PASSED或FAILED。后者表示即将出现硬件故障,所以需要开始备份这块磁盘上的重要数据!

六、参考文献

[3]. https://linux.cn/article-4461-1-rel.html    上述问题的解决方法
[4]. http://www.linuxidc.com/Linux/2014-09/107093.htm   下面MegaCLI软件包
[5]. http://www.techsiteanalytics.com/index.php/2013/04/15/5462   非常有参考价值,特别是后面的说明
[6]. http://www.cnblogs.com/cute/archive/2011/08/17/2143259.html   对非raid的磁盘监测记录得比较清楚

  • 1
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值