Ceci est une ancienne révision du document !
Flasher le BIOS de la carte mère sans installer windows ?
En émulant DOS
Avec FreeDOS (clé USB)
Nous allons utiliser FreeDOS pour flasher le BIOS à partir d'un fichier .exe, non-exécutable sous Linux… mais exécutable sous DOS.
Préparation de la clé USB
- Formatez une clé USB en fat32.
- Installez UNetbootin.
- Lancez UNetbootin:
Applications
→Outils système
→UNetbootin
.
Cochez Distribution
et choisissez FreeDOS
. En bas, sélectionnez votre clé USB. Puis faites OK
.
- Fermez UnetBootIn, ouvrez la clé dans Nautilus, copiez-y simplement le/les fichier(s) de flashage récupérés sur le site du constructeur. La clé est prête pour flasher.
Flash du BIOS
- Bootez sur la clé. Le système va charger FreeDOS.
- Choisissez la seule option possible: Default.
- Une sorte de grub s'affiche, choisissez FreeDOS Safe Mode (don't load any drivers).
- On arrive sur un prompt, par défaut sur le disque A: → aller dans le disque C: en tapant
C:
. - Tapez la commande
dir
qui vous listera le contenu de la clé. Vérifiez que votre fichier de flashage apparaît bien dans la liste. - Tapez le nom complet, avec l'extension, du fichier de flashage.
- Tapez
Entrée
. - Le flashage du BIOS commencera et prendra quelques secondes ou minutes, puis il sera vérifié.
- Il est possible qu'il y ait un reboot un peu brutal à la fin du flashage, mais ça reboot bien.
Votre BIOS est flashé. Au reboot, allez dans le BIOS, et effectuez les directives fournies par le constructeur (en général load setup defaults). Paramétrez votre BIOS à votre convenance, sauvegardez, et rebootez.
Avec FreeDOS (création d'une iso à graver sur cd)
C'est un peu long car on part d'une image ISO pour en recréer une nouvelle.
- On télécharge l'image ISO de FreeDOS par exemple ici.
- (Facultatif) Vérifiez le checksum d'après celui du site officiel.
sha256sum fdbasecd.iso
- On monte l'image pour en récupérer le contenu
sudo modprobe loop mkdir tmp sudo mount fdbasecd.iso tmp -t iso9660 -o loop
- On récupère le contenu dans un nouveau dossier :
mkdir freedosmod cp -ra tmp/* freedosmod/ sudo umount tmp rmdir tmp
- On y copie les fichiers du BIOS :
cp /chemin_vers_votre_bios/* freedosmod/
- On crée l'image ISO :
cd freedosmod chmod u+w ./isolinux/isolinux.bin mkisofs -o ../freedos_biosupdate.iso -q -l -N \ -boot-info-table -iso-level 4 -no-emul-boot \ -b isolinux/isolinux.bin \ -publisher "FreeDOS" \ -A "FreeDOS 1.0" -V FDOS_1 -v . cd ..
- (Facultatif) On teste l'iso, voir [kvm] pour plus d'infos :
kvm -cdrom freedos_biosupdate.iso -boot d -m 512
- On grave le fichier image.iso sur un CD réinscriptible :
cdrecord -v blank=fast dev=/dev/cdrom freedos_biosupdate.iso
- Si tout est OK, on peut faire le ménage :
rm -r freedosmod rm freedos_biosupdate.iso
- On redémarre la machine en démarrant sur le CD
- Au premier menu, on choissit "1" pour lancer FreeDOS
- Au deuxième menu, on choisit "1" pour INSTALL. N'ayez pas peur, ça n'installe rien à cette étape !
- Au troisième menu, on choisit "Français" pour avoir le clavier azerty.
- Au quatrième menu, on choisit "Run from CD"
- On arrive sur un prompt, on tape dir pour vérifier la présence de nos fichiers.
dir
- Lancer votre exécutable, en respectant le mode d'emploi du fabricant.
Avec une image DR-DOS (création d'une iso à graver sur cd)
Il semble que DR-DOS n'existe plus et soit remplacé par FreeDOS (cf. ici ou là et là). À confirmer.
En tout cas le lien de téléchargement ci-dessous est mort.
Regardez si vous n'avez pas un utilitaire dans le bios directement. Sinon :
- Exécuter les commandes suivantes :
cd <repertoire de telechargement> mkdir tmp sudo mount -o loop -t vfat DRDOS703.IMG tmp sudo cp AWDFASH.EXE biosupdate.file tmp sudo umount tmp mkisofs -o image.iso -b DRDOS703.IMG DRDOS703.IMG
- Graver le fichier image.iso sur un CD
- Démarrer sur le CD, et à l'invite A:\ lancez votre utilitaire (chez moi : AWDFASH biosupdate.file)
<logiciel>.exe
À partir d'un système Linux
Avec Flashrom
Flashrom est un programme pour flasher directement depuis votre système.
Utilisable sous Linux, FreeBSD, DragonFly BSD, Solaris, Mac OSX, etc.
* Installez le paquet flashrom ou via apt :
sudo apt-get install flashrom
Voir la version du BIOS en cours
sudo dmidecode -s bios-version
Vérifier si votre ROM est supportée
sudo flashrom
Vous devriez obtenir un message comme suit :
Calibrating delay loop... OK. No coreboot table found. Found chipset "NVIDIA MCP51", enabling flash write... OK. Found chip "PMC Pm49FL004" (512 KB) at physical address 0xfff80000. No operations were specified.
Sauvegarder le BIOS de votre machine :
sudo flashrom -r A7Tversion.ROM
Calibrating delay loop... OK. No coreboot table found. Found chipset "NVIDIA MCP51", enabling flash write... OK. Found chip "PMC Pm49FL004" (512 KB) at physical address 0xfff80000. Reading flash... done.
Pour flasher la ROM avec un nouveau BIOS :
sudo flashrom -w A7TNouvelleVersion.ROM
Calibrating delay loop... OK. No coreboot table found. Found chipset "NVIDIA MCP51", enabling flash write... OK. Found chip "PMC Pm49FL004" (512 KB) at physical address 0xfff80000. Flash image seems to be a legacy BIOS. Disabling checks. Programming page: 0007 at address: 0x00070000
Rebootez votre machine.
Vérifiez la version du BIOS :
sudo dmidecode -s bios-version
Pour les Dells
voir lien externe
Liens externes
- (en) Cartes MSI avec Flashrom (forum MSI)