一种使用BMC更新固件的方法与流程

文档序号:11458504阅读:2036来源:国知局

本发明涉及服务器管理技术领域,具体地说是一种使用bmc更新固件的方法。



背景技术:

bmc,执行伺服器远端管理控制器,英文全称为baseboardmanagementcontroller.为基板管理控制器。它可以在机器未开机的状态下,对机器进行固件升级、查看机器设备、等一些操作。

bmc更新固件的方式有多种,通过网络更新、通过烧写器更新等。在某些情况下(如在网络更新过程中擦除flash时不小心断电,将导致更新中断,原系统无法重启)需要烧录器更新固件,若此时无烧录器或者烧录座,将给更新工作带来不便。

基于此,本发明提供一种使用bmc更新固件的方法。



技术实现要素:

本发明的技术任务是针对以上不足之处,提供一种使用bmc更新固件的方法。

一种使用bmc更新固件的方法,其实现过程为:在服务器中,通过网络更新,使bmc成为烧录器,更新与bmc相同型号flash的固件,所述bmc使用spiflash方式启动,且spiflash使用芯片座固定在pcb板上。

其详细过程为:

首先在芯片座上安装flasha,基于该flasha,服务器系统启动后将bmc配置成烧录器模式;

取出flasha芯片,换入要烧写的同等型号固件的flashb芯片;

bmc开始更新固件,开始对flashb芯片进行烧写;

更新完毕后,换回flasha芯片,上传的固件烧写到flashb芯片中。

所述bmc配置成烧录器模式的过程为:

首先将bmc固件烧入到flasha中,待系统启动后,进入web管理页面;

在web管理页面中选择烧录器模式,进入固件更新阶段;

web页面发送准备更新命令给bmc,bmc收到命令后执行,执行完毕后将执行状态返回给web页面;

web页面获取所述状态后,若执行成功则弹出上传固件对话框,此时bmc成功配置成烧录器模式;若执行失败则系统重启。

所述服务器安装linux系统,相对应的,web页面发送准备更新命令给bmc时,该准备更新命令包括:关闭所有客户端请求、kill固件更新无关的进程、rmmod所有模块,unmount固件更新无关的文件系统,挂载/dev/shm设备到/mnt目录并格式化为tmpfs文件系统。

bmc烧写的同等型号固件到flashb芯片的过程为:

首先选择要烧写的固件,并将选择的信息上传到web页面中,web页面发送验证固件命令给bmc;

bmc收到验证命令,读取上传固件大小,开始更新固件;

web页面定时读取bmc更新进度,并在web上显示更新进度;

更新完毕后取出bmc芯片座中的flashb芯片,再换入flasha芯片,上传的固件即烧到flashb中,重启bmc,即完成更新工作。

bmc更新固件时,根据上传固件的大小,来擦除flash大小。

web页面与bmc更新进程采用http/https协议,通过进程间通信进行信息交互。

本发明的一种使用bmc更新固件的方法和现有技术相比,具有以下有益效果:

本发明的一种使用bmc更新固件的方法,可不借助第三方工具,使bmc本身成为烧录器(只烧写同种型号的flash),从而进行固件更新,实用性强,固件更新成本较低,易于实现,适用范围广泛,具有很好的推广应用价值。

附图说明

附图1为本发明方法的实现流程图。

具体实施方式

下面结合附图及具体实施例对本发明作进一步说明。

如附图1所示,一种使用bmc更新固件的方法,该方法采用http/https协议通过网络更新,使bmc成为烧录器,可以更新与bmc相型号flash的固件。

其实现过程为:在服务器中,通过网络更新,使bmc成为烧录器,更新与bmc相同型号flash的固件,所述bmc使用spiflash方式启动,且spiflash使用芯片座固定在pcb板上。

方案的前提是bmc使用spiflash方式启动,且spiflash使用芯片座,不是直接焊接在pcb板上。更新flash步骤如下:

将具有所述功能的bmc固件烧入flasha中,待系统启动后,进入web进入管理页面;

在固件更新页面中选择烧录器模式,进入固件更新阶段;

web页面发送准备更新命令给bmc,bmc收到命令后执行,执行完毕后将执行状态返回给web;

所述服务器安装linux系统,相对应的,web页面发送准备更新命令给bmc。bmc执行准备更新命令。主要的操作包括:关闭所有客户端请求,kill固件更新无关的进程,rmmod所有模块,unmount固件更新无关的文件系统,挂载/dev/shm设备到/mnt目录并格式化为tmpfs文件系统等;

web获取所述状态后,若执行成功则弹出上传固件对话框;若执行失败则系统重启;

取出bmc芯片座中的flasha芯片,换入要烧写的同等型号的flashb芯片;

在上述上传固件对话框中,选择要烧写的固件,上传完毕后,web发送验证固件命令给bmc;

bmc收到验证命令,读取上传固件大小,开始更新固件;

web定时读取bmc更新进度,并在web上显示更新进度;

更新完毕后取出bmc芯片座中的flashb芯片,再换入flasha芯片,上传的固件即烧到flashb中,重启bmc,完成更新操作,上传的固件即烧到flashb中,即完成更新工作;

bmc更新固件时,根据上传固件的大小,来擦除flash大小,从而节省了时间。

web与bmc更新进程通过进程间通信进行信息交互。

通过上面具体实施方式,所述技术领域的技术人员可容易的实现本发明。但是应当理解,本发明并不限于上述的具体实施方式。在公开的实施方式的基础上,所述技术领域的技术人员可任意组合不同的技术特征,从而实现不同的技术方案。

除说明书所述的技术特征外,均为本专业技术人员的已知技术。



技术特征:

技术总结
本发明公开了一种使用BMC更新固件的方法,其实现过程为:在服务器中,通过网络更新,使BMC成为烧录器,更新与BMC相同型号Flash的固件,所述BMC使用SPI Flash方式启动,且SPI Flash使用芯片座固定在PCB板上。本发明的一种使用BMC更新固件的方法与现有技术相比,可不借助第三方工具,使BMC本身成为烧录器(只烧写同种型号的Flash),从而进行固件更新,实用性强,固件更新成本较低,易于实现,适用范围广泛,具有很好的推广应用价值。

技术研发人员:王万强;金长新;刘强
受保护的技术使用者:济南浪潮高新科技投资发展有限公司
技术研发日:2017.04.19
技术公布日:2017.08.25
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1