事情的起因是发现新上机的LSI 3008 SAS 9300-8i 12G(浪潮版)卡在TrueNas Core上出现了一些水土不服的现象,包括卡在开机阶段长达几分钟才能进入系统,或者干脆直接报firmware fault code 2667h
等问题,但在进入TrueNas系统后工作完全正常,让人百思不得其解。
在长达N久的google之后定位了问题,大概是卡上的bios boot问题,在启动的时候会先跑sas卡的bios导致长时间卡住或者直接报错,网上也有解决办法,那就是直接清掉除IT固件之外的ROM, 卡上一共有三个刷写区 IT(IR)固件区还有boot板卡的两个rom Legacy BIOS和UEFI,我们的目的就是让卡上只有IT固件,boot区完全清除。
一切刷写固件的行为都可能导致无法挽回的后果,回车前请考虑清楚,本人不承任何责任
准备工作
1.U盘一个
格式化成FAT32格式,下载UEFI Shell,放到/efi/boot/
目录下改名为Bootx64.efi
。部分主板本身就带UEFI Shell,那么这步就不需要了,直接开机进主板的UEFI Shell就行。
3.刷写工具
sas3flash.efi 该工具有两个版本,P16版本为正常版本,某些厂商锁死固件只能用P5版本刷。如果P16无法刷入尝试使用P5版本
5.固件
因为我们只需要刷写IT固件不需要那些拖累启动的BOOT ROM 所以只准备it固件就可以了
博通下载链接:
把文件全放U盘根目录里开机启动,进入UEFI Shell,输入 fs0:
进入U盘目录,输入 p16sas3flash.efi -list
列出板卡信息 p16sas3flash.efi
p5sas3flash.efi
是刷写工具,先用p16不行再用p5 (p16 p5 文件名前缀为我自行添加以便区分)
1 | p16sas3flash.efi -list |
p16sas3flash.efi -list
如果可以像刚才一样正常打印出信息,那么就大功告成了。重启PVE TrueNas Core 毫无延迟的启动了
参考文章