由于在咸鱼上买了一块H700,收到后兴冲冲的插入服务器的PCIe插槽准备替换旧的6/i阵列卡,结果启动服务器时却报错

Invalid PCIe card found in Internal Storage slot.
System halted

将RAID卡插入到其他PCIe插槽就没事,但是如果插入RAID卡专用插槽就会报错不给开机。本来换个插槽就能解决的事情但是无奈于SAS线和电池线不够长,没办法接入到插在普通PCIe插槽上的RAID卡中以及自己轻微的强迫症,想着RAID卡就要插在RAID插槽中,于是打算看看能不能把买的PERC H700 Adapter刷成PERC H700 Integrated,毕竟版型和电路基本相同,固件的最新版本也是一样的,所以应该可以通刷

查询了一堆资料和踩了一堆坑以后,终于成功把PERC H700 Adapter刷成ERC H700 Integrated

warning 免责声明
本人不对本文对您造成的任何损失负责,如果您的RAID卡因为您的误操作、本文时效过期、本文表述错误等原因变砖无法正常使用,请自行承担责任。使用本文教程进行操作代表您同意本免责声明。如果不同意请不要使用本文教程对您的RAID卡进行任何操作并立即关闭本文页面

下载资源

RAID卡固件:https://share.unknown-o.com/raid-controller/firmware/dell-h700i(下载此链接中所有文件)
LSI DOS:https://share.unknown-o.com/software/dos/lsi/lsi_dos.zip
RUFUS:https://share.unknown-o.com/software/windows/rufus(用于制作FREEDOS启动盘)

创建FREEDOS启动盘

使用下载的RUFUS,在U盘中创建FREEDOS启动盘

将LSI DOS放入FREEDOS启动盘中,并将下载的H700固件放入LSI DOS文件夹中

备份并擦除旧固件数据

非DELL服务器的普通PC上启动刚才制作的FREEDOS启动盘,使用cd命令进入LSIDOS目录,输入以下命令查看RAID控制器是否正确的连接到当前PC中和获取RAID卡在当前设备的ID

1
Megarec -adplist 

出现下列返回表示连接正常,MR Card后面的值为RAID在当前设备的ID,每条命令需指定此ID,本文下文全部使用0来表示设备ID。建议您只在此设备中连接一块RAID卡,否则可能导致误操作

输入以下命令备份旧固件的SBR和SPD以防不时之需

1
2
Megarec -readsbr 0 backup.sbr
Megarec -readspd 0 backup.spd

备份完成后,输入一下命令清空FLASH并三键(CTRL+ALT+DELETE)重启。(注:清空此卡FLASH后,重启不会导致此卡不被megarec工具识别,可以放心重启

1
Megarec -cleanflash 0

刷入新的固件

重启后,重新进入FREEDOS,然后进入LSIDOS目录

输入以下命令刷入新的固件、SBR、SPD

1
2
3
Megarec -m0flash 0 fw4651i.rom
Megarec -writesbr 0 h700i.sbr
Megarec -writespd 0 h700i.spd

SBR、SPD文件的压缩包BASE64,将下面内容复制到浏览器,可直接下载此压缩包

1
data:application/zip;base64,UEsDBBQAAAAIABKKi0RvW1ogPQAAAAABAAAJAAAAaDcwMGkuc2JyrYyhDQAgDASfhAHqkFgEgrAIM3QMxmAWdmACVmmCBIUkiJ46cTmWzJJKXxgNVAFYE8j5I3/Ea1Pz9ahU2VBLAwQKAAAAAAD4iYtEXODWg0AAAABAAAAACQAAAGg3MDBpLnNwZIAICA0KoEgABSVAAoIQEAAMCHACEAQDMEU9UDwoPC2AFyUFEjweHgAGPH+AFB4PAAAAAAAAAAAAAAAAAAAAEuhQSwECPwAUAAAACAASiotEb1taID0AAAAAAQAACQAkAAAAAAAAACAAAAAAAAAAaDcwMGkuc2JyCgAgAAAAAAABABgAAPLSvGZVzwFGTD/7BIDYAXclP/sEgNgBUEsBAj8ACgAAAAAA+ImLRFzg1oNAAAAAQAAAAAkAJAAAAAAAAAAgAAAAZAAAAGg3MDBpLnNwZAoAIAAAAAAAAQAYAAC6NqBmVc8BjTs++wSA2AGYFD77BIDYAVBLBQYAAAAAAgACALYAAADLAAAAAAA=

刷入固件

刷入SBR和SPD

修改PCI信息

由于新版固件好像会检测PCI DEVICEID,重启后会直接覆盖刚才刷入的SBR文件。所以我们需要修改PCI DEVICEID防止固件又把自己刷成了PERC H700 Adapter

上一步操作完成后,再次重启一遍,修改PCI DEVICEID(为什么需要再次重启而不是直接刷入,因为在此时刷入好像会直接卡死,重启后刷入就不会卡死了。当然这可能是程序的bug,也许不重启刷入也是可以的,但是我不重启会卡死,反正重启也浪费不了多少时间,干脆把教程写成需要重启吧~)

修改PCI信息时直接卡死

输入以下命令修改PCI信息

1
MegaSCU -AdpFactorySettings -SetPCIData -f pci.ini -a0

PCI.INI内容:

1
2
3
4
5
6
[GEN2_INI_FILE]
[PCIDATA]
VENDORID=1000
DEVICEID=0079
SUBVENDORID=1028
SUBDEVICEID=1F17

完成后就刷入成功了

完成!

刷入完成后,将此卡插入服务器的存储专用PCIE插槽,再次启动查看是否出现**Invalid PCIe card found in Internal Storage slot.**错误。

如果多次重启都没有出现错误,那么恭喜你,成功啦!

参考资料

本人遇到的问题:如何使用LSI工具刷入H700i的固件
参考的网页:Re-flash PERC H700 Firmware from Adapter to Integrated Adapter?

本人遇到的问题:刷入H700i的SBR后重启又被覆盖为H700a的原因
参考的网页:Changing the PCI IDs on LSI 2008/2108-based MegaRAID controllers


广告
广告正在加载中...
暂不开放评论,如对本文有任何疑问,请联系i#mr-wu.top(#替换为@)