14/05/2020
Storia di un innocente BIOS update su un server di livello enterprise in una tranquilla sera di Maggio.
In breve: è andato male.
O, meglio, è andato bene, secondo il processo di aggiornamento del costruttore. Ma il server non si è più acceso.
Mi son interrogato se pubblicare o meno marca e modello del server, ma giacché il mio scrivere non è un puntare un dito contro l'azienda, ma un condividere un'esperienza che può essere utile ad altri, li pubblico: Lenovo RD550.
Torniamo a noi: server che non si accende, TMS funzionante, BIOS non riconosciuto.
Dopo decine di tentativi di update tramite TMS nessuno dei quali andato a buon fine (semplicemente "mai terminati", neanche dopo 40 minuti) e di recovery tramite guide uffiliali e jumper, la via presa è stata quella di smontare il server.
Probabilmente la riscrittura tramite TMS di un BIOS corrotto non è funzionata causa un continuo tentativo di accensione del server da parte del controller (in continuo loop di riaccensione).
Il BIOS risiede su una eeprom MX25L12845E (https://www.macronix.com/Lists/Datasheet/Attachments/7471/MX25L12845E,%203V,%20128Mb,%20v1.9.pdf) a 16 pin.
Dissaldata la eeprom, messo insieme un pc con porta parallela e linux onboard, scaricato il benedetto SPIPGM (http://rayer.g6.cz/programm/programe.htm).
Un po' di saldature volanti e inizia la lettura eeprom che per un 90% si presentava vuota(!!).
Scaricato ultimo BIOS, usando l'utility binwalk lo si può "suddividere" in tutte le sue parti e scomprimere successivamente la parte riguardante il vero e proprio firmware da flashare.
Cancellata, programmata, verificata.
Risaldata nel server.
Rimontato il server.
Finito l'aggiornamento.
Tornata la serenità.
(Si, avevo comunque il backup dei dati)