Ein Kunde von mir besitzt einen Lenovo TS130 Server, der regelmäßig aus unerklärlichen Gründen abnippelt.
Also mal Zeit für ein Bios-Update.

Jetzt gibt es auf der Lenovo-Seite in der Tat ein 64bit Binary für RedHat.

Wichtig ist zu wissen, dass ein Kernel-Modul nötig ist zum Flashen, welches erst erstellt werden muss.

Hierzu sind jedoch die aktuellen kernel-headers nötig.

# apt-get install linux-headers-`uname -r`

Im Anschluss kann das Modul kompiliert werden mit:

root@srv1:/opt/BIOSLinux64# ./afulnx_26_64 /MAKEDRV
+—————————————————————————+
| AMI Firmware Update Utility(APTIO) v2.39 |
| Copyright (C)2011 American Megatrends Inc. All Rights Reserved. |
+—————————————————————————+
– Program initializing ..
– Make AFULNX driver …. ok
– Program ended normally.

Abschließend startet man den Flash-Vorgang mit:

root@srv1:/opt/BIOSLinux64# ./flash.sh
Your current BIOS is 9HKTXXA, so after flash complete, the BIOS will be updated successfully.
./afulnx_26_64 IMAGE9H.ROM /P /R
+—————————————————————————+
| AMI Firmware Update Utility(APTIO) v2.39 |
| Copyright (C)2011 American Megatrends Inc. All Rights Reserved. |
+—————————————————————————+
Reading file ………. done
FFS checksums ……… ok
Reading flash ……… done
Erasing flash ……… done
Writing flash ……… done

Broadcast Message from root@srv1
(somewhere) at 11:39 …

Warning communications lost with UPS srv1

Verifying flash ……. done
Congratulations, your BIOS is updated successfully! System will auto reboot to complete update!

Broadcast Message from root@srv1
(somewhere) at 11:39 …

Communications restored with UPS srv1

Broadcast message from root@srv1 (pts/0) (Wed Apr 23 11:39:56 2014):

The system is going down for reboot NOW!

Tadaa – ganz ohne Windows oder Dos-Bootdiskette.

Vorher:
root@srv1:/opt/BIOSLinux64# dmidecode -s bios-version
9HKT38AUS

Nachher:
root@srv1:/opt/BIOSLinux64# dmidecode -s bios-version
9HKT55AUS

Categories: BlogHardwareLinux