Obtaining the BIOS version from the shell

chip-biosTask semplice ma che spesso ad alcuni utenti causa qualche grattacapo.

Sarà che non sono comandi che si usa sovente, quindi non facili da ricordare, ma spesso capita di leggere questa domanda in varie mailing-list e forum in giro per la rete.

In questo brevissimo post vedremo pochi semplici comandi in grado di risolvere questo banale problema.

Sistemi operativi trattati: Linux e SUN Solaris.

Il primo programma di cui andremo a parlare si chiama dmidecode, tale programma fornisce una descrizione standardizzata dell’hardware di un computer, comprese caratteristiche quali numero di serie del BIOS e connettori hardware producendo una copia dei dati DMI (Desktop Management Interface) reperibili nel BIOS.

Il pacchetto con molta fantasia si chiama dmidecode, sovente è incluso nell’installazione base della distribuzione, nel caso in cui non lo sia lo si può facilmente installare tramite apt-get.

Se ciò che ci interessa è semplicemente la versione del BIOS della macchina su cui stiamo operando possiamo semplicemente digitare:

root@merdbook:~# dmidecode -t bios
# dmidecode 2.9
SMBIOS 2.4 present.

Handle 0x000E, DMI type 0, 24 bytes
BIOS Information
 Vendor: Apple Inc.
 Version:     MB51.88Z.0073.B06.0810291326
 Release Date: 10/29/08
 ROM Size: 4096 kB
 ...

Se siete interessati anche alle informazioni riguardanti il resto del sistema ottenibili tramite l’interfaccia DMI è possibile omettere i parametri precedentemente digitati (vale a dire -t bios) e limitarsi a digitare dmidecode, tenete presente però che l’output è molto verboso.

Personalmente preferisco restringere le informazioni a quelle d’interesse, quindi mediamente utilizzo una delle tipologie messe a disposizione (bios, system, baseboard, chassis, processor, memory, cache, connector, slot), per farlo è sufficiente digitare dmidecode -t $tipologia dove $tipologia è una delle tipologie precedentemente elencate.

Per ogni ulteriore dubbio vi rimando alla pagina del manuale visionabile tramite l’apposito comando man dmidecode.

Nel caso in cui vi troviate ad operare su di una macchina dotata di service processor, principalmente server, e vogliate ottenere la versione del firmware dello stesso i dati non sono ottenibili tramite dmidecode (NOTA: la versione del firmware del service processor, la versione del BIOS continua ad essere ottenibile tramite dmidecode), per questo scopo è necessario utilizzare ipmitool, per chi non sapesse neanche cosa è vi rimando a questa pagina su Wikipedia che fugherà la vostra ogni vostra curiosità.

Tralasciando tutti i task avanzati che è possibile far svolgere al service processor tramite l’interfaccia IPMI, che da soli per essere illustrati richiederebbero un paio di post, concentriamoci su come ottenere la versione del firmware del service processor, nel caso in cui troviate l’argomento di vostro interesse magari potremmo dedicargli qualche post in futuro.

I pacchetti necessari sono ipmitool, libopenipmi0 e openipmi installabili come al solito tramite apt-get, in questo caso è anche necessario avviare l’apposito servizio.

Per ottenere la tanto agognata versione del firmware del service processor basta digitare…

[~]root@server_ignoto # ipmitool mc info
...
Firmware Revision         : 3.20
...

…anche in questo caso, se non volete chiedere a me, potete dare un’occhiata alla pagina del manuale di ipmitool.

Nel caso in cui vi troviate ad operare su di una macchina equipaggiata con una qualche installazione di SUN Solaris il comando da usare è prtconf, questo comando fornisce un output già molto verboso di default, in più per avere la versione del firmware della macchina è necessario appendere al comando il parametro -v col risultato di avere un output ancora più verboso.

A questo punto consiglio caldamente di aggiungere anche il parametro -b in modo da avere le sole informazioni riguardanti il firmware della motherboard:

[/]root@server_ignoto # prtconf -bv
...
openprom model:  SUNW,4.22.33
openprom version: 'OBP 4.22.33 2007/06/18 12:45'

Anche in quest’ultimo caso per ulteriori approfondimenti vi rimando all’apposita pagina del manuale.

Be Sociable, Share!

    Related post:

    Comments are closed.