Thinkpad BIOS 更新:USB 驱动器无法启动

Thinkpad BIOS 更新:USB 驱动器无法启动

为运行 debian 10 的 Thinkpad x260 更新固件时,我无法使用可启动 USB 驱动器。

到目前为止,我已采取的步骤无济于事:

  1. 从 Lenovo 支持下载了最新的 .iso。

  2. 使用 genisoimage 提取 BIOS 更新:

sudo genisoimage -o biosUpdate.img r02uj74d.iso

  1. 将此.img文件复制到 USB 驱动器:

sudo dd if=biosUpdate.img of=/dev/sdb

  1. 然后我重新启动,按 F12 进入启动菜单,并选择 USB 驱动器。

此时,屏幕会空白一两秒,然后返回到启动菜单。

USB 驱动器在设备列表中显示为“CDROM”。

我是否做错了什么,导致我无法从启动菜单启动 USB 驱动器?


编辑:为了清楚起见,有关如何执行此操作的多个指南都建议了上述内容。例如https://blog.raveland.org/post/thinkpad_update_bios/

答案1

https://download.lenovo.com/pccbbs/mobiles/r02uj74d.iso已经是 ISO 映像,请尝试将其直接添加到 USB。

如果它不起作用,也许您需要刻录一张实际的 CD/DVD 并从中启动。这是一个没有 UEFI 的经典 ISO 映像。

BIOS下载页面


或者,我提取了他们的 Windows 更新程序并准备了文件以复制到 FAT32 格式的驱动器。只是下载文件并将其内容提取到您的 USB 驱动器。然后您可以从中启动并更新 BIOS。

答案2

我设法使用问题中的方法版本更新固件。

不同之处在于,genisoimage我没有使用存储库中的 debian 软件包,而是使用了该软件包所基于的 perl 脚本(从https://userpages.uni-koblenz.de/~krienke/ftp/noarch/geteltorito/geteltorito/)。

将脚本替换geteltoritogenisoimage生成的.img文件,当按上述方式闪存到 USB 时,该文件可以完美运行。

包裹可能有问题genisoimage

本指南详细介绍了使用脚本的过程:https://makandracards.com/operations/39925-lenovo-laptop-bios-update-with-linux

答案3

您可以通过编辑(或创建)文件/etc/grub.d/40_custom并添加以下条目来创建 GRUB 菜单条目:

menuentry "BIOS Update" {
    insmod part_msdos
    insmod ext2
    set root='(hd0,msdos1)'
    linux16 /boot/memdisk
    initrd16 /boot/bios.img
} 

您应该查找包含该行的现有文件exec tail <some id>并在其下方添加条目。

笔记:

  • hd0,msdos1是您的主 GRUB 分区,引导文件所在的位置。
  • 该文件是同名文件memdisk的副本。syslinux复制到/boot目录下。
  • 该文件是您在图像上bios.img使用后的输出。复制到目录下。geteltorito.iso/boot

之后更新您的 GRUB(grub-update命令)并重新启动您的计算机。您应该会看到一个名为的新 GRUB 菜单项BIOS更新

更多细节:https://www.thinkwiki.org/wiki/BIOS_Upgrade#Booting_using_GRUB

相关内容