本发明涉及服务器硬件测试领域,具体涉及一种Linux系统下批量更新希捷硬盘固件的方法。

背景技术:

随着服务器主板芯片的更新升级,旧固件版本的硬盘可能会出现开机无故失去响应,操作系统卡死、蓝屏、死机或硬盘故障等症状,但硬盘本身无严重硬件问题且硬盘容量也满足我们的需求。为了节省成本,解决上述可能发生的这些问题,修复磁盘坏区,提高与系统的兼容性和磁盘的稳定性,硬盘厂商会不定期提供新的硬盘固件版本以供硬盘进行升级。

另一方面,为了保证产品质量,对硬盘的测试是必不可少的,然而现实情况下不可能对每一种硬盘的不同的固件版本均选取新的硬盘来进行测试,因为这样会造成严重的资源浪费。因此可以选择对旧的硬盘固件版本进行升级来测试。测试时因为受到项目周期和交付时间的限制,需要合理加快时间进度;而更新固件版本往往都需要对服务器上所有的硬盘都进行更新,每台服务器通常搭载有至少8块硬盘,按照以往操作,只能一块一块硬盘进行更新升级,这样会造成极大的时间浪费,且重复操作也容易造成失误导致数据丢失,造成重大损失。

针对上述问题,本申请发明一种Linux系统下批量更新希捷硬盘固件的方法,通过修改linux操作系统下刷新希捷机械硬盘固件版本命令,批量完成对搭载希捷机械硬盘的单台服务器上所有希捷机械硬盘进行固件版本的刷新,大大减少了研发阶段测试准备时间,极大地降低误操作,保证了数据安全。

技术实现要素:

本发明对刷新希捷机械硬盘固件版本的命令进行了修改。特殊之处在于,该修改能够对整台服务器上的所有希捷硬盘同时进行固件升级更新,大大减少了测试准备时间,提高了测试效率。

具体地,本申请请求保护一种Linux系统下批量更新希捷硬盘固件的方法,其特征在于,该方法具体包括:

查看系统中硬盘数量;

查看系统中各个硬盘的固件信息;

使用希捷厂商提供的脚本对硬盘进行分位更新;

重新查看硬盘固件信息。

如上所述的Linux系统下批量更新希捷硬盘固件的方法,其特征还在于,对硬盘进行分位更新的具体指令为:

for i in{b..j};
do./SeaChest_105_142_64–downloadFW厂商提供更新固件文件.lod-d/dev/sd$i;
done。

具体实施方式

1、查看系统中硬盘数量

首先用root用户进入到linux系统,读取系统中希捷硬盘,具体指令如下:

ls/dev/sd*回车

通过该指令,即可知道系统中一共有多少块硬盘。

2、查看系统中各个硬盘的固件信息

具体指令如下:

smartctl--all/dev/硬盘名称

该命令可以查看特定硬盘的固件版本信息。

3、使用希捷厂商提供的脚本对硬盘进行分位更新

对于不同的硬盘,厂商提供的LOD文件也不同,比如我们的希捷硬盘型号为ST4000NM0035,固件版本为TN02,现在我们需要将固件版本更新至TN04,则我们需要找到硬盘厂商提供的TN04.Lod文件;

输入如下命令即可将所有希捷机械硬盘全部更新固件:

for i in{b..j};do./SeaChest_105_142_64–downloadFW厂商提供的TN04.lod-d/dev/sd$i;done

回车

4、重新查看硬盘固件信息,具体命令如下:

smartctl--all/dev/硬盘名称

即可检查发现固件刷新成功。

本发明对于超过3块硬盘的服务器同样适用。

显而易见地,上面所示的仅仅是本发明的一个具体实施方式,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据上述实施例获得其他的技术方案,以及在本发明保护的范围内做出的等同变化均应落入本发明的保护范围内,都属于本发明保护的范围。

综上所述,本发明通过采用修改linux操作系统下刷新希捷机械硬盘固件版本命令,批量的完成对搭载希捷机械硬盘的单台服务器上所有希捷机械硬盘进行固件刷新,大大减少了研发阶段测试准备时间,极大的降低了可能的操作失误造成的数据丢失等损失,且便于后续的自动化的实现。