Flasher un BIOS sous Linux :-)

Un bon endroit pour poser ses questions sur Linux, BSD, Smoothwall, ...

Modérateurs : watch, Barbapapa

Flasher un BIOS sous Linux :-)

Message par NuxPowa » 22 Juil 2015 21:39

Brièvement, je voulais flasher la motherboard d'un vieux pc.
La motherboard est une ASUS P5N-D

Le BIOS actuel est bios 1204
Je voulais le mettre sur le dernier BIOS, la 1401
Je vous moquez pas de moi, cette motherboard date de 2009/2010, pas plus tard en tout cas!

Sous windows, je ne trouvais pas moyen de le flasher.
Ou alors, il me fallait un logiciel (je ne sais) pour le flasher ou le flasher depuis le BIOS lui-même avec un logociel qui est sur le cd de la motherboard (que je n'ai plus).
Autre possibilité: mettre un FreeDOS en USB ou Boot CD, mais soit, impossible à faire.

"Sous Linux"? me demandais-je?

Pas compliqué:
Installez le paquet flashrom, ou via apt
apt-get install flashrom

Voir la version du BIOS en cours
dmidecode -s bios-version

Sauvegarder le BIOS
sudo flashrom -r VotreModeledeCM.version.ROM

Flasher la ROM avec un nouveau BIOS
sudo flashrom -w 'FichierROM.NouvelleVersion.ROM'

Rebooter la machine (à faire uniquement si flashrom n'a pas détecté d'erreurs).

Vérifier la version du BIOS

sudo dmidecode -s bios-version


Concretement, en téléchargeant le dernier BIOS chez ASUS, le fichier était en .BIN
Hors, dans le owner's manual, il est écrit fichier .ROM

Que faire? Me disais-je...
Pas compliqué: renommer le fichier .BIN en .ROM, pas plus compliqué que ça... :-)

Celà donne ici:
En installation:
root@AsusP5ND:/home/Alphonse# apt-get install flashrom
Lecture des listes de paquets... Fait
Construction de l'arbre des dépendances
Lecture des informations d'état... Fait
Les NOUVEAUX paquets suivants seront installés :
flashrom
0 mis à jour, 1 nouvellement installés, 0 à enlever et 0 non mis à jour.
Il est nécessaire de prendre 140 ko dans les archives.
Après cette opération, 652 ko d'espace disque supplémentaires seront utilisés.
Réception de : 1 http://be.archive.ubuntu.com/ubuntu/ precise/universe flashrom amd64 0.9.5.2+r1517-1 [140 kB]
140 ko réceptionnés en 0s (761 ko/s)
Sélection du paquet flashrom précédemment désélectionné.
(Lecture de la base de données... 196887 fichiers et répertoires déjà installés.)
Dépaquetage de flashrom (à partir de .../flashrom_0.9.5.2+r1517-1_amd64.deb) ...
Traitement des actions différées (« triggers ») pour « man-db »...
Paramétrage de flashrom (0.9.5.2+r1517-1) ...


Le version du BIOS en cours:
root@AsusP5ND:/home/Alphonse# dmidecode -s bios-version
ASUS P5N-D ACPI BIOS Revision 1204

Vérifier si votre ROM est supportée
root@AsusP5ND:/home/Alphonse# flashrom
flashrom v0.9.5.2-r1517 on Linux 3.2.0-87-generic (x86_64), built with libpci 3.1.8, GCC 4.6.3, little endian
flashrom is free software, get the source code at http://www.flashrom.org

Calibrating delay loop... OK.
Found chipset "NVIDIA MCP51". Enabling flash write... OK.
Disabling flash write protection for board "ASUS P5N-D"... OK.
Found Winbond flash chip "W39V080A" (1024 kB, LPC) at physical address 0xfff00000.
No operations were specified.

Sauvegarder le BIOS actuel:
root@AsusP5ND:/home/Alphonse# flashrom -r ASUSP5N-DACPIBIOSRevision1204.ROM
flashrom v0.9.5.2-r1517 on Linux 3.2.0-87-generic (x86_64), built with libpci 3.1.8, GCC 4.6.3, little endian
flashrom is free software, get the source code at http://www.flashrom.org

Calibrating delay loop... OK.
Found chipset "NVIDIA MCP51". Enabling flash write... OK.
Disabling flash write protection for board "ASUS P5N-D"... OK.
Found Winbond flash chip "W39V080A" (1024 kB, LPC) at physical address 0xfff00000.
Reading flash... done.


Renommer le dernier BIOS de chez ASUS de fichier.BIN en fichier.ROM
(Pas compliqué, sous linux):
# mv 1401.BIN 1401.ROM


Flasher la ROM avec un nouveau BIOS:
root@AsusP5ND:/home/Alphonse# flashrom -w 1401.ROM
flashrom v0.9.5.2-r1517 on Linux 3.2.0-87-generic (x86_64), built with libpci 3.1.8, GCC 4.6.3, little endian
flashrom is free software, get the source code at http://www.flashrom.org

Calibrating delay loop... OK.
Found chipset "NVIDIA MCP51". Enabling flash write... OK.
Disabling flash write protection for board "ASUS P5N-D"... OK.
Found Winbond flash chip "W39V080A" (1024 kB, LPC) at physical address 0xfff00000.
Flash image seems to be a legacy BIOS. Disabling coreboot-related checks.
Reading old flash chip contents... done.
Erasing and writing flash chip... Erase/write done.
Verifying flash... VERIFIED.


Vérifier que le BIOS a été mis à jour:
root@AsusP5ND:/home/Alphonse# dmidecode -s bios-version
ASUS P5N-D ACPI BIOS Revision 1401
root@AsusP5ND:/home/Alphonse#


Voilà, BIOS flashé de la Revision 1204 à la 1401
Soulagé ;-)
Dernière édition par NuxPowa le 23 Juil 2015 21:59, édité 1 fois.
Roma non uno die aedificata est.
"Look after the pennies and the pounds will look after themselves"
vî trigu : sacwè ki n' sieve pu.
Avatar de l’utilisateur
NuxPowa
Acharné
Acharné
 
Message(s) : 4108
Inscription : 17 Jan 2004 16:12
Localisation : Condroz

Re: Flasher un BIOS sous Linux :-)

Message par Pierre. » 23 Juil 2015 18:09

Les .BIN .ROM c'est un classique chez Asus !
C'est cool de pouvoir flasher un BIOS sous Linux... Quand je dois flasher un firmware sur ma machine, en général il n'y a pas de procédure pour Linux alors je le fais depuis une clé usb bootable en FreeDOS.

Bon à savoir, merci pour le partage :bier:
Pierre.
Habitué
Habitué
 
Message(s) : 467
Inscription : 25 Avr 2012 18:59

Re: Flasher un BIOS sous Linux :-)

Message par mackguil » 24 Juil 2015 15:26

Pierre. a écrit :C'est cool de pouvoir flasher un BIOS sous Linux... Quand je dois flasher un firmware sur ma machine, en général il n'y a pas de procédure pour Linux alors je le fais depuis une clé usb bootable en FreeDOS.

Bon à savoir, merci pour le partage :bier:

+1 pour freedos en usb.
Avatar de l’utilisateur
mackguil
Vingt mille
Vingt mille
 
Message(s) : 21326
Inscription : 14 Mai 2005 10:22
Localisation : Luik Belgium

Re: Flasher un BIOS sous Linux :-)

Message par NuxPowa » 14 Oct 2017 22:31

Deux ans plus tard...
Je viens encore de flasher une tour HP avec flashrom, avec quelques différences point de vue utilisation (MAJ du programme plus récente):
Premièrement: voir la version de Bios installée actuellement sur le pc:
root@Pavillon:/# dmidecode -s bios-version
5.21
root@Pavillon:/#


Ensuite,
Code : Tout sélectionner
root@Pavillon:/# flashrom --programmer internal


shrom v0.9.9-rc1-r1942 on Linux 4.11.0-14-generic (x86_64)
flashrom is free software, get the source code at https://flashrom.org

Calibrating delay loop... OK.
Found chipset "Intel ICH7DH".
Enabling flash write... OK.
Found Winbond flash chip "W25X40" (512 kB, SPI) mapped at physical address 0x00000000fff80000.
No operations were specified.


Faire un backup du Bios:
Code : Tout sélectionner
flashrom --programmer internal -r backup.rom


Ensuite: flasher le nouveau Bios
Code : Tout sélectionner
flashrom --programmer internal -w 523.rom


Et voila, bios flashé à partir d'une MAJ d'un fichier .exe à la base (qu'il faut d'abord décompresser pour obtenir ledit fichier .rom)

Voila, juste vérifier après si la MAJ s'est bien effectuée:
root@Pavillon:/# dmidecode -s bios-version
5.23
root@Pavillon:/#
Roma non uno die aedificata est.
"Look after the pennies and the pounds will look after themselves"
vî trigu : sacwè ki n' sieve pu.
Avatar de l’utilisateur
NuxPowa
Acharné
Acharné
 
Message(s) : 4108
Inscription : 17 Jan 2004 16:12
Localisation : Condroz

Re: Flasher un BIOS sous Linux :-)

Message par mackguil » 14 Oct 2017 22:41

Et hop, dans les tips. :jap:
Avatar de l’utilisateur
mackguil
Vingt mille
Vingt mille
 
Message(s) : 21326
Inscription : 14 Mai 2005 10:22
Localisation : Luik Belgium

Re: Flasher un BIOS sous Linux :-)

Message par rodrigue7973 » 15 Oct 2017 09:50

salut mac!
j'ai une questions
est ce que la compilé d'un danger au flash bios sous nunux ?
merci
roro-san
Je suis malentendant et dyslexique. Il en résulte des difficultés d'expression écrite dont je vous prie de m'excuser
Merci
Rodrigue
Avatar de l’utilisateur
rodrigue7973
Habitué
Habitué
 
Message(s) : 339
Inscription : 26 Sep 2017 16:43

Re: Flasher un BIOS sous Linux :-)

Message par mackguil » 15 Oct 2017 15:53

rodrigue7973 a écrit :salut mac!
j'ai une questions
est ce que la compilé d'un danger au flash bios sous nunux ?
merci
roro-san


Que veux tu dire?
Avatar de l’utilisateur
mackguil
Vingt mille
Vingt mille
 
Message(s) : 21326
Inscription : 14 Mai 2005 10:22
Localisation : Luik Belgium

Re: Flasher un BIOS sous Linux :-)

Message par rodrigue7973 » 15 Oct 2017 17:31

hello mack
quand faire un flashé du bios mais danger sous linux ?
amicalement
Roro-san
Je suis malentendant et dyslexique. Il en résulte des difficultés d'expression écrite dont je vous prie de m'excuser
Merci
Rodrigue
Avatar de l’utilisateur
rodrigue7973
Habitué
Habitué
 
Message(s) : 339
Inscription : 26 Sep 2017 16:43

Re: Flasher un BIOS sous Linux :-)

Message par mackguil » 15 Oct 2017 19:25

rodrigue7973 a écrit :hello mack
quand faire un flashé du bios mais danger sous linux ?
amicalement
Roro-san


Comme sur un autre OS, ni plus ni moins, le périphérique connecté à un onduleur est un plus afin d'éviter les problèmes.
Avatar de l’utilisateur
mackguil
Vingt mille
Vingt mille
 
Message(s) : 21326
Inscription : 14 Mai 2005 10:22
Localisation : Luik Belgium


Retour vers Unix

Qui est en ligne ?

Utilisateur(s) parcourant ce forum : Aucun utilisateur inscrit

cron