Aggiornamento del BIOS

From Gentoo Wiki
Jump to: navigation, search
This page is a translated version of the page BIOS Update and the translation is 100% complete.

Other languages:
English • ‎español • ‎français • ‎italiano • ‎日本語 • ‎한국어 • ‎polski • ‎русский • ‎中文(中国大陆)‎

I fabbricanti di hardware spesso forniscono degli aggiornamenti per il BIOS e per gli altri tipi di firmware. Installare (spesso indicato come "flash") gli aggiornamenti a volte non è facile sui sistemi GNU/Linux. Questo occasionalmente richiede qualche lavoro extra.

Warning
Se l'hardware è operativo spesso non c'è bisogno di aggiornare il BIOS. Se qualcosa va storto possono essere causati danni permanenti al BIOS o al firmware che possono far terminare la garanzia hardware. Procedere con cautela!

Ottenere informazioni sul firmware

Per prima cosa trovare il produttore e il modello della scheda madre. Verificare il manuale utente relativo al sistema. Molte delle cose cercate possono essere trovate nel manuale utente.

Il pacchetto sys-apps/dmidecode può essere utilizzato per richiamare le informazioni aggiuntive sul sistema hardware. dmidecode guarda alle tavole DMI della scheda madre, al fine di fornire informazioni dettagliate sui componenti del firmware e dell'hardware.

root #dmidecode -t bios -t baseboard

Come ultima cosa, se è possibile l'accesso fisico alla scheda madre, l'informazione richiesta può essere trovata direttamente nella scheda madre stessa.

Warning
L'accesso alla scheda madre di un computer può causare la perdita della garanzia!

Dopo aver cercato l'aggiornamento per il firmware, procedere al download del pacchetto necessario ad aggiornare l'hardware. E' normale per un produttore fornire il pacchetto dell'aggiornamento del firmware nel formato .zip, .exe o .iso.

user $unzip 7235v1A.zip
Archive:  7235v1A.zip
   creating: 7235v1A/
inflating: 7235v1A/7235v1x.txt
inflating: 7235v1A/AWFL865.EXE
inflating: 7235v1A/How to flash the BIOS.DOC
inflating: 7235v1A/W7235IMS.1A0

Opzioni BIOS

Molti BIOS hanno un'opzione per leggere la nuova immagine binaria da una scheda di memoria esterna o da un floppy disk. Entrare nelle impostazioni del BIOS e vedere le opzioni. Se il BIOS non supporta ciò, continuare con la prossima sezione.

Avvio da CD

Spesso i produttori forniscono una immagine CD-ROM da scaricare come supporto di avvio. Il file dovrebbe avere estensione .iso e dovrebbe essere opportunamente scritto su un CD-R(W) vuoto. Uno degli strumenti per fare questo è cdrecord:

root #cdrecord BOOT-CD.iso
Note
cdrecord è provvisto di due pacchetti. Sceglierne uno dei seguenti: app-cdr/cdrtools e app-cdr/cdrkit.

Scegliere dal menu di avvio del BIOS l'avvio da CD e seguire le istruzioni del website del produttore o del manuale dell'utente.

Ambiente FreeDOS

FreeDOS può essere utilizzato per eseguire l'utilità di aggiornamento del BIOS DOS-based. Una immagine FreeDOS "standard" che include i necessari strumenti BIOS deve essere creata. Dopo che tale immagine è stata creata, avviarla tramite uno dei metodi mostrati sotto.

Scaricare FreeDOS e i suoi strumenti:

  • FreeDOS - Scaricare il file fdboot.img.
  • Settore di avvio FreeDOS - Scaricare il file sys-freedos-linux.zip.
  • Il programma DOS-Flash e il nuovo BIOS dal sito internet del produttore.

Creare una immagine FreeDOS standard

Per prima cosa scaricare il software richiesto ed abilitare il dispositivo di loopback nel kernel:

KERNEL abilitare il dispositivo di loopback
Device Drivers  --->
    [*] Block devices  --->
        <M>   Loopback device support

Se il modulo non è stato caricato utilizzare modprobe per caricarlo:

root #modprobe loop

Installare il software necessario:

root #emerge --ask dev-lang/nasm app-arch/unzip sys-fs/dosfstools

Creare un file immagine di ~20MB utilizzando il comando dd. Il nome deve essere freedos.img quando si sostituisce quello sul SystemRescueCD:

root #dd if=/dev/null of=freedos.img bs=1024 seek=20480

Scrivere un file system nell'immagine:

root #mkfs.fat freedos.img

Scrivere un bootsector (settore di avvio) nel file di immagine:

root #unzip sys-freedos-linux.zip && ./sys-freedos.pl --disk=freedos.img

Ora copiare i files FreeDOS nella nuova immagine.

Creare un mountpoints:

root #mkdir -p /mnt/freedos /mnt/freedos_new

Montare l'immagine originale:

root #mount -o loop fdboot.img /mnt/freedos

Montare la nuova immagine:

root #mount -o loop freedos.img /mnt/freedos_new

Copiare i files di sistema FreeDOS nella nuova immagine:

root #cp -ar /mnt/freedos/* /mnt/freedos_new/

Ora copiare il programma flash e il nuovo BIOS nel file immagine:

root #cp -ar FLASH-PROGRAM BIOS-UPDATE /mnt/freedos_new

Smontare entrambe le immagini:

root #umount /mnt/freedos_new /mnt/freedos
Note
DOS può solo visualizzare nomi fino ad una lunghezza di 8 caratteri. E' una buona idea rinominare i files che hanno il nome più lungo di tale limite.

Utilizzare SystemRescueCD per avviare FreeDOS

SystemRescueCD viene fornito con una versione di FreeDOS. Questa versione può sostituire l'immagine originale e creare una scheda di memoria che contiene i programmi necessari per flashare il firmware.

Scaricare SystemRescueCD e preparare LiveUSB

Creare una scheda di memoria avviabile

Utilizzare il metodo di default per creare il supporto di avvio SystemRescueCD, lo script usb_inst.sh provvederà a guidare nell'installazione.

Warning
Questo cancellerà ogni dato nel supporto di memoria! Assicurarsi che ogni dato sia stato salvato prima di utilizzare il supporto di memoria per questo compito!

Creare la cartella in /mnt:

root #mkdir /mnt/SysRescueCD

Montare l'immagine CD:

root #mount -o loop systemrescuecd-x86-VERSION.iso /mnt/SysRescueCD

Avviare lo script di installazione:

root #/mnt/SysRescueCD/usb_inst.sh

Smontare l'immagine CD:

root #umount /mnt/SysRescueCD

Sostituire l'immagine FreeDOS

E' tempo di sostituire l'immagine originale FreeDOS nel dispositivo di memoria SystemRescueCD.

Montare il dispositivo di memoria SystemRescueCD (/dev/sdX1 che deve essere sostituito dal nome del dispositivo di memoria):

root #mount /dev/sdX1 /mnt/SysRescueCD

Sostituire il file freedos.img:

root #cp freedos.img /mnt/SysRescueCD/bootdisk/

Smontare la scheda di memoria SystemRescueCD:

root #umount /mnt/SysRescueCD

Avviare l'immagine FreeDOS direttamente da GRUB

Per avviare FreeDOS senza nessun media esterno utilizzare lo strumento memdisk dal syslinux per consentire a grub (o un altro bootloader) di avviare l'immagine FreeDOS direttamente.

root #emerge --ask sys-boot/syslinux

Montare la partizione /boot (se necessario):

root #mount /boot

Copiare il binario memdisk e la nuova immagine FreeDOS su /boot:

root #cp /usr/share/syslinux/memdisk /boot
root #cp freedos.img /boot

Editare il file /boot/grub/grub.conf e aggiungere una voce per FreeDOS:

FILE /boot/grub/grub.confEsempio voce per grub.conf
title FreeDOS (BIOS update)
kernel /boot/memdisk floppy
initrd /boot/freedos.img

Aggiornamento BIOS

Riavviare e scegliere l'avvio da scheda USB "oppure" dalla nuova voce di grub. Quando si utilizza SystemRescueCD, nella riga comando di GRUB digitare:

freedos

Questo dovrebbe avviare la nuova immagine FreeDOS. Il prompt del DOS dovrebbe comparire:

CODE
C:\

Ora iniziare l'aggiornamento del BIOS seguendo le istruzioni del costruttore. Qualche comando utile in DOS:

cd <dir>
Passare alla directory..
dir
Elencare i files nella directory corrente.
type [drive][path]filename
Visualizzare il contenuto di un file.

Flashrom

Qualche scheda madre può supportare il flashing (attraverso il pacchetto sys-apps/flashrom) direttamente dal sistema. In questo caso il solo componente necessario è l'immagine del BIOS. Prima di continuare questo percorso, dare un'occhiata alla lista dell'hardware supportato.

Se l'hardware è supportato, verificare la nuova immagine del BIOS:

root #flashrom -v W7235IMS.1A0

Se tutto quanto è verificato, allora flasharlo:

root #flashrom -vw W7235IMS.1A0

Vedere anche