如何更新戴尔笔记本电脑的 BIOS?

gun*_*har 39 bios dell

我已经在 vista 笔记本电脑上安装了 Ubuntu 11.10,但戴尔提供 .exe 格式的 BIOS 更新,目前我的 bios 版本是 A09,但在驱动程序下载站点上,最新版本的 bios 是 A011。

帮我更新bios。

我的笔记本电脑信息:

Libsmbios version:      2.2.28
Product Name:           Studio 1537
Vendor:                 Dell Inc.
BIOS Version:           A09
System ID:              0x029F
Service Tag:            HBVV2BS
Express Service Code:   37723945096
Run Code Online (Sandbox Code Playgroud)

运行后,sudo update_firmware我收到以下错误集:

E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2919-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2919
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2930-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2930
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2929-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2929
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0832-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0832
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x294a
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2448
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2946
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2940
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2942
E: Unable to locate package pci-firmware-ven-0x1002-dev-0xaa28-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x1002-dev-0xaa28
E: Unable to locate package pci-firmware-ven-0x1002-dev-0x95c4-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x1002-dev-0x95c4
E: Unable to locate package pci-firmware-ven-0x14e4-dev-0x1698-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x14e4-dev-0x1698
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2936-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2936
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2935-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2935
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2934-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2934
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x293a-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x293a
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0822-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0822
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0592-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0592
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0852-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x1180-dev-0x0852
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x4232-subven-0x8086-subdev-0x1321
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x4232
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x293e-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x293e
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2a40-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2a40
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2937-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2937
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2938-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2938
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2939-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2939
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x293c-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x293c
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2a41-subven-0x1028-subdev-0x029f
E: Unable to locate package pci-firmware-ven-0x8086-dev-0x2a41
Run Code Online (Sandbox Code Playgroud)

Bob*_*ble 32

编辑 2015 年 10 月

在后 Win7 时代,此答案已不再有用。先看看其他答案。除非你有时间燃烧,否则不要再读了。

发布到此问题的其他答案可能适用于较旧的硬件,但我是在升级 Dell Inspiron 7520(2012 年老式)BIOS 的经验后发布的。在非官方戴尔支持网站上查看日期表明,这可能也适用于 2010 年或更早的其他戴尔型号。

第一步是获取有关您当前系统的信息。在 Ubuntu 中,您可以使用以下两个命令检查 BIOS 版本:

sudo dmidecode -s bios-version
sudo dmidecode -s bios-release-date
Run Code Online (Sandbox Code Playgroud)

查询制造商的网站时,您需要有关计算机硬件的信息。对于戴尔,这通常以服务标签和快速服务代码的形式印在底部的某处。如果这不容易阅读,可以通过以下方式获取信息:

1)安装libsmbios:

sudo apt-get update
sudo apt-get install libsmbios-bin
Run Code Online (Sandbox Code Playgroud)

2)从系统获取服务选项卡等:

sudo getSystemId
Run Code Online (Sandbox Code Playgroud)

这将产生如下输出:

Libsmbios version:      2.2.28
Product Name:           Inspiron 7520
Vendor:                 Dell Inc.
BIOS Version:           ANN
System ID:              0xNNNN
Service Tag:            NABCDEFN
Express Service Code:   NNNNNNNNNN
Asset Tag:              
Property Ownership Tag: 
Run Code Online (Sandbox Code Playgroud)

BIOS 版本中的关键信息、系统 ID、服务标签和快速服务代码。

准备好上述信息后,请访问戴尔网站并为您的特定计算机下载适当的驱动程序。

到目前为止一切顺利,但您会注意到下载的是 Windows 可执行文件。正如这不能在 Ubuntu(或任何其他 Linux)下运行一样它也不能在旧版 Windows 下运行,特别是 MS-DOS 或 MS-DOS 的任何模拟。尽管它在下载页面上可能会说与早期版本的 Windows 兼容;使用任何遗留的 DOS 类型环境,.exe 运行,但退出时除了打印出令人讨厌的消息外不做任何事情。

所以,有趣的地方来了:您需要一个 Windows 7(或更高版本)环境才能运行 BIOS 升级。我们如何在单启动 Ubuntu 机器(甚至是运行传统 Windows 的计算机,如 XP)上做到这一点?

此时的关键要素是 Windows 7 修复盘。有几种方法可以获得,包括从互联网上的来源购买,或者与拥有 Windows 7 计算机的人交朋友。如果幸运的话,您的计算机制造商在您的包装盒中捆绑了一个。我选择在我的 Ubuntu 机器上制作一个,使用在 VirtualBox 中运行的 Windows 7 的副本,改编本网站上制作救援盘的说明。

好消息是,从哪个版本的 Windows 7 获取修复盘似乎并不重要。由于这是 BIOS 升级,如果您的计算机是 64 位,那么您使用 32 位还是 64 位版本都没有关系。

拥有 Windows 7 修复磁盘后,剩下的就很简单了。如果你愿意,你可以把它做成一个可启动的 USB,但如果你的盒子有一个 CD 驱动器,这是不必要的。以下是步骤:

  1. 将下载的 BIOS 升级 .exe 放在普通 U 盘上。
  2. 从 Windows 7 修复磁盘重新启动计算机,Space出现提示时点击栏。
  3. 导航到命令提示符。( Use Recovery Tools->Command Prompt).
  4. 为您的 USB 找到正确的驱动器号(在命令行上,dir a:然后是 b、c 等,直到找到正确的)。
  5. 在命令行上导航到它(用冒号键入驱动器号)。
  6. 通过键入文件名运行文件(注意选项卡自动完成工作:))。
  7. 从那里,只需按照屏幕上的说明进行操作,并确保您的计算机在升级完成时保持开机状态。

请注意,在您返回 Ubuntu 启动屏幕之前,有两次自动重启。

  • 很棒的答案,请注意刚刚发生的事情:您的问题已作为此问题的副本而关闭,您发布到帖子的答案已移至此问题,出于“过时的答案”原因,我已向该问题添加了赏金,赏金如果没有 Windows7 救援磁盘,如果没有人找到任何其他方法来执行此操作,则可能是您的。 (3认同)
  • @Boble - 我尝试了你的方法 - 当我执行 BIOS 文件 (6430SA15.exe) 时,我收到错误消息:“支持图像类型所需的子系统不存在”。似乎是 32/64 的问题:( - 知道吗? (2认同)

RAO*_*AOF 23

您不需要 Windows 即可从其站点安装任何固件更新,只需按照此处发布的说明操作即可。

从戴尔网站:

  1. 从 dell.com 下载适用于您硬件的 WINdows/DOS BIOS 安装程序
  2. 下载最新的SystemRescueCD并将其刻录到空白 CD 或安装到USB 闪存驱动器
  3. 将 Windows/DOS BIOS 安装程序复制到 FAT 格式的 U 盘或安装 SystemRescueCD 的 U 盘。
  4. 从 CD 或闪存驱动器启动。
  5. 在软盘映像菜单中选择从 FreeDOS 启动。
  6. 确保您没有加载 HIMEM 和 EMM386 内存管理器。
  7. 更改为 U 盘(通常为 C:如果您的 HDD 上没有任何 FAT 分区)。
  8. 运行安装程序

为 E7240 机器运行 A14 更新时的示例。

在此处输入图片说明


Bru*_*ira 7

戴尔有一个非常漂亮的实用程序,可以下载最新的 BIOS 并将其应用到使用 Linux 的计算机上。理论上它应该可以正常运行,并且您可以在 Ubuntu 中运行它。

请访问他们的页面以获取更多信息,那里有准确的说明:

以下是链接页面的说明

sudo wget -q -O - http://linux.dell.com/repo/firmware/bootstrap.cgi | bash
sudo apt-get install firmware-addon-dell
sudo apt-get install $(bootstrap_firmware -a)
sudo update_firmware
Run Code Online (Sandbox Code Playgroud)

请注意:我没有亲自测试过,您可能首先向戴尔支持发送电子邮件,询问他们此方法是否已弃用或是否存在任何问题。

注意:截至 2020 年,这已过时。firmware-addon-dell 不适用于 Ubuntu 20.04,最后一次提交到 firmware-addon-dell ( https://github.com/dell/firmware-addon-dell )的 github 存储库是在 2011 年。

  • 这似乎不是最新的。尝试此操作时,第一条指令失败并显示以下消息:`固件存储库已过时且未维护。请改用 OMSA 存储库进行官方更新。` 当我检查脚本时,消息显示为第一个执行的行,然后是 `exit 1`。纳夫说... (3认同)

ysa*_*mon 6

最新的戴尔 BIOS 具有内置升级模块。

  1. 从戴尔网站下载适当的 .EXE 升级程序。
  2. 将此文件写入 USB 驱动器。
  3. 插入所述 USB 驱动器并重新启动。(注意:如果您的计算机以 UEFI 模式启动,您可以将 .EXE 放在 /boot/efi 分区中:它应该会自动找到)
  4. 当出现 Dell 徽标时,按 F12 进入一次性启动菜单
  5. 在此菜单中,选择 Bios 闪存更新。如果没有出现此条目,则说明您的 BIOS 没有内置升级模块。
  6. 在升级模块中,找到U盘上的.EXE升级程序。
  7. 启动升级过程。


Pan*_*her 3

首先,我不会更新 BIOS,除非存在需要更新 BIOS 来修复的特定问题(例如激活虚拟化技术)。

如果 BIOS 更新出现问题,您的计算机可能会变得像纸一样重。

我个人使用 FreeDOS,尽管还有其他选择。

我用unetbootin将其放在闪存驱动器上,并将bios_update.exe添加到闪存驱动器。

然后从 USB 启动并从 DOS 命令提示符运行 BIOS_update.exe。

如果可以启动 USB,则可以刻录 CD。

Arch wiki 提供了大量信息以及几个附加选项。

请参阅: https: //wiki.archlinux.org/index.php/Flashing_BIOS_from_Linux