经过一段时间的使用以后,NAS 的情况基本的稳定,同时将系统迁移到了 FreeBSD(主要是为了使用 ZFS)。不得不说,FreeBSD 下对于硬件阵列卡的支持是非常棒的,例如 PowerEdge H700 就有原生工具 mfiutil 支持再也可以不用那逆天的 MegaCli 命令行了

Screen Shots

偶然看到 PowerEdge H700 的固件持续更新到了 2015 年,而我查看了下目前的固件版本是 2012 年的。更新的固件主要修复了很多问题,应该说是比较稳定的了,于是考虑升级下(反正闲着也是闲着)。

看了下 mfiutil 的文档是支持 flash 固件的,但是官方提供的 BIN 包是针对 Linux 的。查找了下解决方案,发现有个类似的可以参考。主要步骤是先解压缩官方 BIN 包:

[root@centos ~]# ./SAS-RAID_Firmware_9FVJ2_LN_12.10.7-0001_A13.BIN --extract /tmp/
[root@centos ~]# ll /tmp/payload/FW4651I.rom

然后提取到 .rom 这个文件,例如,我这边的 ROM 文件名是 FW4651A.rom 。然后将这个文件扔到 FreeBSD 下,用 root 身份进行更新:

mfiutil flash FW4651A.rom

更新的过程比较顺利,内核会有相应的硬件更新提示信息,建议在执行完毕以后 reboot 下机器。

Screen Shots

然后,再次查看固件版本,就可以发现已经升级到最新了。最后,提供下这个版本的 ROM 文件(谨慎使用)

- eof -