[发明专利]一种RAID损坏详细信息获取方法、系统、终端及存储介质有效
申请号: | 202010056635.9 | 申请日: | 2020-01-18 |
公开(公告)号: | CN111292796B | 公开(公告)日: | 2022-08-12 |
发明(设计)人: | 刘红泽 | 申请(专利权)人: | 苏州浪潮智能科技有限公司 |
主分类号: | G11C29/12 | 分类号: | G11C29/12 |
代理公司: | 济南舜源专利事务所有限公司 37205 | 代理人: | 张营磊 |
地址: | 215100 江苏省苏州市吴*** | 国省代码: | 江苏;32 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 raid 损坏 详细信息 获取 方法 系统 终端 存储 介质 | ||
本发明提供一种RAID损坏详细信息获取方法、系统、终端及存储介质,包括:在RAID代码中增设结构体,设置结构体的变量项并封装所述变量项对应的变量值抓取函数;根据系统下发的读取RAID条带地址错误提示,触发所述RAID的结构体调用相应变量抓取函数为变量项赋值;通过RAID的预设打印接口将RAID结构体的所有变量值作为损坏详细信息输出。本发明能够将RAID损坏LBA地址的详细信息以表的形式打印,更多的掌握RAID信息。
技术领域
本发明涉及存储设备技术领域,具体涉及一种RAID损坏详细信息获取方法、系统、终端及存储介质。
背景技术
现在的存储服务器中,可以将多块硬盘建成RAID磁盘阵列使用,提高了数据安全性,一个RAID可以包含多块硬盘,磁盘阵列技术就是将多块磁盘虚拟成一个磁盘阵列,对于存储来说就像是在操作一块硬盘,这样提高了存储的容量,也提高了数据安全性。RAID磁盘阵列内部通过将磁盘划分条带来进行存储,RAID将磁盘上的扇区地址转换成LBA地址,RAID通过LBA地址来进行寻址。当RAID成员盘有某个扇区损坏时,对于RAID的对应LBA地址的读写就会出错,基于现在的RAID机制,查看读写出错的LBA地址只能通过系统日志查看,没有对应的接口去查看详细信息,对于存储想要了解RAID中LBA地址读写错误的详细信息不是很直观。
发明内容
针对现有技术的上述不足,本发明提供一种RAID损坏详细信息获取方法、系统、终端及存储介质,以解决上述技术问题。
第一方面,本发明提供一种RAID损坏详细信息获取方法,包括:
在RAID代码中增设结构体,设置结构体的变量项并封装所述变量项对应的变量值抓取函数;
根据系统下发的读取RAID条带地址错误提示,触发所述RAID的结构体调用相应变量抓取函数为变量项赋值;
通过RAID的预设打印接口将RAID结构体的所有变量值作为损坏详细信息输出。
进一步的,所述结构体的变量项包括RAID名、RAID等级、RAID成员盘个数、LBA地址、读取错误次数、对应的磁盘设备名、磁盘设备上的对应扇区号、扇区大小、是否重定向、错误扇区连续个数和最后访问的事件类型。
进一步的,所述方法还包括:
遍历所有RAID的结构体;
筛选出所有保存在结构体内的损坏条带地址;
将所述损坏条带地址从读写目标地址中移除。
进一步的,所述方法还包括:
设置定时线程;
根据所述定时线程定时遍历RAID并对RAID进行损坏条带地址修复。
进一步的,所述对RAID进行损坏条带地址修复,包括:
对所述RAID的条带地址进行奇偶校验,判断所述条带地址是否通过奇偶校验:
若是,则判定所述条带地址为未损坏地址并将所述条带地址从结构体删除;
若否,则对所述条带地址写0,若写0成功则将所述条带地址从结构体删除。
进一步的,所述方法还包括:
在RAID重启之前将所述RAID的结构体变量值保存至指定文档;
在RAID启动后将所述RAID的结构体的变量值清空;
将所述文档中的信息恢复至所述RAID的结构体。
第二方面,本发明提供一种RAID损坏详细信息获取系统,包括:
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于苏州浪潮智能科技有限公司,未经苏州浪潮智能科技有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202010056635.9/2.html,转载请声明来源钻瓜专利网。