我已经在 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
运行时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
答案1
编辑于 2015 年 10 月
在后 Win7 时代,这个答案已经失去了作用。请先查看其他答案。除非您有时间,否则不要继续阅读。
针对此问题发布的其他答案可能适用于较旧的硬件,但我在升级 Dell Inspiron 7520(2012 年款)BIOS 后发布了此答案。查看非官方 Dell 支持网站上的日期表明,这可能也适用于 2010 年甚至更早的其他 Dell 型号。
第一步是获取有关当前系统的信息。在 Ubuntu 中,您可以使用以下两个命令检查 BIOS 版本:
sudo dmidecode -s bios-version
sudo dmidecode -s bios-release-date
在查询制造商网站时,您需要有关计算机硬件的信息。对于戴尔,这些信息通常以服务标签和快速服务代码的形式印在底部某处。如果这些信息不易阅读,可以通过以下方式获取信息:
1)安装libsmbios:
sudo apt-get update
sudo apt-get install libsmbios-bin
2)从系统获取服务标签等:
sudo getSystemId
这将产生如下输出:
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:
包含 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 驱动器,则无需这样做。步骤如下:
- 将下载的BIOS升级.exe放在普通的U盘上。
- 从 Windows 7 修复磁盘重新启动计算机,出现
Space
提示时点击该栏。 - 导航到命令提示符。(
Use Recovery Tools->Command Prompt
)。 - 找到您的 USB 的正确驱动器号(在命令行上,
dir a:
然后按 b、c 等,直到找到正确的驱动器号)。 - 在命令行上导航到它(输入带冒号的驱动器号)。
- 通过输入文件名称来运行该文件(注意制表符自动完成功能有效:))。
- 从那里,只需按照屏幕上的说明进行操作,并确保您的计算机在升级完成时保持开机状态。
请注意,在您返回到 Ubuntu 启动屏幕之前,会有两次自动重启。
答案2
您不需要 Windows 从其站点安装任何固件更新,只需按照发布的说明进行操作即可这里。
来自戴尔网站:
- 从 dell.com 下载适用于您的硬件的 WIndows/DOS BIOS 安装程序
- 下载最新系统救援光盘并将其刻录到空白 CD 或安装到USB闪存盘。
- 将 Windows/DOS BIOS 安装程序复制到 FAT 格式的 USB 记忆棒或安装了 SystemRescueCD 的 USB 记忆棒。
- 从 CD 或闪存驱动器启动。
- 在软盘映像菜单中选择从 FreeDOS 启动。
- 确保您没有加载 HIMEM 和 EMM386 内存管理器。
- 更改为 USB 记忆棒(如果您的 HDD 上没有任何 FAT 分区,则通常为 C:)。
- 运行安装程序
运行 E7240 机器的 A14 更新时的示例。
答案3
Dell 有一个非常实用的实用程序,可以下载最新的 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
请注意:我自己还没有测试过这个,您可以先给戴尔支持部门发一封电子邮件,询问他们这种方法是否已被弃用或者是否存在任何问题。
注意:截至 2020 年,这已过时。firmware-addon-dell 不适用于 Ubuntu 20.04,并且最后一次提交到 firmware-addon-dell 的 github repo (https://github.com/dell/firmware-addon-dell) 于2011年。
答案4
无需使用任何外部驱动器即可获得幸福的 7 个步骤
我最近在 Linux Mint 17 KDE (= Ubuntu 14.04 LTS Trusty Tahr) 下使用 CLI 将我的 Dell Latitude E6500 的 BIOS 从版本 A27 更新到了 A29,这对我来说非常有效:
- 下载所需的 DELL 软件
sudo apt-get install firmware-addon-dell smbios-utils wine
检查你的 BIOS 版本:
sudo dmidecode -s bios-version
我的输出:A27
从以下网址下载适用于您特定设备的 BiosUpdateFile.exe(我的情况是 E6500A29.exe)DELL 支持页面
切换到嵌套 E6500A29.exe 的目录,然后使用以下命令从中提取 *.hdr 文件:
wine E6500A29.exe -writehdrfile
更新 BIOS:
sudo dellBiosUpdate -u -f E6500A29.hdr
重启:
sudo reboot now
再次检查你的 BIOS 版本:
sudo dmidecode -s bios-version
我的输出:A29