“Ubuntu认证”设备的工作流程介绍和背后支持者的故事

by liam zheng on 10 June 2020

当你在搜索下一台兼容GNU/Linux的电脑时,也许会发现诸如戴尔、惠普和联想提供一系列预装Ubuntu的笔记本和台式机。事实上,Ubuntu认证的硬件列表一直处于增长状态。但是,对于硬件要获得“Ubuntu认证”是什么意思?都会经历哪些过程呢?让我们一起来探寻。

Laptops under testing running Ubuntu Linux

什么是Ubuntu认证?

从处理器到触摸板,声卡到无线模块,一台电脑由很多不同的组件组成。为了提供最好的用户体验,这些组件必须发挥其最佳的状态,且必须相互协同工作以实现最好的性能。如果你曾经在较新或预装特别的组件的电脑安装过GUN/Linux,你应该知道这不是一件简单的事情。当你在心爱的电脑上安装完喜欢的Linux版本,在登入系统后会发现蓝牙无法工作,导致你不能使用蓝牙无线鼠标。接着,你关掉了笔记本盖子,放入背包,当你重新打开电脑,发现声卡没有声音,不得不重启来解决该问题。

Ubuntu认证程序确保了通过认证的全部电脑组件正常工作,用户享有最好的体验。它是质量、功能和维护保证,因为认证的设备都基于长期支持版(LTS),所以可获得5年的系统安全维护更新。

Canonical与硬件合作伙伴紧密合作对他们的设备进行认证。目标有2方面:

  • 创建我们称为“OEM镜像”的系统镜像,该镜像用于预装Ubuntu的设备在出厂时预装到电脑上,
  • 确保出厂OEM镜像的内容上传到上游,使得与你在官网所下载的最新版本原版Ubuntu能正常工作。(原版Ubuntu镜像指在cn.ubuntu.com网页上下载的版本) 。

为什么我们需要OEM镜像?

你也许会想知道为什么我们不在认证的设备上使用“原版Ubuntu”。原因如下:

  • 我们的合作伙伴可能需要安装指定软件或添加功能到他们的设备上。例如,戴尔的设备带有特定的磁盘分区,并且默认情况下安装了戴尔系统恢复工具,使用户能够分别执行系统恢复和创建恢复介质。
  • 新款设备可能需要尚未集成到上游Linux内核的驱动程序,或者驱动只支持最新非长期支持(LTS)的Linux内核。专用的OEM内核则提供更好的灵活性,意味着我们可以从最新的主线内核(mainline)中挑选支持新技术和组件的特定附件,同时保持长期支持(LTS)版内核的稳定性。

OEM镜像的背后

那么,为特定设备创建镜像需要做什么呢?Canonical内部不同团队在项目的所有阶段通力合作,以将Ubuntu引入特定设备,并确保其组件将受Ubuntu未来版本的良好支持。

但是这些团队都是站在巨人的肩膀上。没有Linux社区对内建到Ubuntu的许多项目的创建和维护所付出的辛勤工作,这一切都是不可能的。这正如Canonical的桌面团队、Foundations团队和安全团队的模式一样,他们一同协作将所有的工作内容有序地集成到原版Ubuntu镜像中。

现场支持工程

现场工程师持续地与组件供应商和制造商联系追踪硬件驱动和固件(BIOS,UEFI)的问题。他们帮忙提前定位和调查问题,协助测试和调试新固件和驱动。

硬件适配工程

硬件适配(HWE)工程师负责编译和维护包含新硬件的驱动,新功能,未并集成到普通内核补丁的OEM内核。他们还确保添加到OEM内核中的所有内容最终都成为通用内核,以便每个人都可以从后续的原版Ubuntu镜像中受益于这些改进。最后,团队开发和维护一个免费、开源的固件测试套件(FWTS),它是作用是识别BIOS、UEFI、ACPI和其他错误且提供如何修复反馈。

主流工程

当一个新设备适配Ubuntu后,维护团队从当前包含为合作伙伴定制的特定功能,合适的OEM Linux内核版本和其他为优化该特定设备的发行版的优化和补丁的LTS版本上精心制作系统镜像。他们还设置了自动完整性检查,以便对发布的每个镜像进行缺陷测试,然后再将其传递给质量保证团队。

品质保证

一旦OEM镜像已准备,品质保证(QA)团队将接手并使用由认证团队开发维护的免费开源测试工具Checkbox来运行认证测试套件。该测试套件允许团队运行数百个测试,以确保CPU,显卡,无线,触摸板,睡眠和唤醒功能等所有功能均按预期工作。如果在测试过程中出现问题,则会打开错误报告,并将错误报告与可能需要重现,调试和解决问题的所有信息一起分配给对应的团队。当补丁提供后,新的镜像会被生成和做测试直到问题得到解决。

认证

认证是一个复杂的过程,不过认证团队都能应对和解决全部问题。首先,认证团队开发和维护内部使用的不同工具,包含刚才提到的Checkbox和其他用于自动发现和测试的软件。这个团队一直扮演着设备认证守门员的角色,为预装Ubuntu的设备和审核和签发证书。他们还负责在我们的实验室中对认证设备进行连续自动测试,以确保最新的Linux更新正常工作。最后不得不提的是,该团队帮助使用最新的Ubuntu版本(内部称为“ N + 1”的过程)测试经过认证的设备,以确保针对经过认证的设备进行的补丁被上游推广并提供给所有人。

项目管理

好的管理对于一个项目来说也很重要。项目经理要确保每个设备适配项目都按计划进行,确保不同的团队(内部团队和外部团队)都更新了所需的信息,按期完成并进入下一阶段,一般是来说找到每个bug的解决方案,就是使得设备完成适配,并将镜像发送到工厂使得能时地被预装上。

面向所有人的“Ubuntu认证体验” (已认证的设备)

正如在Martin Wimpress的文章“What’s new in Ubuntu Desktop 20.04 LTS”中描述的一样,从Ubuntu 桌面 20.04 LTS开始,现在通过安装原版Ubuntu发行版本就有可能获得认证设备体验。当在认证过的设备上完成安装后,特定设备的元素将会被自动安装和配置,体验和工厂预装镜像几乎一致。

这无疑是一个好消息,对于以下情况来说:

  • 你已经拥有了已认证的设备,但是预装的是其他的系统,现在想切换到Ubuntu。
  • 你想要一个预装Ubuntu的新电脑,但是在你所在的国家/地区未提供

总结

我们只是简单地介绍了Ubuntu认证的含义。我们也仅在讨论桌面和台式机电脑。每年,Canonical适配支持数百种设备,因此用户不仅可以在台式机上,而且可以在服务器端以及在IoT设备上获得出色的Ubuntu体验。该过程还为很多组件带来了更好的Linux支持,这对整个Linux社区总是有益的。

–英文原稿由 Pierre Equoy 撰写

查看更多内容

Canonical将参加研华AIoT x物联网线上研讨会

边缘智能的产生来源于深度学习与边缘计算,即将边缘计算与人工智能等应用相结合。AI、IoT“一体化”后,“人工智能”逐渐向“应用智能”发展,万物智联时代的到来更是为边缘智能提供了广阔的天地,“大智能”在云端,“小智能”在边缘,仍将是长期趋势。 2020年7月9日,研华将以“AIoT x 嵌入式单板创新,赋能行业专属边缘智能应用”为主题携合作伙伴Intel及Canonical举办线上论坛,共同分享AIoT产业热点及趋势,探讨在万物智联的新时代如何透过嵌入式平台创新&嵌入式软硬整合,协助您的行业专属边缘智能应用快速落地。 活动亮点 AIoT产业趋势、热点技术及创新应用 跨平台嵌入式软件服务打造 研华嵌入式单板及技术创新方案 AIoT边缘智能应用案例分享 如何参加 扫描上方二维码 […]

MAAS 2.8——新功能介绍

新版本特性一览: MAAS 2.8新版本带了3个关键特性: LXD虚拟机(测试版) UX(User Experience)响应更快 外部/远程 PostgreSQL数据库 如果您了解您所需要的内容,可前往maas.io/install继续操作。或者请跟我们一起来了解更多。 使用LXD创建虚拟机(测试版) MAAS 2.8可创建基于LXD的VM主机和虚拟机。这是一项在现有基于libvirt虚拟主机、虚拟机功能的额外选项。 不像libvirt KVM,LXD虚拟机无需虚拟主机SSH访问的情况下进行管理。 作为一个系统管理员,对其他员工使用LXD VM意味着您不必向他们提供SSH访问裸机服务器的权限,这意味着可以更好地实现资产权限管理。 最后,LXD拥有简单的API使得部署镜像 […]

预装Ubuntu 20.04 LTS的戴尔 XPS 13开发者版正式推出

预装已认证的Ubuntu 20.04 LTS的戴尔XPS 13开发者版现已在北美和部分欧洲、中东和非洲国家可用。这是第一个与4月发布的Ubuntu 20.04 LTS一起推向市场的系统。戴尔继续与Canonical建立长期合作伙伴关系,该伙伴关系旨在根据社区提供的意见为开发者提供理想的笔记本电脑。 “我们很高兴看到第一个预装Ubuntu 20.04 LTS的戴尔电脑。企业越来越多地为其开发者和工程师配备他们选择的操作系统,以确保最终用户获得较高的产出率。最新的戴尔l XPS 13 开发者上的Ubuntu 20.04 LTS为开发人员提供了所需的性能,并保证了IT管理所需的安全性和长期支持。” Canonical桌面工程总监Martin Wimpress说到。 “自2012 […]