我有一台 Gigabyte GA-J1900N-D3V,运行一台小型服务器计算机。我专门在其上使用 Ubuntu 16.04。
最近,我买了一块 Mini-PCIe 扩展板来增加额外的存储空间 - 主板只有两个 SATA 端口。我尝试安装新的扩展板,但它导致计算机无法启动 - 它在 BIOS POST 屏幕上崩溃(所以不是 Linux 的问题,这是在它尝试加载操作系统之前)。
我看到技嘉提供了一些较新版本的 BIOS 固件,但他们要求我使用基于 Windows 的“@BIOS”工具——显然我无法做到这一点(至少不容易)。
如何使用更新的固件刷新 BIOS?
答案1
我还找到了一些关于使用 FreeDOS 刷新 BIOS 固件的其他参考资料 - 但没有一个能立即为我所用。(这里和这里例如)
所以,这就是我为使它工作所做的事情。
可怕的警告
更新主板 BIOS 固件时要非常小心。如果您刷新了错误的文件,或者在此过程中断电,则很有可能会损坏主板。仅在需要时才更新 BIOS - 通常,如果系统正在使用当前 BIOS 固件,则最好不要管它。
1.获取BIOS固件
就我而言,技嘉网站上的文件具有更新的固件。我的主板的最新固件是修订版 F4。因此,请下载此 ZIP 文件。
它应该包含三个文件:
autoexec.bat
Efiflash.exe
J190ND3V.F4
2. 下载 FreeDOS
我们需要“USB 完整版” FreeDOS 映像,从他们的网站。
下载后,提取FD12FULL.img
文件。
3. 将 FreeDOS 写入 USB 闪存盘
我的机器没有 CD 驱动器(显然也没有软盘) - 但可以从 USB 驱动器启动。
把上面解压出来的镜像文件,用dd写入到U盘中。
首先检查/dev/sdf
你的USB闪存盘的路径是否正确!!
sudo dd if=~/Downloads/FD12FULL.img of=/dev/sdf bs=1M
4. 将 BIOS 刷新文件复制到 USB 闪存盘
将Efiflash.exe
和J190ND3V.F4
文件复制到闪存盘的根目录。
接下来,我们需要稍微修改一下 FreeDOS 脚本,这样它就不会在启动时尝试自行安装,而是运行 flash 工具。
打开autoexec.bat
Gigabyte 下载的 - 它应该包含一行简单的内容,例如:
Efiflash J190ND3V.F4
现在打开SETUP.BAT
FreeDOS 磁盘上的文件,删除其全部内容并用文件中的一行替换它autoexec.bat
,即 FreeDOSSETUP.BAT
现在应该包含单行Efiflash J190ND3V.F4
(当然,如果您有不同的主板或固件版本,这一行将会改变)。
请注意,FreeDOS 磁盘上还会有一个AUTOEXEC.BAT
文件 - 不要管它,当你从 FreeDOS 磁盘启动时,需要它来初始化系统
5. 启动 FreeDOS 并刷新 BIOS
现在您将能够从 FreeDOS 磁盘启动。您很可能需要从 BIOS 菜单更改启动顺序才能执行此操作,或者拔下现有的硬盘。
一旦 FreeDOS 启动,它就会Efiflash
自动加载该工具并刷新 BIOS,无需用户输入。等待完成并确认后,重新启动机器回到 Ubuntu。BIOS 现已更新。
因此,只是为了确认一下(因为我在 Linux 上很难找到有关这款主板的任何信息) - Gigabyte GA-J1900N-D3V 在 Linux 上运行良好,并且 Mini-PCIe 插槽可用于 SATA 控制器,而不仅仅是产品页面建议的 Wi-Fi。(确保选择支持 Linux 的 SATA 控制器)
答案2
有些主板提供Q-闪光实用程序,它可以直接从 FAT32/16 格式化的 USB 记忆棒读取 BIOS 映像文件(.f4、.12e 等)。
在启动过程中,您可以按显示的键(例如 End)启动 Q-Flash。然后,可以读取 USB 记忆棒以进行 BIOS 更新。源码