LVFS使Linux固件更新更加容易

传统上,在Linux中更新BIOS或网卡固件意味着启动到Microsoft Windows或准备MS-DOS软盘,并希望更新后一切正常。 定期在供应商网站上搜索更新是一项手动且容易出错的任务,而不是我们应要求用户执行的任务。 固件更新服务使最终用户更容易实现硬件更新。

固件更新服务需要两件事:

  • 供应商向服务提供有关特定硬件可用更新的信息,以及
  • 一种将固件部署到硬件上的机制。

Linux供应商固件服务 (LVFS)是一项安全的Web服务,允许硬件供应商上传固件更新。 所有主要的Linux发行版都使用LVFS提供的元数据和文件来为客户端提供元数据,例如fwupdmgr和GNOME软件。 对于LVFS托管或分发内容,供应商也不收取任何费用(尽管OEM和用户都欢迎捐赠)。

fwupd是为Linux构建的简单守护程序,它允许会话软件更新本地计算机上的设备固件。 它是为台式机设计的,还可以在电话和无头服务器上使用。 要查看和应用更新,用户可以使用GUI软件管理器,例如GNOME软件,命令行工具或系统D-Bus界面。

LVFS如何开始

许多硬件已经支持用户可升级的闪存固件。 对于供应商来说,这是一件好事,因为他们可以在发现并修复错误后运送硬件并部署更新。 通过分割可用的闪存,在一个部分中使用引导加载程序,在另一部分中使用应用程序固件,可以升级后者,而无需拆卸程序或使用昂贵的编程器。

LVFS源自我设计ColorHug的经验, ColorHug是一种开放式硬件色度计,可让Linux用户校准其显示。 自项目启动以来,我们已经针对三种不同的设备发布了十多个更新。 与大多数开放式硬件设备一样,要升级固件,我在tarball中交付了特定于项目的工具,并通过HTTP从托管服务提供商处提取了自定义元数据文件。 二进制固件有一个校验和,但没有私有/公共签名。 大多数用户只是以root用户身份使用静态链接程序通过命令行刷新固件。

大约在同一时间,Red Hat希望我帮助使更多的硬件“正常工作”。 其中一些涉及添加内核驱动程序,一些正在修复GNOME以支持新硬件,还有一些正在更新设备上的固件。 在Linux中升级笔记本电脑固件通常是一个糟糕的经历,我想知道我是否可以生产大型公司和开放硬件纳米供应商可以使用的共享基础结构,既可以应用固件本身,也可以在共享库中分发元数据和固件文件。 ,安全的方法。 LVFS就是这样。

fwupd如何工作

fwupd守护程序支持常规的设计固件升级(DFU)和统一可扩展固件接口(UEFI)标准,还支持许多特定于供应商的更新协议。 如果可以使用dfu-utildfu-programmerflashromfwupdate更新项目,则很有可能仅使用fwupd就可以使用 ,而无需其他代码。 如果更新协议是特定于供应商的(例如Logitech使用),我们可以为守护程序编写一个小插件以升级硬件。 当前,LVFS支持大约10种不同的升级机制,并且每个现代Linux发行均随附fwupd

LVFS允许任何规模的供应商免费创建一个帐户,并使用标准元数据上传可重新分发的固件。 选择了CAB容器格式,以允许使用Microsoft Update工具对现有文件进行重新签名。 使用GNU Privacy Guard(GPG)对固件进行签名,并使用固件的SHA256哈希更新共享元数据文件。 然后,新文件将被上传到启用SSL的内容交付网络,并且可以处于私有,禁运,测试或稳定状态。

LVFS现在支持70多种不同的设备,并且使用LVFS上的固件, fwupd每月更新超过165,000台设备。 此外,每月下载的固件列表将近1亿次。 自从我们开始这个项目以来,至少有600,000项硬件(但可能还有更多)已使用新固件进行了更新。

我们得到了许多大型供应商的大力支持,其他一些供应商也对该服务进行了测试,并正在寻求法律许可以上传二进制文件。 我很想在LVFS上看到更多的硬件,并在fwupd守护程序中支持更多的自定义刷新协议。

无需设计能够在每个Linux发行版上运行的安全升级机制,就很难生产出足够的硬件。 如果您想使用LVFS分发固件,请与我联系。 如果您想开发fwupd插件,可以通过电子邮件发送邮件列表或开始阅读文档 。 如果您知道支持用户可升级固件的硬件,请询问制造商有关包括LVFS支持的信息。

翻译自: https://opensource.com/article/17/11/firmware-updates-and-lvfs

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值