如何更新戴尔笔记本电脑的BIOS?
我已经在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
编辑2015年10月
在Win7之后的时代,这个答案已经过时了。 先看看其他答案。 除非你有时间燃烧,否则不要再读。
发布到这个问题的其他答案可能适用于较旧的硬件,但是在我升级戴尔Inspiron 7520的BIOS(2012年版)的经验之后我发布了这个。 检查非官方戴尔支持网站上的日期表明,这可能也适用于自2010年甚至更早的其他戴尔型号。
第一步是获取有关当前系统的信息。 在Ubuntu中,您可以使用以下两个命令检查BIOS版本:
sudo dmidecode -s bios-version sudo dmidecode -s bios-release-date
查询制造商的网站时,您需要有关计算机硬件的信息。 对于戴尔,它通常以服务标签和快速服务代码的forms打印在底部的某处。 如果这不容易阅读,可以通过以下方式获得信息:
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,服务标签和快速服务代码。
有了上述信息,请访问Dell网站并下载适用于您的特定计算机的相应驱动程序。
到目前为止一切都很好,但您会注意到下载是Windows可执行文件。 正如这不能在Ubuntu(或任何其他Linux) 下运行 , 它也不会在Windows的旧版本下运行,特别是MS-DOS或任何MS-DOS仿真 。 尽管在下载页面上可能会说有关于与早期版本的Windows兼容的任何内容; 使用.exe运行的任何传统DOS类型环境,但退出时不做任何事情,除了打印出恼人的消息。
所以,有趣的是: 您需要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放在普通的USB闪存盘上。
- 从Windows 7修复盘重新启动计算机,在出现提示时点击
Space
键。 - 导航到命令提示符。 (
Use Recovery Tools->Command Prompt
)。 - 为您的USB找到正确的驱动器号(在命令行
dir a:
然后b,c等,直到找到正确的驱动器号)。 - 在命令行上导航到它(键入带冒号的驱动器号)。
- 通过键入其名称来运行该文件(注意选项卡自动完成工作:))。
- 从那里,只需按照屏幕上的说明操作,并确保您的计算机在升级完成时保持开机状态。
请注意,在返回到Ubuntu启动屏幕之前,有两个自动重新启动。
您不需要Windows从其站点安装任何固件更新,只需按照此处发布的说明操作即可。
来自戴尔网站:
- 从dell.com下载适用于您的硬件的WIndows / DOS BIOS安装程序
- 下载最新的SystemRescueCD并将其刻录到空白CD或将其安装到USB闪存驱动器 。
- 将Windows / DOS BIOS安装程序复制到FAT格式的USB记忆棒或安装了SystemRescueCD的USB记忆棒。
- 从CD或闪存驱动器启动。
- 选择从软盘映像菜单中的FreeDOS启动。
- 确保不加载HIMEM和EMM386内存管理器。
- 更换为USB记忆棒(通常为C:如果您的硬盘上没有任何FAT分区)。
- 运行安装程序
运行E7240机器的A14更新时的示例。
戴尔有一个非常好的实用工具,可以下载并将最新的BIOS应用到使用Linux的计算机上。 它理论上应该没有任何问题运行,你可以在Ubuntu中运行它。
请访问他们的页面了解更多信息,有精确的说明:
- Dell BIOS使用基于Debian的Linux系统进行更新
以下是链接页面的说明
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
请注意:我自己没有对此进行过测试,您可能会先向Dell支持部门发送电子邮件,询问他们是否弃用此方法,或者是否存在任何问题。
首先,除非存在需要更新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
我想最近在戴尔Inspiron 1525上更新BIOS。
根据戴尔的说法, http://linux.dell.com/repo/firmware/已经死了,不应该使用,“OBSOLETE!社区支持的戴尔固件存储库已经过时了!”
而是使用openmanage存储库http://linux.dell.com/wiki/index.php/Tech/libsmbios_dellBiosUpdate
它没有任何问题,对我有用。
我没有使用任何外部驱动器的7步幸福
我最近使用CLI在Linux Mint 17 KDE(= Ubuntu 14.04 LTS Trusty Tahr)下将戴尔Latitude E6500的BIOS从版本A27升级到A29,这对我来说非常有用:
- 下载所需的DELL软件
sudo apt-get install firmware-addon-dell smbios-utils wine
-
检查你的BIOS版本:
sudo dmidecode -s bios-version
我的输出:A27
-
从DELL支持页面下载适用于您的特定设备的BiosUpdateFile.exe(在我的案例中为E6500A29.exe)
-
切换到嵌套E6500A29.exe的目录,并使用以下命令从中提取* .hdr文件:
wine E6500A29.exe -writehdrfile
-
更新BIOS:
sudo dellBiosUpdate -u -f E6500A29.hdr
-
重启:
sudo reboot now
-
再次检查您的BIOS版本:
sudo dmidecode -s bios-version
我的输出:A29
适用于较旧的戴尔机器
我有一台运行Ubuntu的旧戴尔桌面(Dimension E520,大约2006年)。 要更新BIOS,我从Dell下载了所需的.exe。 然后我尝试使用以下方法运行它:
-
使用带FreeDos的USB驱动器。 机器无法启动进入FreeDos,它给出了设备未就绪错误。
-
SystemRescueCD – 与上面1)相同的问题。
-
使用Windows 7 64位安装光盘,启动到Windows命令提示符环境但返回错误“图像类型不存在”。
-
在另一个线程中,我发现使用32位Windows光盘可以克服3)中的错误。 所以我再试了32位。 这次exe运行,单击提示等没有错误消息,但BIOS没有更新。
最后, 我在戴尔支持论坛上尝试了此处概述的方法 。
-
下载Dell诊断分发包(DDDP)
-
运行DDDP并按照提示操作
-
导航到提取创建的DIAGS文件夹
-
删除DIAGS文件夹中的所有文件,但以下情况除外:
COMMAND.COM,DELLBIO.BIN,DELLRMK.BIN,AUTOEXEC.BAT,&CONFIG.SYS
-
将BIOS .exe添加到DIAGS文件夹
-
导航到C:\ Dell \ Drivers \ R174621 \并运行DDDP .exe。
-
选择Create a Bootable CD选项(还有一个安装到Flash Drive选项,但我没试过这个)。
-
将CD装入机器。 重启,F12,从CD启动并运行BIOS .exe。
最近的戴尔BIOS有一个内置的升级模块。
- 从Dell网站下载相应的.EXE升级程序。
- 将此文件写入USB驱动器。
- 插入所说的USB驱动器并重启。 (注意:如果您的计算机以UEFI模式启动,您可以将.EXE放在/ boot / efi分区中:它应该自动找到)
- 出现Dell徽标时,按F12进入一次性启动菜单
- 在此菜单中,选择Bios Flash Update。 如果未显示此条目,则您的BIOS没有内置升级模块。
- 在升级模块中,找到USB磁盘上的.EXE升级程序。
- 启动升级过程。
你见过DellBIOS – Ubuntu Wiki文章吗? 这似乎是非常彻底的,并回答你的问题如何。
戴尔的这些说明在几次尝试失败之后对我来说非常合适。
http://www.dell.com/support/article/us/en/19/SLN171755/en
包含:
- USB记忆棒
- FreeDOS Base ISO 1.0
- UNetbootin
从BIOS版本A07到A08到A23轻松更新了我的戴尔Latitude E6420(A08是必需的,然后我可以一次闪存到A23)。
简单快捷。
在较新的机器上,2015年后我相信,您可以简单地将.exe更新程序(即使官方说明只提到Windows)放在/boot/efi/
,重启,按F12并选择Flash BIOS升级。 我用XPS 15 9950做到了这一点,它就像一个魅力。 另请参阅BIOS更新dell 。