Назад | Перейти на главную страницу

Как обновить прошивку карты расширения HP SAS без контроллера Smart Array или сервера Proliant?

Как я могу обновить / обновить / прошить микропрограмму карты расширения HP SAS [468406-B21 a.k.a. 487738-001]?

Раньше я делал это с помощью Windows и контроллера HP P410 Smart Array, однако этот контроллер больше не доступен.

Компонент оперативной памяти ПЗУ не подходит, потому что у меня нет контроллера HP Smart Array. Ни Пакет обновления HP для ProLiant + USB-накопитель / флешка - вариант, потому что для этого требуется сервер ProLiant.

Обновление расширителя HP SAS возможно с использованием Linux и SAS HBA.
Примечание: прошивка прошивки на расширитель SAS, скорее всего, не будет работать, если расширитель подключен к SAS. RAID контроллер, потому что этот контроллер может скрыть от ОС все устройства, находящиеся за ним. Примером SAS HBA является Supermicro SAS2LP-MV8.

Если у вас нет Linux, вы можете использовать Linux Live CD. Вы можете попробовать самый последний Ubuntu Live CD. А 32-битный скачать сделаю. 64-битная версия тоже будет работать.

1. Предпосылки

  1. Запустите терминал Linux
    То есть Ctrl+Alt+Т с помощью Ubuntu LiveCD.

  2. Убедитесь, что ваше интернет-соединение работает
    Для загрузки и установки дополнительных компонентов

  3. Убедитесь, что ваша карта расширения 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. Утилита настройки

Ты используешь sg_write_buffer версия ≥ 1.15 для загрузки микрокода, когда расширитель подключен к адаптеру главной шины (HBA). Чтобы загрузить и установить эту утилиту в 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.

  1. Получите файл образа прошивки расширителя, например версия 2.10 (C) - от 9 сентября 2014 г.:
    # 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. Расширитель Flash 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) и нагрузки (например, modprobe mvsas) ваш модуль HBA снова или reboot для отражения изменений версии прошивки в lsscsi -g вывод.