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

Какое приложение в обновлении микропрограммы Dell действительно записывает микропрограмму на диск?

У меня есть сервер Dell PowerEdge R710, оснащенный дисками Hitachi HUS156045VLS600 450Gb SAS.

К сожалению, на дисках установлена ​​прошивка NetApp NA02. Я хочу применить Dell E770 микропрограммное обеспечение, чтобы диски работали лучше с контроллером MegaRAID / PERC H700 / PERC 6i и остальной частью системы Dell.

Пакет загрузки Dell linux / rpm SAS-Drive_Firmware_YC07T_LN_E770_A00.BIN представляет собой комбинированный сценарий оболочки и двоичный архив. Запуск опции --extract создает каталог со всеми файлами. Сценарий очень сложный и плотный (и я не умею его расшифровывать).

Я хотел бы инициировать загрузку прошивки вручную, так как сценарий не прошел обязательную проверку, вероятно, предыдущая версия прошивки не соответствует, что и следовало ожидать, поскольку это NetApp для Dell.

Какое приложение на самом деле доставляет микропрограмму на диски или выполняет вызов HAPI?

Какую командную строку мне следует запустить в извлеченном каталоге, чтобы отправить E770.fwh на диски?

Доступна ли у вас также ОС Windows для обновления прошивки? Я только взглянул на инструмент обновления Windows для другой системы Dell, но механизм обновления кажется одинаковым для всех дисков Hitachi / Toshiba / Seagate. Может стоит попробовать заменить id оборудования 20578 для HUS156045VLS600 с идентификатором оборудования вашего текущего диска в E770.fwh и запустить SASDUPIE.exe обновить инструмент вручную.

Hexdump первых 256 байт двоичного файла прошивки payload/E770.fwh

ibm@x250:/mnt/c/Users/ibm/AppData/Local/Temp/cb868bcd-1f9f-476a-a137-6bf2ea998e23$ xxd -l 256 payload/E770.fwh
00000000: 2020 2020 2020 2020 0945 3737 3020 2020          .E770
00000010: 2078 0100 0000 0000 0000 0000 0000 0000   x..............
00000020: 0000 0000 0000 0000 0000 0000 0000 0000  ................
00000030: 0000 0000 0000 0000 0000 0000 0000 0003  ................
00000040: 2020 2032 3035 3737 2020 2020 2020 2020     20577
00000050: 2020 2020 2020 2020 2020 2020 2020 2020
00000060: 2048 5553 3135 3630 3330 564c 5336 3030   HUS156030VLS600
00000070: 2020 2032 3035 3738 2020 2020 2020 2020     20578
00000080: 2020 2020 2020 2020 2020 2020 2020 2020
00000090: 2048 5553 3135 3630 3435 564c 5336 3030   HUS156045VLS600
000000a0: 2020 2032 3035 3739 2020 2020 2020 2020     20579
000000b0: 2020 2020 2020 2020 2020 2020 2020 2020
000000c0: 2048 5553 3135 3630 3630 564c 5336 3030   HUS156060VLS600
000000d0: 0e80 0000 0000 0000 0000 0000 0000 0000  ................
000000e0: 0000 0000 0000 0000 0000 0000 0000 0000  ................
000000f0: 4869 7461 6368 6920 476c 6f62 616c 2053  Hitachi Global S

Смотрите мой ответ в Использование несертифицированных жестких дисков в массиве хранения Dell MD3220.

Я рекомендую продавать эти диски на ebay (возможно, указать, какая прошивка на них установлена, кто-то может это искать) и покупать новые на eBay с необходимой прошивкой. Причина сбоя программы обновления заключается в том, что существует множество вариантов накопителей, и, хотя номер модели совпадает, нет гарантии, что диски NetApp идентичны дискам Dell, поскольку оба являются индивидуальными дисками сами по себе.

Поскольку у меня нет доступа к подобному оборудованию, все мои выводы являются мнениями и НЕ должны рассматриваться как рабочие инструкции. Изменение прошивки аппаратных устройств ВСЕГДА связано с риском поломки оборудования.

Пакет Linux содержит следующие файлы, которые, скорее всего, актуальны, комментарии отмечены #:

├── framework64
│   ├── duppmdatacollector.bin
│   ├── getSystemId
│   ├── hapi
│   │   ├── funcs
│   │   │   ├── instsvc-uninstall.sh
│   │   │   ├── srvadmin-hapi.sh
│   │   │   └── srvadmin-omilcore.sh
│   │   └── hapi64.tgz
│   └── sputility.bin
├── l64
# sasdupie seems to be the flasher executable, tries to run dupdisneyinstall.sh
# which seems to install hapi64.tgz, but didn't try to run that with sufficient priviledges.
│   ├── sasdupie
# RPM contains some LSI libraries, which will be installed in /opt/lsi/
# these files are NOT the same as in the directory
│   └── srvadmin-storelib-sysfs-7.2.0-4.1.1.el4.x86_64.rpm
# the xml contains the information:
# 4. If this is a BIOS update package, install any necessary Embedded Systems
# Management firmware prior to this BIOS update. Otherwise, go next step.
# could be related to dupdisneyinstall.sh
├── package.xml 
├── payload
# this looks to be the actual drive firmware file
│   └── E770.fwh
# PIEConfig.sh holds information for the firmware, and looks to describe the sasdupie call
├── PIEConfig.sh
# PIEInfo.txt describes required the steps for the installation.
├── PIEInfo.txt

Вызов l64/sasdupie печатает справочное сообщение, если запускается не как root там сценарий dupdisneyinstall.sh терпит неудачу с недостаточными привилегиями.

Бег strace -e file l64/sasdupie показывает, что sasdupie пытается загрузить библиотеки, не входящие в этот файл прошивки. Скорее всего это часть упомянутого Embedded Systems Management firmware в package.xml.

Таким образом, путь вперед может заключаться в следующем:

  • установить Embedded Systems Management firmware
  • бегать l64/sasdupie так как root и посмотрим, если dupdisneyinstall.sh преуспевает
  • в случае, если это сработает, воспользуйтесь опциями из PIEConfig.sh выполнить l64/sasdupie

Если ваша система 32-битная, используйте l32 вместо того l64.