Bem, estou me sentindo velho demais para passar por vários obstáculos para atualizar vários firmwares através da maneira usual específica do fornecedor: Faça o download de algumas ferramentas do DOS, gaste algum tempo criando um meio de inicialização do DOS (gratuito) e perdendo mais tempo para fazer o BIOS realmente inicialize a partir disso e, finalmente, atualize a atualização do firmware.
Isso é tão anos 80.
Me deparei com alguma ferramenta flash linux do projeto Coreboot . Parece suportar vários chips FLASH. Mas como isso funciona na prática?
Eu acho que existem algumas armadilhas que convertem as atualizações de firmware fornecidas pelo fornecedor no formato certo. Ou que tal identificar o chip de destino certo?
Atualmente, eu provavelmente tenho que atualizar, por exemplo:
- o firmware de alguns discos Seagate de 1,5 TB
- o firmware de uma placa antiga Abit Athlon 64 (biografias de prêmios)
- BIOS / BIOS de controlador incorporado de um Thinkpad
Como você atualiza o firmware do seu dispositivo em um sistema Linux?
msdos
anexado? Tentarei responder sua pergunta se você publicá-la. Avise-se me.Todo dispositivo com firmware atualizável provavelmente terá seus próprios métodos para fazer isso. As placas-mãe em particular são notoriamente incompatíveis nesse sentido.
Quanto aos discos rígidos, novamente, esse é um assunto de propriedade. A Seagate fornece downloads de liveCDs e Windows para executar atualizações de firmware, mas não as ferramentas Linux ou Unix.
Você pode criar imagens inicializáveis para atualizações do BIOS do Thinkpad que podem ser inicializadas no GRUB.
Caso contrário, você só precisará verificar as ferramentas com o fabricante.
Por outro lado, se você estiver trabalhando com microcontroladores, geralmente poderá programá-los com ferramentas bastante universais, embora ainda de forma limitada (por exemplo, os chips Atmel geralmente podem ser programados com
avrdude
).fonte
para vídeo Seagate de 3 TB (ST3000VX000-9YW1):
fonte
Eu atualizei com êxito uma unidade Seagate Barracuda 7200.12 ST31000528AS (1 TB SATA) com o seguinte método: ( Use por seu próprio risco! )
PH-CC49.ima
do arquivo .isodd if=./PH-CC49.ima of=/dev/sdX bs=512k
É isso aí! Sem Windows, sem CD volumoso, sem edições do Grub, sem FreeDos, sem exageros do Windows .exe (tentei, mas falhou com uma mensagem de erro obscura)
O crédito vai para a fonte: http://ubuntuaddicted.blogspot.ca/2014/10/seagate-firmware-flash-using-usb.html (encontrado através da pesquisa em PH-CC49.ima)
fonte
Para o meu seagate ST2000NM0024-1HT174, eu o fiz: baixei o firmware da seagate e o armazenei em uma chave USB. reiniciei o meu pc com um usb ao vivo (ou dvd) do linux mint mate 17.3. e descompacte todo o utilitário da Seagate diretamente no Desktop. copiou o firmware de um comando no Desktop e renomeou o comando seaflashlin_33_054 para mais simplesmente seaflashlin Após abrir o terminal e escrever:
(Erro! Eu mudo o arquivo de permissão)
(isso confirma que meu firmware é a versão SN02 e o HD está localizado em / dev / sg0)
Agora posso atualizar o BIOS com: (xxx.LOD = disco rígido do firmware)
que confirmam que o BIOS foi alterado do SN02 para SN05
Muito perigoso, use isso por sua conta e risco!
Boa sorte !
fonte
Você pode usar o flashrom para atualizar o BIOS de uma placa-mãe.
Exemplo (Abit KN9 Ultra):
A placa é a placa AMD Athlon 64, chipset AM2 Socket, Nvidia, lançada em 2006. Possui um chip flash de 256 KB que é substituível. O BIOS está rotulado com 'Award', que parece ser uma marca comercial da Phoenix.
O Flashrom suporta esse chipset e esse chip flash.
O suporte pode ser testado com um comando como:
Faz sentido fazer backup do conteúdo atual do chip flash, primeiro:
Em seguida, ele pode ser comparado a um arquivo de imagem de baunilha do fornecedor (usando, por exemplo,
xxd
evimdiff
).Algumas diferenças são esperadas - porque algumas BIOS também armazenam informações adicionais (por exemplo, DMI) e configuração (por exemplo, endereços MAC) no flash. Este também é o caso do Abit KN9 Ultra. Os dados do DMI são armazenados nos primeiros 1872 bytes - e são facilmente gerados pelo BIOS durante a inicialização. Os endereços MAC são armazenados no deslocamento 0x74E30.
Os arquivos de firmware do fornecedor são empacotados em um arquivo zip que contém
awdflash.exe
e umBIN
arquivo, por exemploM520A_23.BIN
. Neste exemplo, o arquivo bin contém a imagem do BIOS como está, ou seja, pode ser gravada diretamente no chip flash com um comando como:Dependendo da atualização, pode ser necessário limpar o CMOS para a próxima reinicialização - caso contrário, o BIOS pode não iniciar. Nessa placa, o CMOS pode ser limpo através de uma configuração de jumper. A limpeza por software também é possível (por exemplo, via CmosPwd ).
Para manter endereços MAC padrão exclusivos, a nova imagem do fornecedor pode ser corrigida antes de piscar, por exemplo:
Armadilhas:
fonte
Minha pequena experiência é que usei o Flashrom para atualizar meu BIOS da placa-mãe Intel e funcionou bem. Em geral, parece uma ferramenta muito boa.
fonte
O uso do disquete de atualização do DOS inicializado com o GRUB, conforme mencionado anteriormente, funciona para a maioria do hardware. Em alguns casos, você pode encontrar ferramentas nativas. A Dell ainda prepara repositórios que se integram ao sistema de distribuição de pacotes:
http://linux.dell.com/wiki/index.php/Repository/firmware
Infelizmente, a maioria das atualizações requer a reinicialização da máquina.
fonte
Experimentar:
hdparm --fwdownload
(E tenha muito cuidado!)No entanto, tenha cuidado!
fonte