通过 Windows PE 镜像更新 Mellanox CX5 网卡固件

前言

在某宝上流出了一批浪潮拆机的MCX542B网卡,但因为使用了定制固件(PSID:BAI0000000010)且只能工作在较低版本的内核上,受限于机房网络架构,系统环境无法联网,且缺少必要软件包,需要通过Windows PE更新固件进行解决。
image.png

准备工作

  • Windows PE ISO镜像 (本文使用 EasyU)
  • WinMFT 工具包
  • 网卡固件

方案步骤

通过 BMC 挂载PE镜像并启动

考虑到 BMC 挂载速度比较感人,可以在进入系统桌面后立即 Disconnect Virtual Media ,无需加载剩余第三方软件。

将 WinMFT 工具以及最新版本固件,通过打包成iso后挂载

WinMFT 工具下载地址: https://network.nvidia.com/products/adapter-software/firmware-tools/
image.png
固件下载地址: https://network.nvidia.com/support/firmware/connectx5en/
image.png

安装 WinMFT 工具

image.png
安装过程直接一路下一步,无需勾选其他内容

获取网卡设备ID信息

执行命令 mst status -v
若设备ID正确,则可以通过命令 flint.bat -d <设备Id> q 获取到设备信息
image.png

刷写固件

执行命令 flint.bat -d <设备ID> -i <固件地址> --allow_psid_change b。网卡固件是定制版固件,PSID不同,因此需要添加 –allow_psid_change 参数才可正常刷写
若为正常版本网卡,建议在刷写前比对PSID,不推荐直接进行强行刷入

等待刷写完毕后,重启服务器

image.png

总结

(捡垃圾)来的硬件务必在本地进行测试再部署到生产环境,以避免不必要的麻烦(感受高达1Mbps的BMC ISO挂载速度)