如何更新/升级/刷新 HP SAS 扩展卡 [468406-B21又名 487738-001]?
我曾经使用 Windows 和 HP P410 Smart Array 控制器执行此操作,但该控制器不再可用。
在线 ROM 闪存组件不是一个选项,因为我没有 HP Smart Array 控制器。惠普 ProLiant 服务包+ USB 密钥/棒选项,因为它需要 ProLiant 服务器。
答案1
可以使用 Linux 和 SAS 升级 HP SAS 扩展器羟丙基甲基纤维素.
注意:当扩展器连接到 SAS 时,将固件刷入 SAS 扩展器可能不起作用袭击控制器,因为该控制器可能会向操作系统隐藏其后面的所有设备。SAS HBA 的一个示例是Supermicro SAS2LP-MV8。
如果你没有 Linux,你可以使用 Linux Live CD。你可以尝试最新的 Ubuntu Live CD。 A32 位下载即可。64 位也可以。
1. 先决条件
启动 Linux 终端
即Ctrl+ Alt+T使用 Ubuntu LiveCD。确保您的互联网连接正常,
以便下载并安装其他组件确保你的 SAS 扩展卡在 Linux 中被检测到
# lsscsi -g | grep HP
应该返回类似这样的内容:
[6:0:0:0] enclosu HP HP SAS EXP Card 2.08 - /dev/sg1
[6:0:1:0] enclosu HP HP SAS EXP Card 2.10 - /dev/sg2
2. 设置实用程序
当扩展器连接到主机总线适配器 (HBA) 时,可以使用sg_write_buffer
版本 ≥ 1.15 下载微码。要在 32 位 Ubuntu 或 Debian 中下载并安装此实用程序,请使用:
# curl -O http://sg.danny.cz/sg/p/libsgutils2-2_1.39-0.1_i386.deb &&
curl -O http://sg.danny.cz/sg/p/sg3-utils_1.39-0.1_i386.deb &&
dpkg -i *_1.39-0.1_i386.deb
实用sg_write_buffer
程序版本≥1.15 — 分布于sg3_utils
版本≥1.39 — 添加了--bpw
以小块下载的选项。扩展器可能需要较小的块大小,例如 4096 字节。
3. 获取并解压 HP 固件映像
获取扩展器固件镜像文件,例如版本 2.10 (C) — 日期:2014 年 9 月 9 日:
# curl -O http://downloads.hpe.com/pub/softlib2/software1/sc-linux-fw-array/p6670438/v96061/CP022989.scexe
尽管它们听起来像 Windows/DOS 可执行文件,但.scexe
HP 的文件实际上是 Linux 可执行脚本,您可以在文本编辑器中查看它们(至少是第一部分)。运行 64 位 Linux 并且下一个命令有问题?那么请确保您可以运行 32 位可执行文件。Ubuntu 中的命令是:
# dpkg --add-architecture i386 && apt-get update && apt-get install libstdc++6:i386
要从此.scexe 文件提取固件映像:
# mkdir tmp && chmod +x CP022989.scexe && ./CP022989.scexe --unpack=tmp && mv tmp/PUF21000.bin . && rm -r tmp/
4.闪存 SAS 扩展器
当要升级/刷新的扩展器被命名sg1
(使用 检查lsscsi -g | grep HP
)时,使用:
# sg_write_buffer --mode=dmc_offs_defer --bpw=4096 --in=PUF21000.bin /dev/sg1
# sg_write_buffer --mode=activate_mc /dev/sg1
较旧的设备可能仅支持--mode=0x7
。模式0x7
也称为dmc_offs_save
,它会下载带有偏移量的微码、保存并激活。
5.删除临时文件
# rm PUF21000.bin
您可能需要卸载(例如modprobe -r mvsas
)并再次加载(fe modprobe mvsas
)您的 HBA 模块或者在输出reboot
中反映固件版本的变化。lsscsi -g