Ubuntu認定デバイスとCanonicalの取り組み
「Dell」「HP」「Lenovo」など、様々なメーカーから「Ubuntu」プリインストールPCが販売されています。「Canonical」は最高のUXをユーザーに提供できるPCに「Ubuntu」の認定行っています。
「Ubuntu認定デバイス」と「Canonical」の取り組みが以下で紹介されています。
Ubuntuの認定
デバイスに対する「Ubuntu」の認定は、そのデバイスで「Ubuntu」が利用できるということをただ示すだけのものではありません。「Ubuntu」の認定は、継続的に最高のUXをユーザーに提供できると確信したPCにのみ与えられる認定であり、その認定作業では様々な組織・人々の取り組みがあります。
「Ubuntu」の認定はユーザーのために行っている取り組みですが、中々ユーザーに伝わりにくい部分もあります。
さてPCは、CPUやタッチパッド、サウンドカードに無線モジュールなど、様々なコンポーネントで構成されています。
最高のUXをユーザーに提供するためには、これらのコンポーネントが期待通りに動作し、そしてお互いに連携して動作しなければなりません。
最新デバイスにLinuxディストリビューションをインストールすることの難しさ
最新のPCにLinuxディストリビューションをインストールすることは、簡単なことではありません。最新のデバイスがサポートされていない、あるいは十分にサポートされていないケースは良くあることで、「Bluetooth」デバイス(アダプター)が動作せず無線マウスが接続できないなどのトラブルに遭遇することもあるでしょう。
またPCを利用しているうちに、ノートPCの画面を閉じて再度開いた後、サウンドが鳴らなくなり再起動が必要になるなど、後になってトラブルに気付くこともあるでしょう。
すぐに使えて期待通り動く
すぐに使えて期待通り動作することは、ユーザーが自然に期待することです。そこで登場するのがUbuntu認定プログラムです。
(ここで言うプログラムとは、ソフトウェアのことではなく取り組みのことです。)
Ubuntuの認定が与えられたPCは、PCに搭載されているコンポーネントが期待通りに動作し、PCを箱から取り出してすぐに使えることを意味します。
品質の継続的な保証
認定対象に使用される「Ubuntu」のバージョンは、LTSリリースの「Ubuntu」が対象になっています。LTSリリースの「Ubuntu」は5年間の無償サポートを提供しており、この間ユーザーは継続的な品質及び機能性の確保、そしてメンテナンスが保証されます。
「Ubuntu」認定デバイス/ハードウェアの一覧は、以下で参照できます。
ハードウェアパートナーとの連携
「Canonical」はハードウェアパートナー(ベンダー・メーカー)が製造・販売するデバイスで「Ubuntu」を利用できるよう、ハードウェアパートナーと密に連携した取り組みを行っています。この時「Canonical」は以下の2つの目標を持って取り組んでいます。
1.UbuntuプリインストールPCの工場出荷時のディスクイメージ作成
「Canonical」が「OEMイメージ」と表現しているディスクイメージであり、そのPC固有の機能を動作させるのに必要な修正が行われているディスクイメージです。言い換えればそのPCに最適化された「Ubuntu」のディスクイメージです。
2.アップストリームへの還元
「OEMイメージ」の後にリリースされる「Ubuntu」の公式イメージでそのPCのコンポーネントを利用できるよう、「OEMイメージ」で行われた修正をアップストリームへ還元します。「Ubuntu」の公式イメージとは、一般にリリースされる「Ubuntu」のディスクイメージのことです。
普段幅広いユーザーが利用しているディスクイメージですね。
OEMイメージが必要な理由
OEMイメージが必要な理由です。1.特定のソフトウェアをデフォルトでインストールする必要がある
ハードウェアパートナーによっては、特定のソフトウェアをデフォルトでインストールする必要があったり、そのデバイスに追加された固有の機能を動作させたい場合があります。例えば「Dell」では独自のパーティション構成を導入し、Dell Recoveryツールをデフォルトでインストールしています。
これによりユーザーはシステムリカバリーを実行したり、リカバリーディスクの作成が可能です。
2.デバイスを動作させるため、特定のドライバーが必要になる
新しいデバイスの中には、アップストリームの「Linux kernel」のリリースでまだ提供されていないドライバーを必要とするものもあります。またLTSリリースの「Linux kernel」では提供されておらず、新バージョンの「Linux kernel」でのみ利用可能なドライバーもあります。
これらに対し「Canonical」は「OEM kernel」を提供することで、この課題に対応しています。
「Canonical」は、新しいテクノロジーのサポートや既存コンポーネントのサポート改良などが行われた最新のmainline kernelから必要な箇所をピックアップし、LTS版「Linux kernel」の安定性を維持しつつ「OEM kernel」に反映しています。
OEMイメージの作成とその取り組み
特定のPCに最適化したOEMイメージを作成するにあたり、「Canonical」内部の様々なチームがプロジェクトのすべての段階においてお互いに連携し取り組んでいます。PCに搭載されているデバイスが「Ubuntu」上で期待通りに動作するように、そして将来リリースされる「Ubuntu」でもそれらのデバイスがサポートされるように取り組んでいます。
Linuxコミュニティーがあってこそ
これらの取り組みはLinuxコミュニティーがあってこそ成し遂げられるものです。Linuxコミュニティーと「Canonical」のチームの連携なくして完遂できるものではありません。
フィールドエンジニアリング
フィールドエンジニアは、ハードウェアドライバーやファームウェア(BIOS/UEFI)に関連する問題を追跡するため、コンポーネントのベンダーやメーカーと常に連携しています。これにより早い段階で問題の把握や調査が可能になり、新しいファームウェアやドライバーのリリース時にテストやデバッグにこの取り組みを役立てることができます。
ハードウェア イネーブルメント エンジニアリング
ハードウェア イネーブルメント エンジニアは、「OEM kernel」の構築とメンテナンスを担当します。「OEM kernel」には、一般向けカーネルでは有効になっていない新しいハードウェアや新機能のサポート、不具合の修正が盛り込まれています。
「OEM kernel」で行われた修正は、最終的にすべてのユーザーがその利点を享受できるよう、一般向けカーネルに反映する作業も行われています。
またチームは「Firmware Test Suite(FWTS)」の開発とメンテナンスも行っています。
「FWTS」は「BIOS」「UEFI」「ACPI」など様々なエラーの区別や、エラーの修正方法を支援するオープンソースのソフトウェアです。
メインストリームエンジニアリング
このチームは、新しいデバイスが「Ubuntu」で利用可能になった時に、現在のLTSバージョンから特定のパートナー向けの機能や、適切なバージョンの「OEM kernel」、そして特定のデバイスを最適化するため調整や修正を含むイメージを生成します。「Dell」の独自のパーティション構成やDell Recoveryツールの導入が一例です。
そしてリリースされたすべてのイメージは、QAチームに渡す前に整合性をチェックするよう、自動テストを設定します。
品質保証
OEMイメージが出来上がると、QA(Quality Assurance)チームが「Checkbox」を使用して認定テストのテストスイートを実行します。「Checkbox」は、認定チームによって開発及びメンテナンスされているオープンソースのソフトウェアです。
テストスイートの実行によりQAチームは数百のテストを実施し、CPUやグラフィックカード、無線、タッチパッド、サスペンドとリジュームなどすべての機能が期待通りに動作するかチェックします。
もしテスト段階で問題が見つかればその不具合が報告され、問題の再現やデバッグそして修正に必要な情報と共に、問題の解決にあたる適切なチームが割り当てられます。
認定
「Ubuntu」の認定は、認定チームが行っています。認定チームは「Checkbox」や自動デバイステストツールなど、「Ubuntu」の認定に必要な様々な内部ツールの開発及びメンテナンスを行っています。
認定チームはUbuntu認定デバイスの門番として振る舞い、「Ubuntu」プリインストールデバイスの審査や実際の認定書の発行を行います。
基本的にデバイスに付けられている「Ubuntu」のロゴや「Ubuntu certified」の認証ロゴは、認定チームによる検印となります。
また認定チームは、Ubuntu認定デバイスの継続的な自動テストを実施する役割もあります。
認定チームは「Canonical」のラボでテスト実施し、最新のLinuxのアップデートでデバイスが正常に動作するか確認しています。
加えて認定デバイス向けの修正をアップストリームに還元し、あらゆるユーザーがその修正を利用できるよう、一般向けの最新版「Ubuntu」で認定デバイスのテストを支援しています。
プロジェクト管理
プロジェクトマネージャーは、各デバイスのプロジェクトが順調に進んでいることを確認し、様々なチーム(外部チーム及び内部チーム)が期限や納期の足並みを揃えられるように調整し、報告された各不具合が解決されているか確認します。そして仕上がったイメージは工場に送られ、「Ubuntu」プリインストールデバイスに搭載されます。
Ubuntuの認定作業を通じて行われた改良や修正をすべてのユーザーに
「Ubuntu Desktop 20.04 LTS」から「Ubuntu」の認定作業を通じて行われた改良や修正が、一般向けにリリースされた「Ubuntu Desktop」でも利用可能になります。つまり一般向けにリリースされた「Ubuntu Desktop」を認定デバイスにインストールすれば、そのデバイス向けの工場出荷時のイメージのように、デバイス固有の機能をサポートするのに必要なインストールと設定を自動的に行います。
「Ubuntu」認定デバイスであれば、「Windows」がインストールされていても「Ubuntu」を簡単にインストールできるようになります。
また同様に海外で販売されている「Ubuntu」認定デバイスが、国内では販売されていなくても、同じモデルであれば「Ubuntu」を簡単にインストールできるようになります。