我有一个需要更新固件的 USB 扬声器( Jabra Speak 410 )。当我尝试使用fwupdmgr
它时,它会看到设备,通知我现有的固件版本(1.9)但不执行任何更新:
$ fwupdmgr get-devices
Jabra SPEAK 410 USB
DeviceId: 87caecc4e6db7e3c335deedfef38666e7f279a03
Guid: 537f7800-8529-5656-b2fa-b0901fe91696
Guid: a607e767-5dfd-5f21-ac0f-c774dbd6fed5
Guid: 1764c519-4723-5514-baf9-3b42970de487
Plugin: dfu
Flags: updatable|registered
VendorId: USB:0x0B0E
Version: 1.9
Icon: drive-harddisk-usb
Created: 2018-09-12
$ fwupdmgr update
$
我确认有可用的更新文件(1.12 版)。当我下载更新文件 ( Jabra_SPEAK_410_USB-1-12-0.dfu
) 并尝试使用它时,fwupdmgr write
它似乎没有做任何事情。
其原因是多层次的。
fwupdmgr
是用于从Linux 供应商固件服务(LVFS) 检索固件并对其进行处理的工具。LVFS 提供以Microsoft Update格式打包并由 LVFS 项目签名的 CAB 档案的元数据和分发。这些更新由各个供应商管理。虽然 Jabra发表了官方声明:
Jabra 通过 LVFS 发布的1.8 版(针对 Speak 410)之后没有后续更新。
因为您可以访问 Jabra 提供的实际 DFU 文件,所以可以使用该实用程序手动处理它,该实用程序
dfu-tool
也打包为包fwupd
(的父包fwupdmgr
)的一部分。需要强调的是,由于签名是DFU 文件打包的一项功能,最终用户需要确保以安全的方式检索文件。这就是为什么 LVFS 提供对交付的档案的签名和断言。确保使用传输安全下载任何文件或具有可用于声明所有权的分离签名。
如果您觉得 DFU 文件是正版的,请使用以下过程:
首先,验证是否连接了有效的 DFU 设备:
一旦您确认存在具有 DFU 功能的设备附加调用
dfu-tool
以及 DFU 文件的路径:然后,您可以使用
fwupdmgr
或dfu-tool
作为便利实用程序来验证所需的固件版本是否正在运行:dfu-tool
:fwupdmgr
: