如何在沒有 Smart Array 控制器或 Proliant 伺服器的情況下升級 HP SAS 擴展卡的韌體?
如何更新/升級/刷新 HP SAS 擴展卡 [468406-B21 aka [487738-001]](http://h20566.www2.hp.com/portal/site/hpsc/template.PAGE/public/kb/docDisplay?javax.portlet.begCacheTok=com.vignette.cachetoken&javax.portlet.endCacheTok=com.vignette.cachetoken&javax.portlet.prp_ba847bafb2a2d782fcbb0710b053ce01=wsrp-navigationalState%3DdocId%253Demr_na-c01733557-4%257CdocLocale%253D%257CcalledBy%253D&javax.portlet.tpst=ba847bafb2a2d782fcbb0710b053ce01&ac.admitted=1412070310829.876444892.199480143)的韌體?
我曾經使用 Windows 和 HP P410 Smart Array 控制器來執行此操作,但是該控制器不再可用。
線上 ROM 快閃記憶體組件不是一個選項,因為我沒有 HP Smart Array 控制器。HP Service Pack for ProLiant + USB key/stick也不是一個選項,因為它需要 ProLiant 伺服器。
可以使用 Linux 和 SAS HBA升級 HP SAS 擴展器。注意:當擴展器連接到 SAS RAID
控制器時,將韌體刷寫到 SAS 擴展器可能不起作用,因為該控制器可能會將其後面的所有設備對作業系統隱藏。SAS HBA 的一個範例是Supermicro SAS2LP-MV8。
如果您沒有 Linux,可以使用 Linux Live CD。您可以嘗試最新的 Ubuntu Live CD。32 位下載就可以了。64 位也可以。
1.先決條件
- 使用 Ubuntu LiveCD啟動一個 Linux 終端
即
Ctrl
++ 。Alt``T
2. 確保您的網際網路連接正常下載並安裝其他組件 3. 確保在 Linux 中檢測到您的 SAS 擴展卡
# 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.設置實用程序
sg_write_buffer
當擴展器連接到主機匯流排適配器 (HBA) 時,您使用≥ 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 可執行腳本(至少是第一個部分)。 2. 執行 64 位 Linux 並遇到下一個命令的問題?然後確保您可以執行 32 位執行檔。Ubuntu中的命令是:
# dpkg --add-architecture i386 && apt-get update && apt-get install libstdc++6:i386
3. 要從此 .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
)和載入(femodprobe mvsas
)您的 HBA 模組,或者reboot
在lsscsi -g
輸出中反映韌體版本的更改。