固件升级方法及装置与流程
未命名
09-01
阅读:136
评论:0

1.本发明涉及服务器技术领域,尤其涉及一种固件升级方法及装置。
背景技术:
2.在使用服务器时经常会遇到需要升级硬盘固件版本的情况,但是硬盘类型太多,且需要不同的升级工具以及不同的固件版本,导致寻找合适的硬盘升级文件会花费大量时间。
3.现有的硬盘升级的固件版本文件只能在相关的部件库中搜索,但是部件库中固件升级文件不全,很多型号的硬盘固件升级文件搜索不到。并且,在搜索到升级的固件版本后,还需要运维人员查找对应的升级工具后执行升级操作,导致硬盘固件升级效率低。
技术实现要素:
4.本发明提供一种固件升级方法及装置,用以解决现有技术针对硬盘固件升级效率低的技术问题。
5.本发明提供一种固件升级方法,包括:
6.对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号;
7.基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,所述升级文件包括所述待升级硬盘的固件版本、所述待升级硬盘的升级执行脚本以及所述待升级硬盘的升级工具,所述升级文件库是预先构建的;
8.将所述升级文件发送至所述待升级硬盘所属的目标服务器,以使所述目标服务器执行所述升级文件中的升级执行脚本,并基于所述固件版本以及所述升级工具,执行所述待升级硬盘的固件升级操作。
9.根据本发明提供的一种固件升级方法,基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,包括:
10.在所述升级文件库中包含所述硬盘型号对应的多个升级文件的情况下,确定所述多个升级文件中升级使用次数最多的目标升级文件;
11.将所述目标升级文件作为所述待升级硬盘的升级文件。
12.根据本发明提供的一种固件升级方法,还包括:
13.对所述目标服务器的硬盘区域进行识别,确定所述目标服务器的多个硬盘的硬盘型号;
14.基于所述多个硬盘的硬盘型号,从所述升级文件库中确定所述多个硬盘对应的多个升级文件,并基于所述多个升级文件,执行所述目标服务器的硬盘固件升级操作。
15.根据本发明提供的一种固件升级方法,预先构建所述升级文件库包括:
16.将硬盘的固件版本、硬盘的升级执行脚本以及硬盘的升级工具进行打包压缩,得到压缩文件;
17.将硬盘的型号与所述压缩文件进行关联,构建所述升级文件库。
18.根据本发明提供的一种固件升级方法,对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号,包括:
19.获取待升级硬盘的标识码图像;
20.基于光学字符识别ocr对所述标识码图像进行识别,确定所述待升级硬盘的硬盘型号。
21.根据本发明提供的一种固件升级方法,基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,进一步包括:
22.在所述升级文件库中不包含所述硬盘型号的情况下,从所述升级文件库中确定与所述硬盘型号的字符相似度最高的目标型号,并确定所述目标型号对应的升级文件;
23.将所述目标型号对应的升级文件,作为所述待升级硬盘的升级文件。
24.根据本发明提供的一种固件升级方法,将所述升级文件发送至所述待升级硬盘所属的目标服务器之后,还包括:
25.获取所述待升级硬盘的升级执行结果,并将所述升级执行结果发送至所述目标服务器的前端界面,以使所述目标服务器的前端界面显示所述待升级硬盘的升级执行结果。
26.本发明还提供一种固件升级装置,包括:
27.识别模块,用于对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号;
28.检索模块,用于基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,所述升级文件包括所述待升级硬盘的固件版本、所述待升级硬盘的升级执行脚本以及所述待升级硬盘的升级工具,所述升级文件库是预先构建的;
29.升级模块,用于将所述升级文件发送至所述待升级硬盘所属的目标服务器,以使所述目标服务器执行所述升级文件中的升级执行脚本,并基于所述固件版本以及所述升级工具,执行所述待升级硬盘的固件升级操作。
30.本发明还提供一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现如上述任一种固件升级方法。
31.本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现如上述任一种固件升级方法。
32.本发明提供的固件升级方法及装置,通过识别待升级硬盘的硬盘型号,并基于待升级硬盘的硬盘型号,从升级文件库中确定待升级硬盘的升级文件,实现了基于待升级硬盘的硬盘型号匹配待升级硬盘升级所需的全部文件。将待升级文件发送至待升级硬盘所属的目标服务器,基于目标服务器执行所述升级文件中的升级执行脚本,并基于固件版本以及所述升级工具,执行待升级硬盘的固件升级操作,实现了待升级硬盘的固件的自动升级操作,提升了硬盘的升级效率。
附图说明
33.为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图简要地说明,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图
获得其他的附图。
34.图1是本发明提供的固件升级方法的流程示意图;
35.图2是应用本发明提供的固件升级方法的流程示意图;
36.图3是应用本发明提供的固件升级方法的装置结构示意图;
37.图4是本发明提供的固件升级装置的结构示意图;
38.图5是本发明提供的电子设备的结构示意图。
具体实施方式
39.为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
40.本发明提出一种固件升级方法,图1为本发明提供的固件升级方法的流程示意图。参照图1,本发明提供的固件升级方法可以包括:
41.步骤110,对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号;
42.步骤120,基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,所述升级文件包括所述待升级硬盘的固件版本、所述待升级硬盘的升级执行脚本以及所述待升级硬盘的升级工具,所述升级文件库是预先构建的;
43.步骤130,将所述升级文件发送至所述待升级硬盘所属的目标服务器,以使所述目标服务器执行所述升级文件中的升级执行脚本,并基于所述固件版本以及所述升级工具,执行所述待升级硬盘的固件升级操作。
44.本发明提供的固件升级方法的执行主体可以是电子设备、电子设备中的部件、集成电路、或芯片。该电子设备可以是移动电子设备,也可以为非移动电子设备。示例性的,移动电子设备可以为手机、平板电脑、笔记本电脑、掌上电脑、超级移动个人计算机(ultra-mobile personal computer,umpc)、上网本或者个人数字助理(personal digital assistant,pda)等,非移动电子设备可以为服务器、网络附属存储器(network attached storage,nas)或个人计算机(personal computer,pc)等,本发明不作具体限定。
45.下面以计算机执行本发明提供的固件升级方法为例,详细说明本发明的技术方案。
46.在步骤110中,获取待升级硬盘的标识码图像,对待升级硬盘的标识码图像进行识别,确定待升级硬盘的硬盘型号。
47.服务器中的硬盘一般有两种方式,一种是在服务器机箱内部插接,另一种是在服务器的机箱外有接口,可以在不打开服务器机箱的情况下,将硬盘插接在服务器中。在硬盘上有硬盘型号的标识码,所以可以基于获取硬盘在服务器上的图像,从而确定硬盘的标识码图像。
48.在获取待升级硬盘的标识码图像后,可以基于图像识别的方式,对待升级硬盘的标识码图像进行识别。例如,可以基于字符识别,或者ocr(optical character recognition,光学字符识别)的方式,识别待升级硬盘的硬盘型号。
49.其中,待升级硬盘为目标服务器中的任意需要进行升级硬盘固件版本的硬盘,可以为目标服务器中的一个硬盘,也可以为目标服务器中的多个硬盘。
50.对于大多数的情况,一个服务器中采取多个相同的硬盘,构建服务器的存储阵列。在获取服务器中的待升级硬盘的型号信息后,可以实现对服务器中所有相同硬盘的固件升级操作。
51.在步骤120中,在步骤110中确定待升级硬盘的硬盘型号后,基于确定的硬盘型号在升级文件库中检索,在升级文件库中确定待升级硬盘的升级文件。
52.升级文件库中包含了用于硬盘升级的升级文件。升级文件中包含待升级硬盘的固件版本、待升级硬盘的升级执行脚本以及待升级硬盘的升级工具。其中待升级硬盘的固件版本是用于硬盘升级的具体版本的固件文件;待升级硬盘的升级执行脚本是当前固件版本在升级时执行的升级流程,基于升级执行脚本,可以自动执行升级流程;待升级硬盘的升级工具是待升级硬盘在升级时所依赖的工具,例如,intel ssd firmware update tool固态硬盘固件升级工具等。
53.可以理解是,在对硬盘的固件版本进行升级时,不同的硬盘的升级的固件版本,升级硬盘的升级执行脚本以及升级工具均可能不同。升级文件库是预先构建的。
54.可选的,在构建升级文件库时,可以将硬盘的固件版本、硬盘的升级执行脚本以及硬盘的升级工具添加至一个文件夹中,并进行压缩,将得到的压缩文件与对应的硬盘型号进行关联。获取海量的硬盘的相关的升级文件进行上述处理后,添加至升级文件库中,完成升级文件库的构建。
55.在步骤130中,在获取待升级硬盘的升级文件后,将待升级硬盘的升级文件发送至待升级硬盘所述的目标服务器。目标服务器在接收升级文件后,对待升级硬盘的固件进行升级。
56.目标服务器为待升级硬盘所属的服务器,目标服务器中可能包含一块待升级硬盘,也可能包含多块相同的待升级硬盘。在获取待升级硬盘的升级文件后,可以实现目标服务器中仅包含的一块待升级硬盘的固件升级过程,也可以实现目标服务器中包含的多块相同的待升级硬盘的升级过程。
57.在目标服务器接收升级文件后,获取升级文件中的升级执行脚本、升级工具以及固件版本,并在目标服务器中执行升级执行脚本。其中,升级执行脚本中包含自动对待升级硬盘执行固件升级的操作。在目标服务器中执行升级执行脚本时,会自动基于升级工具以及固件版本,完成待升级硬盘的固件升级操作。
58.本发明实施例提供的固件升级方法,通过识别待升级硬盘的硬盘型号,并基于待升级硬盘的硬盘型号,从升级文件库中确定待升级硬盘的升级文件,实现了基于待升级硬盘的硬盘型号匹配待升级硬盘升级所需的全部文件。将待升级文件发送至待升级硬盘所属的目标服务器,基于目标服务器执行所述升级文件中的升级执行脚本,并基于固件版本以及所述升级工具,执行待升级硬盘的固件升级操作,实现了待升级硬盘的固件的自动升级操作,提升了硬盘的升级效率。
59.在一个实施例中,基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,包括:在所述升级文件库中包含所述硬盘型号对应的多个升级文件的情况下,确定所述多个升级文件中升级使用次数最多的目标升级文件;将所述目标升级文件作为所述待
升级硬盘的升级文件。
60.对于一个待升级硬盘,一般包含多个版本的固件。若基于硬盘型号,在升级文件库中检索时,升级文件库中包含硬盘型号对应的多个升级文件的情况下。对多个升级文件的历史升级时的升级使用次数进行统计,确定多个升级文件中升级使用次数最多的目标升级文件。
61.可以理解的是,一般在历史升级时,升级使用次数最多的升级文件为版本比较稳定的升级文件,基于该文件执行升级操作,风险较小。所以在确定升级使用次数最多的目标升级文件之后,将目标升级文件作为待升级硬盘的升级文件,用于待升级硬盘的后续升级操作。
62.本发明实施例提供的固件升级方法,通过基于硬盘型号,在升级文件库中检索时,升级文件库中包含硬盘型号对应的多个升级文件的情况下。对多个升级文件的历史升级时的升级使用次数进行统计,确定多个升级文件中升级使用次数最多的目标升级文件,提升了确定待升级硬盘的升级文件的准确性。
63.在一个实施例中,还包括:对所述目标服务器的硬盘区域进行识别,确定所述目标服务器的多个硬盘的硬盘型号;基于所述多个硬盘的硬盘型号,从所述升级文件库中确定所述多个硬盘对应的多个升级文件,并基于所述多个升级文件,执行所述目标服务器的硬盘固件升级操作。
64.对于目标服务器存储空间一般由多个硬盘组成的硬盘阵列构成。硬盘整列中的多个硬盘均可能需要进行固件版本升级。在对目标服务器中的多个硬盘进行固件版本的升级时,基于对目标服务器的硬盘区域进行识别,确定目标服务器中多个硬盘的硬盘型号。
65.在获取目标服务器中各硬盘的硬盘型号后,分别从升级文件库中确定各硬盘对应的升级文件,得到多个升级文件。基于得到的多个升级文件,对目标服务器的硬盘固件进行升级。
66.具体的,可以将获取的多个升级文件发送至目标服务器,目标服务器接收多个升级文件后,获取升级文件中的升级执行脚本、升级工具以及固件版本,并在目标服务器中执行升级执行脚本。在目标服务器中执行各硬盘的升级执行脚本,基于对应的升级工具以及固件版本,实现对目标服务器各个硬盘固件的升级。
67.本发明实施例提供的固件升级方法,通过对目标服务器中的多个硬盘进行固件版本的升级时,基于对目标服务器的硬盘区域进行识别,确定目标服务器中多个硬盘的硬盘型号,分别从升级文件库中确定各硬盘对应的升级文件,得到多个升级文件。基于得到的多个升级文件,对目标服务器的硬盘固件进行升级,实现了目标服务器中多个硬盘的批量升级过程。
68.在一个实施例中,预先构建所述升级文件库包括:将硬盘的固件版本、硬盘的升级执行脚本以及硬盘的升级工具进行打包压缩,得到压缩文件;将硬盘的型号与所述压缩文件进行关联,构建所述升级文件库。
69.在进行待升级硬盘的自动升级时,需要预先构建升级文件库。在构建升级文件库时,可以将硬盘的固件版本、硬盘的升级执行脚本以及硬盘的升级工具添加至一个文件夹中,并进行压缩,将得到的压缩文件与对应的硬盘型号进行关联。获取海量的硬盘的相关的升级文件进行上述处理后,添加至升级文件库中,完成升级文件库的构建。
70.可以理解的是,构建的升级文件库中包含硬盘的固件版本、硬盘的升级执行脚本以及硬盘的升级工具,即包含了硬盘在进行固件升级操作过程中所需的所有文件。
71.在确定待升级硬盘的硬盘型号后,在升级文件库中匹配对应的升级文件,从而可以实现基于硬盘型号自动获取硬盘在进行固件升级时所需的所有文件。
72.本发明实施例提供的固件升级方法,通过将硬盘的固件版本、硬盘的升级执行脚本以及硬盘的升级工具进行打包压缩,将得到的压缩文件与对应的硬盘型号进行关联,实现了升级文件库的构建,为后续实现对硬盘的升级提供了基础。
73.在一个实施例中,对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号,包括:获取待升级硬盘的标识码图像;基于光学字符识别ocr对所述标识码图像进行识别,确定所述待升级硬盘的硬盘型号。
74.其中,ocr识别是指电子设备(例如扫描仪或数码相机)检查纸上打印的字符,然后用字符识别方法将形状翻译成计算机文字的过程。即,对文本资料进行扫描,然后对图像文件进行分析处理,获取文字及版面信息的过程。衡量一个ocr系统性能好坏的主要指标有:拒识率、误识率、识别速度、用户界面的友好性,产品的稳定性,易用性及可行性等。
75.服务器中的硬盘一般有两种方式,一种是在服务器机箱内部插接,另一种是在服务器的机箱外有接口,可以在不打开服务器机箱的情况下,将硬盘插接在服务器中。在硬盘上有硬盘型号的标识码,所以可以基于获取硬盘在服务器上的图像,从而确定硬盘的标识码图像。
76.在获取待升级硬盘的标识码图像后,基于ocr文字识别对标识码图像进行识别,实现了标识码图像中待升级硬盘型号的快速获取。
77.本发明实施例提供的固件升级方法,通过在获取待升级硬盘的标识码图像后,基于ocr文字识别对标识码图像进行识别,实现了标识码图像中待升级硬盘型号的快速获取。
78.在一个实施例中,基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,进一步包括:在所述升级文件库中不包含所述硬盘型号的情况下,从所述升级文件库中确定与所述硬盘型号的字符相似度最高的目标型号,并确定所述目标型号对应的升级文件;将所述目标型号对应的升级文件,作为所述待升级硬盘的升级文件。
79.在获取待升级硬盘的硬盘型号之后,在升级文件库中进行检索,若确定升级文件库中不包含待升级硬盘的硬盘型号,可能是在基于待升级硬盘的标识码进行识别时,识别不准确导致得到的待升级硬盘的硬盘型号不准确。
80.在升级文件库中进行检索,确定升级文件库中与硬盘型号的字符相似度最高的目标型号。其中,字符相似度可以是排列顺序以及硬盘中包含相同字符的数量。
81.在升级文件库中确定与硬盘型号的字符相似度最高的目标型号,并确定目标型号对应的升级文件,将目标型号对应的升级文件,作为待升级硬盘的升级文件。在待升级硬盘的硬盘型号识别不准确的情况下,基于硬盘型号的字符相似度的方式,可以实现待升级硬盘的硬盘型号的确定过程。
82.本发明实施例提供的固件升级方法,通过在获取待升级硬盘的硬盘型号之后,在升级文件库中进行检索,若确定升级文件库中不包含待升级硬盘的硬盘型号,确定升级文件库中与硬盘型号的字符相似度最高的目标型号,将目标型号对应的升级文件,作为待升级硬盘的升级文件,实现了待升级硬盘的硬盘型号的确定过程。
83.在一个实施例中,将所述升级文件发送至所述待升级硬盘所属的目标服务器之后,还包括:获取所述待升级硬盘的升级执行结果,并将所述升级执行结果发送至所述目标服务器的前端界面,以使所述目标服务器的前端界面显示所述待升级硬盘的升级执行结果。
84.在将升级文件发送至待升级硬盘所属的目标服务器之后,目标服务器接收升级文件。目标服务器获取升级文件中的升级执行脚本、升级工具以及固件版本,并在目标服务器中执行升级执行脚本。其中,升级执行脚本中包含自动对待升级硬盘执行固件升级的操作。在目标服务器中执行升级执行脚本时,会自动基于升级工具以及固件版本,完成待升级硬盘的固件升级操作。
85.在完成待升级硬盘的固件升级操作之后,会确定待升级硬盘的升级执行结果。其中升级执行结果中可以包含升级成功、升级失败、升级失败原因等信息。在获取升级执行结果后,将升级执行结果发送至目标服务器的前端界面。
86.目标服务器的前端界面在接收升级执行结果后,对升级执行结果进行显示,以便目标服务器的运维人员能及时方便的了解到目标服务器中各硬盘的升级执行情况。
87.本发明实施例提供的固件升级方法,通过在完成待升级硬盘的固件升级操作之后,确定待升级硬盘的升级执行结果,将升级执行结果发送至目标服务器的前端界面进行显示,以便目标服务器的运维人员能及时方便的了解到目标服务器中各硬盘的升级执行情况。
88.下面以一应用本发明提供的固件升级方法的流程示意图为例,说明本发明提供的技术方案,如图2所示:
89.步骤210,通过图像采集设备的摄像头识别待升级硬盘的标识码图像,或者手动输入待升级硬盘的硬盘型号:
90.其中,对待升级硬盘的标识码图像进行识别,可以包括:在设备内置高性能摄像头,ocr图像处理芯片,通过摄像头获取待升级硬盘的标识码图像,通过处理芯片处理获取到的图像信息;
91.设备通过ocr图像处理芯片,将原始的彩色标识码图像二值化,使处理后的图像信息为黑色,背景信息为白色,并且进行噪声处理;
92.从处理后的图像中分割出每个字符,进行版面恢复,将识别后的字符按照之前的排列方式进行排列,得到待升级硬盘的硬盘型号。
93.步骤220,在获取到待升级硬盘的硬盘型号后,从升级文件库搜索出该硬盘各个版本的升级文件;
94.其中,升级文件库是预先构建的,具体构建过程为:将硬盘的固件版本、硬盘的升级执行脚本以及硬盘的升级工具添加至一个文件夹中,并进行压缩,将得到的压缩文件与对应的硬盘型号进行关联。获取海量的硬盘的相关的升级文件进行上述处理后,添加至升级文件库中,完成升级文件库的构建。
95.获取到硬盘型号后,只针对硬盘型号进行模糊搜索,这样可以搜索出同一种型号硬盘的所有固件版本对应的升级文件;
96.步骤230,基于手动选择具体需要升级的版本对应的升级文件,或者多个升级文件中确定升级使用次数最多的升级文件作为待升级硬盘的升级文件;
97.步骤240,获取升级文件之后,可以将选定的升级文件复制到待升级硬盘所属的服务器上,按照待升级硬盘的升级方法进行手动升级;
98.步骤250,若选择自动升级,则需要与服务器连接,调用升级文件中的升级执行脚本,在目标服务器的操作系统下搜索并升级待升级硬盘;
99.具体的,设备控制目标服务器,安装升级文件里带的升级工具,并按照升级工具里的方法执行相关指令列出适配该升级工具的硬盘的固件版本,如nvme的硬盘便执行nvme list指令查看当前所有nvme硬盘的固件版本。
100.升级执行脚本默认升级所有符合条件的硬盘,但升级前会让使用者确认是否升级所有符合条件的硬盘,若仅升级其中的部分硬盘,则使用者可以在此步骤选择不升级所有符合条件的硬盘,改为手动输入需要升级的硬盘的盘符,则脚本只升级相应盘符对应的硬盘,盘符可在上一步骤列出硬盘固件版本时获得;
101.确认需要升级的待升级硬盘后,升级执行脚本执行升级命令;
102.步骤260,升级完成后,在目标服务器的前端界面显示升级结果,即成功或失败。
103.下面以一应用本发明提供的固件升级方法的装置结构示意图为例,说明本发明提供的技术方案,如图3所示,该装置包括:存储模块310、信息处理模块320以及输入输出设备330。
104.存储模块310,用于升级文件库中内置各种硬盘的固件版本、升级执行脚本以及升级工具;
105.信息处理模块320,用于适配目标服务器的脚本,通过脚本进行文件的复制、硬盘固件版本的升级等功能。
106.输入输出设备330包括:微型摄影设备、微型键盘、可触摸屏幕、与目标服务器连接的usb接口等。
107.该装置的工作原理具体包括:
108.维护升级文件库,使其有所有硬盘的固件版本信息。手动输入或通过扫描待升级硬盘获取硬盘型号。获取到硬盘型号后,调用升级文件库,查找与该硬盘型号一致的升级文件,并显示在终端。
109.该装置接收使用者选择的命令,若为手动升级,则该装置会列出硬盘固件升级的升级文件以及升级方法,方便复制到目标服务器进行操作:若为自动升级,则机器会调用升级文件中的升级执行脚本执行升级操作。
110.该装置通过自身脚本,连接目标服务器,并将相关文件复制到目标服务器的root目录下。
111.目标服务器调用工具安装脚本,安装所需的升级工具。
112.该装置通过脚本检查工具是否已经安装,确认安装后,开始执行固件脚本升级操作,并将升级结果同步到终端。
113.升级结束后,该装置会调用硬盘信息检查脚本,对比是否与预期的固件版本一致,若不一致则输出升级失败结果,并在终端显示升级过程中报错情况:若与预期固件版本一致,则输出升级成功结果。
114.图4为本发明提供的固件升级装置的结构示意图,如图4所示,该装置包括识别模块410、检索模块420以及升级模块430。
115.具体的,识别模块410,用于对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号.
116.服务器中的硬盘一般有两种方式,一种是在服务器机箱内部插接,另一种是在服务器的机箱外有接口,可以在不打开服务器机箱的情况下,将硬盘插接在服务器中。在硬盘上有硬盘型号的标识码,所以可以基于获取硬盘在服务器上的图像,从而确定硬盘的标识码图像。
117.在获取待升级硬盘的标识码图像后,可以基于图像识别的方式,对待升级硬盘的标识码图像进行识别。例如,可以基于字符识别,或者ocr识别的方式,识别待升级硬盘的硬盘型号。
118.其中,待升级硬盘为目标服务器中的任意需要进行升级硬盘固件版本的硬盘,可以为目标服务器中的一个硬盘,也可以为目标服务器中的多个硬盘。
119.对于大多数的情况,一个服务器中采取多个相同的硬盘,构建服务器的存储阵列。在获取服务器中的待升级硬盘的型号信息后,可以实现对服务器中所有相同硬盘的固件升级操作。
120.检索模块420,用于基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,所述升级文件包括所述待升级硬盘的固件版本、所述待升级硬盘的升级执行脚本以及所述待升级硬盘的升级工具,所述升级文件库是预先构建的;
121.升级文件库中包含了用于硬盘升级的升级文件。升级文件中包含待升级硬盘的固件版本、待升级硬盘的升级执行脚本以及待升级硬盘的升级工具。其中待升级硬盘的固件版本是用于硬盘升级的具体版本的固件文件;待升级硬盘的升级执行脚本是当前固件版本在升级时执行的升级流程,基于升级执行脚本,可以自动执行升级流程;待升级硬盘的升级工具是待升级硬盘在升级时所依赖的工具,例如,intel ssd firmware update tool固态硬盘固件升级工具等。
122.可以理解是,在对硬盘的固件版本进行升级时,不同的硬盘的升级的固件版本,升级硬盘的升级执行脚本以及升级工具均可能不同。升级文件库是预先构建的。
123.可选的,在构建升级文件库时,可以将硬盘的固件版本、硬盘的升级执行脚本以及硬盘的升级工具添加至一个文件夹中,并进行压缩,将得到的压缩文件与对应的硬盘型号进行关联。获取海量的硬盘的相关的升级文件进行上述处理后,添加至升级文件库中,完成升级文件库的构建。
124.升级模块430,用于将所述升级文件发送至所述待升级硬盘所属的目标服务器,以使所述目标服务器执行所述升级文件中的升级执行脚本,并基于所述固件版本以及所述升级工具,执行所述待升级硬盘的固件升级操作。
125.目标服务器为待升级硬盘所属的服务器,目标服务器中可能包含一块待升级硬盘,也可能包含多块相同的待升级硬盘。在获取待升级硬盘的升级文件后,可以实现目标服务器中仅包含的一块待升级硬盘的固件升级过程,也可以实现目标服务器中包含的多块相同的待升级硬盘的升级过程。
126.在目标服务器接收升级文件后,获取升级文件中的升级执行脚本、升级工具以及固件版本,并在目标服务器中执行升级执行脚本。其中,升级执行脚本中包含自动对待升级硬盘执行固件升级的操作。在目标服务器中执行升级执行脚本时,会自动基于升级工具以
及固件版本,完成待升级硬盘的固件升级操作。
127.本发明实施例提供的固件升级装置,通过识别待升级硬盘的硬盘型号,并基于待升级硬盘的硬盘型号,从升级文件库中确定待升级硬盘的升级文件,实现了基于待升级硬盘的硬盘型号匹配待升级硬盘升级所需的全部文件。将待升级文件发送至待升级硬盘所属的目标服务器,基于目标服务器执行所述升级文件中的升级执行脚本,并基于固件版本以及所述升级工具,执行待升级硬盘的固件升级操作,实现了待升级硬盘的固件的自动升级操作,提升了硬盘的升级效率。
128.在一个实施例中,检索模块420具体用于:
129.基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,包括:
130.在所述升级文件库中包含所述硬盘型号对应的多个升级文件的情况下,确定所述多个升级文件中升级使用次数最多的目标升级文件;
131.将所述目标升级文件作为所述待升级硬盘的升级文件。
132.在一个实施例中,升级模块430具体用于:
133.对所述目标服务器的硬盘区域进行识别,确定所述目标服务器的多个硬盘的硬盘型号;
134.基于所述多个硬盘的硬盘型号,从所述升级文件库中确定所述多个硬盘对应的多个升级文件,并基于所述多个升级文件,执行所述目标服务器的硬盘固件升级操作。
135.在一个实施例中,检索模块420还具体用于:
136.预先构建所述升级文件库包括:
137.将硬盘的固件版本、硬盘的升级执行脚本以及硬盘的升级工具进行打包压缩,得到压缩文件;
138.将硬盘的型号与所述压缩文件进行关联,构建所述升级文件库。
139.在一个实施例中,识别模块410具体用于:
140.对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号,包括:
141.获取待升级硬盘的标识码图像;
142.基于光学字符识别ocr对所述标识码图像进行识别,确定所述待升级硬盘的硬盘型号。
143.在一个实施例中,检索模块420还具体用于:
144.基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,进一步包括:
145.在所述升级文件库中不包含所述硬盘型号的情况下,从所述升级文件库中确定与所述硬盘型号的字符相似度最高的目标型号,并确定所述目标型号对应的升级文件;
146.将所述目标型号对应的升级文件,作为所述待升级硬盘的升级文件。
147.在一个实施例中,升级模块430还具体用于:
148.将所述升级文件发送至所述待升级硬盘所属的目标服务器之后,还包括:
149.获取所述待升级硬盘的升级执行结果,并将所述升级执行结果发送至所述目标服务器的前端界面,以使所述目标服务器的前端界面显示所述待升级硬盘的升级执行结果。
150.图5示例了一种电子设备的实体结构示意图,如图5所示,该电子设备可以包括:处理器(processor)510、通信接口(communications interface)520、存储器(memory)530和
通信总线540,其中,处理器510,通信接口520,存储器530通过通信总线540完成相互间的通信。处理器510可以调用存储器530中的逻辑指令,以执行固件升级方法,该方法包括:
151.对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号;
152.基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,所述升级文件包括所述待升级硬盘的固件版本、所述待升级硬盘的升级执行脚本以及所述待升级硬盘的升级工具,所述升级文件库是预先构建的;
153.将所述升级文件发送至所述待升级硬盘所属的目标服务器,以使所述目标服务器执行所述升级文件中的升级执行脚本,并基于所述固件版本以及所述升级工具,执行所述待升级硬盘的固件升级操作。
154.此外,上述的存储器530中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、磁碟或者光盘等各种可以存储程序代码的介质。
155.另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法所提供的固件升级方法,该方法包括:
156.对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号;
157.基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,所述升级文件包括所述待升级硬盘的固件版本、所述待升级硬盘的升级执行脚本以及所述待升级硬盘的升级工具,所述升级文件库是预先构建的;
158.将所述升级文件发送至所述待升级硬盘所属的目标服务器,以使所述目标服务器执行所述升级文件中的升级执行脚本,并基于所述固件版本以及所述升级工具,执行所述待升级硬盘的固件升级操作。
159.又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各提供的固件升级方法,该方法包括:
160.对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号;
161.基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,所述升级文件包括所述待升级硬盘的固件版本、所述待升级硬盘的升级执行脚本以及所述待升级硬盘的升级工具,所述升级文件库是预先构建的;
162.将所述升级文件发送至所述待升级硬盘所属的目标服务器,以使所述目标服务器执行所述升级文件中的升级执行脚本,并基于所述固件版本以及所述升级工具,执行所述待升级硬盘的固件升级操作。
163.以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其
中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
164.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
165.最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。
技术特征:
1.一种固件升级方法,其特征在于,所述方法包括:对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号;基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,所述升级文件包括所述待升级硬盘的固件版本、所述待升级硬盘的升级执行脚本以及所述待升级硬盘的升级工具,所述升级文件库是预先构建的;将所述升级文件发送至所述待升级硬盘所属的目标服务器,以使所述目标服务器执行所述升级文件中的升级执行脚本,并基于所述固件版本以及所述升级工具,执行所述待升级硬盘的固件升级操作。2.根据权利要求1所述的固件升级方法,其特征在于,所述基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,包括:在所述升级文件库中包含所述硬盘型号对应的多个升级文件的情况下,确定所述多个升级文件中升级使用次数最多的目标升级文件;将所述目标升级文件作为所述待升级硬盘的升级文件。3.根据权利要求1所述的固件升级方法,其特征在于,还包括:对所述目标服务器的硬盘区域进行识别,确定所述目标服务器的多个硬盘的硬盘型号;基于所述多个硬盘的硬盘型号,从所述升级文件库中确定所述多个硬盘对应的多个升级文件,并基于所述多个升级文件,执行所述目标服务器的硬盘固件升级操作。4.根据权利要求1所述的固件升级方法,其特征在于,预先构建所述升级文件库包括:将硬盘的固件版本、硬盘的升级执行脚本以及硬盘的升级工具进行打包压缩,得到压缩文件;将硬盘的型号与所述压缩文件进行关联,构建所述升级文件库。5.根据权利要求1所述的固件升级方法,其特征在于,所述对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号,包括:获取待升级硬盘的标识码图像;基于光学字符识别ocr对所述标识码图像进行识别,确定所述待升级硬盘的硬盘型号。6.根据权利要求1所述的固件升级方法,其特征在于,所述基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,进一步包括:在所述升级文件库中不包含所述硬盘型号的情况下,从所述升级文件库中确定与所述硬盘型号的字符相似度最高的目标型号,并确定所述目标型号对应的升级文件;将所述目标型号对应的升级文件,作为所述待升级硬盘的升级文件。7.根据权利要求1所述的固件升级方法,其特征在于,所述将所述升级文件发送至所述待升级硬盘所属的目标服务器之后,还包括:获取所述待升级硬盘的升级执行结果,并将所述升级执行结果发送至所述目标服务器的前端界面,以使所述目标服务器的前端界面显示所述待升级硬盘的升级执行结果。8.一种固件升级装置,其特征在于,包括:识别模块,用于对待升级硬盘的标识码图像进行识别,确定所述待升级硬盘的硬盘型号;检索模块,用于基于所述硬盘型号,从升级文件库中确定所述待升级硬盘的升级文件,
所述升级文件包括所述待升级硬盘的固件版本、所述待升级硬盘的升级执行脚本以及所述待升级硬盘的升级工具,所述升级文件库是预先构建的;升级模块,用于将所述升级文件发送至所述待升级硬盘所属的目标服务器,以使所述目标服务器执行所述升级文件中的升级执行脚本,并基于所述固件版本以及所述升级工具,执行所述待升级硬盘的固件升级操作。9.一种电子设备,包括存储器、处理器以及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述固件升级方法。10.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述固件升级方法。
技术总结
本发明提供一种固件升级方法及装置,其中方法包括:对待升级硬盘的标识码图像进行识别,确定待升级硬盘的硬盘型号;基于硬盘型号,从升级文件库中确定待升级硬盘的升级文件;将升级文件发送至待升级硬盘所属的目标服务器,以使目标服务器执行升级文件中的升级执行脚本,并基于固件版本以及升级工具,执行待升级硬盘的固件升级操作。本发明提供的固件升级方法及装置,通过识别待升级硬盘的硬盘型号,从升级文件库中确定待升级硬盘的升级文件并发送至待升级硬盘所属的目标服务器,基于目标服务器执行所述升级文件中的升级执行脚本,并基于固件版本以及所述升级工具,实现了待升级硬盘的固件的自动升级操作,提升了硬盘的升级效率。率。率。
技术研发人员:翟宇飞
受保护的技术使用者:苏州浪潮智能科技有限公司
技术研发日:2023.05.19
技术公布日:2023/8/24
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:自动化检查系统的制作方法 下一篇:基于椭圆检测框的圆形路牌数据生成方法及装置与流程