一种在linux下自动检测raid下磁盘坏道信息的方法

文档序号:10654423阅读:520来源:国知局
一种在linux下自动检测raid下磁盘坏道信息的方法
【专利摘要】本发明公开了一种在linux下自动检测raid下磁盘坏道信息的方法,所述方法基于shell脚本,调用各raid卡厂商的linux下raid工具,每隔一段时间,检测一遍服务器下所有的磁盘轨道信息,并将磁盘的坏道信息提示出来。本发明方法利用各个raid卡厂商提供的接口以及OS下针对IO处理的监控服务,进行raid下磁盘坏道信息进行实时监控,及时的发现磁盘的隐患,避免了数据的丢失以及服务的中断,大大的保证了服务器的稳定性,数据的安全性。
【专利说明】
一种在I i nux下自动检测ra i d下磁盘坏道信息的方法
技术领域
[0001]本发明涉及系统维护技术领域,具体涉及一种在linux下自动检测raid下磁盘坏道信息的方法。【背景技术】
[0002]磁盘是服务器上必不可少的一个组成部分,目前大多数的服务器都会采用raid阵列的方式使用磁盘,这样在保证数据的安全性的基础上,又能够给在线更换磁盘提供了可能,但是raid自带的报警功能很多情况下都是在磁盘无法工作的情况下才会进行报警提示,而不会对磁盘的坏道进行定时的检测和预警,对于一些需要频繁读写数据的业务,磁盘的坏道很容易引起业务读写时的死锁现象,大大影响了数据的安全性和时效性。
【发明内容】

[0003]本发明要解决的技术问题是:为了解决上述问题,本发明提出了一种在linux下自动检测raid下磁盘坏道信息的方法,实时的检测raid下磁盘的坏道信息,当坏道出现时,即开始预警,提示用户坏道数量。
[0004]本发明所采用的技术方案为:一种在1 inux下自动检测raid下磁盘坏道信息的方法,所述方法基于she 11脚本,调用各raid卡厂商的linux下raid工具(例如LSI的storclila和PMC的arcconf工具),每隔一段时间(如1小时),检测一遍服务器下所有的磁盘轨道信息,并将磁盘的坏道信息提示出来。
[0005]所述方法通过shell脚本将磁盘的坏道信息保存日志中。
[0006]当磁盘的坏道信息已经达到了预警线,所述方法通过磁盘的定位灯闪烁,提示用户关注磁盘信息,及时更换磁盘。
[0007]所述脚本运行流程如下:1)显示出当前的磁盘列表信息;2)获取磁盘总的数目;3)遍历检查所有磁盘的温度,如果温度超出标准,则报警并点亮指示灯;4)遍历检查所有磁盘的坏道信息,如果坏道信息超出标准则报警,并点亮指示灯。
[0008]整个过程主要是利用shell脚本实现磁盘坏道的信息检测、日志保存功能、同步闪灯预警提示,该方法使用方便,操作简单,在保证数据的正常读写情况下,及时的发现磁盘坏道信息,保证数据的安全性,保证业务的正常运行。
[0009]本发明的有益效果为:本发明方法利用各个raid卡厂商提供的接口以及0S下针对10处理的监控服务,进行 raid下磁盘坏道信息进行实时监控,及时的发现磁盘的隐患,避免了数据的丢失以及服务的中断,大大的保证了服务器的稳定性,数据的安全性。【附图说明】
[0010]图1为本发明脚本流程图。【具体实施方式】
[0011]下面结合说明书附图,根据【具体实施方式】对本发明进一步说明:实施例1:一种在1 inux下自动检测raid下磁盘坏道信息的方法,所述方法基于she 11脚本,调用各raid卡厂商的linux下raid工具(例如LSI的storclila和PMC的arcconf工具),每隔一段时间(如1小时),检测一遍服务器下所有的磁盘轨道信息,并将磁盘的坏道信息提示出来。
[0012]实施例2在实施例1的基础上,本实施例所述方法通过shell脚本,将磁盘的坏道信息保存于日志中。
[0013]实施例3在实施例2的基础上,本实施例当磁盘的坏道信息已经达到了预警线,所述方法通过磁盘的定位灯闪烁,提示用户需要关注磁盘信息,及时更换磁盘。
[0014]实施例4在实施例3的基础上,本实施例所述脚本主要完成如下功能:自动检测磁盘的坏道信息,同步将信息保存到日志中,并每隔一个小时重新进行检测。 当坏道信息达到预警数量,那么该脚本会自动点亮磁盘的定位灯来提示用户磁盘坏道数量已经达到预警。
[0015]如图1所示,执行脚本/disk.sh;1)每隔一个小时检测一次磁盘坏道信息;2)当坏道数量超过临界值,立即电量磁盘的定位灯,在系统下显示报警,并执行步骤 4);3)当坏道数量未超过临界值时;4)继续进行检测,同步保存结果,实时监控日志;5)执彳丁完成。[〇〇16]主要代码如下:raid_check /cO/eall/sall show //显示出当前的磁盘列表信息 sas_number='raid_check /c0/eall/sail show grep _i HDD wc _1 ' //获取石兹盘总的numberfor ((i=0;i<$sas_number;i++)) dotemperature=.raid_check /c0/eall/s$i show all grep _i temperatureif [ 〃$temperature〃 > 64 ];thenecho the SAS $i temperature is too hot!!!!! raid_check /c0/eall/s$i start locate fi//遍历检查所有磁盘的温度,如果温度超出标准,则报警并点亮指示灯sas_error= raid_check /cO/eall/s$i show all |grep _i predictiveif [ 〃$ sas_error > 0];thenecho the SAS $i has $sas_error error!!! raid_check /cO/eall/s$i start locate fidone//遍历检查所有磁盘的坏道信息,如果坏道信息超出标准则报警,并点亮指示灯上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。
【主权项】
1.一种在linux下自动检测raid下磁盘坏道信息的方法,其特征在于:所述方法基于 shell脚本,调用各raid卡厂商的linux下raid工具,每隔一段时间,检测一遍服务器下所有 的磁盘轨道信息,并将磁盘的坏道信息提示出来。2.根据权利要求1所述的一种在linux下自动检测raid下磁盘坏道信息的方法,其特征 在于,所述方法通过shell脚本将磁盘的坏道信息保存日志中。3.根据权利要求2所述的一种在linux下自动检测raid下磁盘坏道信息的方法,其特征 在于,当磁盘的坏道信息已经达到了预警线,所述方法通过磁盘的定位灯闪烁,提示用户关 注磁盘信息。4.根据权利要求3所述的一种在linux下自动检测raid下磁盘坏道信息的方法,其特征 在于,所述脚本运行流程如下:1)显示出当前的磁盘列表信息;2)获取磁盘总的数目;3)遍历检查所有磁盘的温度,如果温度超出标准,则报警并点亮指示灯;4)遍历检查所有磁盘的坏道信息,如果坏道信息超出标准则报警,并点亮指示灯。
【文档编号】G06F11/30GK106021065SQ201610333684
【公开日】2016年10月12日
【申请日】2016年5月19日
【发明人】曲洪磊
【申请人】浪潮电子信息产业股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1