How can I update the SmartArray P410i firmware on a DL360G6? The usual method via SPP Auto-Update fails
Solution 1:
I found something that worked on only the second try.
First try: system rescue CD
This fails due to fundamental kernel incompatibilities with the HP-provided binaries. That's not surprising since it uses a Linux kernel version 4 and the HP binaries are for version 2.
Second try: CentOS 6 rescue mode
This sort of worked. In order to make it work, I needed to copy the dirname
and tr
binaries from another preinstalled CentOS 6 server. There did not seem to be any way to add binaries to the rescue environment since it's mounted read-only as a loop device from an image in /tmp.
However, I could copy compatible binaries into /tmp and then add /tmp to my PATH.
On "centos6" existing host:
$ cd /tmp
$ <upload hp-firmware-smartarray-14ef73e580-6.64-2.x86_64.rpm here>
$ rpm2cpio hp-firmware-smartarray-14ef73e580-6.64-2.x86_64.rpm | cpio -id
31207 blocks
Here's what was done to make this work on the DL360G6 after booting CentOS6 into rescue mode, enabling network, and dropping to a rescue shell without attempting to mount any existing linux installations:
# scp user@centos6:/usr/bin/dirname /tmp/.
# scp user@centos6:/usr/bin/tr /tmp/.
# scp -rp user@centos6:/tmp/usr /tmp/.
# export PATH=$PATH:/tmp
# which tr
/tmp/tr
# cd /tmp/usr/lib/x86_64-linux-gnu/hp-firmware-smartarray-14ef73e580-6.64-2
# ./hpsetup
Magic! It works!
Also confirmed from the ESXi 5.5 ssh CLI:
~ # esxcli hpssacli cmd --cmdopts="ctrl all show config detail"
Smart Array P410i in Slot 0 (Embedded)
Bus Interface: PCI
Slot: 0
...
RAID 6 (ADG) Status: Disabled
Controller Status: OK
Hardware Revision: C
Firmware Version: 6.64
Firmware Version: 6.64... nice!
Solution 2:
I ran into a similar problem updating my HP Proliant DL380 G7 with a P410i raid card. Posting to help others.
When I ran hpsetup the error was "310: Bad Substitution"
My solution was to run ccissflash instead of hpsetup. It worked perfectly.
I did this under Linux Mint 20.1 x64 used firmware: Version: 6.64 (B)(1 Oct 2015) SUSE Linux Enterprise Server 11 (AMD64/EM64T) firmware-smartarray-14ef73e580-6.64-2.x86_64.rpm