ローリングLTS Enablement Stackモデルの採用
「Ubuntu 16.04」では、「ローリングLTS Enablement Stack」モデルの採用が予定されています。「Ubuntu 16.04.2」からこの新しいモデルを採用し、今後リリースされるLTSリリースの「Ubuntu」でもこのモデルが採用されることになるでしょう。
次期LTSリリースの「Ubuntu」のバージョンは、「Ubuntu 18.04」です。
現在のXenialのリリーススケジュールによれば、Ubuntu 16.04.2 LTSポイントリリースは、2017/1/19に設定されている。
今までのポイントリリース同様、我々はより新しいHardware Enablement Kernel(HWEカーネル)をポイントリリースで提供する。
この新しいHWEカーネルは、Ubuntu 16.10(Yakkety)で採用されたLinux Kernelであり、Linux Kernel 4.8をベースとしている。
変更点の中に我々が確実に伝えたい変更点がいくつかある。
最も大きな変更点は、ローリングHWEカーネルモデルへの移行である。
基本的にコンシューマー向けHWEカーネルは、次のHWEカーネルがリリースされれば自動的にアップグレードされる。
このアップグレードは最終的にUbuntu 16.04.5まで行われる。
この仕組みについては、RollingLTSEnablementStackに詳細が記述されている。
加えてUbuntu Server 16.04.2のイメージでは、GAカーネルとHWEカーネルがオプションとして提供される。
GAカーネルがデフォルトのオプションになる。
Ubuntu Desktopのイメージでは、引き続きHWEカーネルのみが提供される。
「Xenial」は「Ubuntu 16.04」のコードネームです。
「Xenial」は「Ubuntu 16.04」を指していると思ってもらって構いません。
ポイントリリース(Ubuntu 16.04.x)も対象です。
注意
いわゆるローリングリリースとは無関係です。Ubuntu Desktopへの影響
「Ubuntu Desktop」は従来通り「LTS Enablement Stacks」に従い、「HWEカーネル」や「Xスタック」を利用できますが、「HWEカーネル」や「Xスタック」のサポート期間に変更があります。普段「Linux Kernel」や「Xスタック」のバージョンを気にしていないなら、今回の変更は特に気にしなくても良いでしょう。
そうではないユーザーにとっても影響はほとんど無いでしょう。
LTS Enablement Stacks
「HWEカーネル」に関連する「LTS Enablement Stacks」から紹介します。「LTS Enablement Stacks」の主な目的は、新しいハードウェアへの対応です。
LTSリリースの「Ubuntu」では、5年間の長期サポートが提供されます。
この5年の間に新しい様々なハードウェアが市場に投入されます。
「Ubuntu」のリリースよりも後にリリースされた新しいハードウェアは、その「Ubuntu」ではドライバーが存在していない等の理由により、利用できないケースがあります。
例えばGPU(グラフィックカード)は、このケースに該当しやすいでしょう。
そこでLTSリリースの「Ubuntu」では、「LTS Enablement Stacks」という仕組みを導入し、LTSリリース後にリリースされた通常リリースの「Ubuntu」の「Linux Kernel」や「Xサーバー」等の「Xスタック」を、LTSリリースの「Ubuntu」に導入することで、リリース後の新しいハードウェアにも対応させています。
この新しい「Linux Kernel」や「Xスタック」の導入は、次のLTSリリースまで行われます。
「Linux Kernel」や「Xスタック」のバックポートですね。
「Ubuntu 14.04」に「Ubuntu 16.04」の 「Linux Kernel」や「Xスタック」を手動でインストールすることもできます。
LTSユーザーにとって嬉しい仕組み
「LTS Enablement Stacks」により、LTSリリースの「Ubuntu」は新しいハードウェアへの対応が可能になります。通常リリースの「Ubuntu」はサポート期間が9ヶ月しかなく、半年ごとに新しいバージョンにアップグレードしていくことになります。
LTSリリースの「Ubuntu」のみを利用していけば、安定した環境や同じアプリ(GUI)を継続的に利用でき、しかもアップグレードも半年ごとに行う必要がなく(2年か4年ごと)、日々の作業に「Ubuntu」を利用しているユーザーにとっておすすめの選択です。
「LTS Enablement Stacks」のおかげで、LTSリリースの「Ubuntu」を利用したいがハードウェアが新しくLTSリリースの「Ubuntu」が利用できない、といった状況も回避しやすくなります。
Ubuntu 14.04の例
LTSリリースである「Ubuntu 14.04」の例を見てみます。「Ubuntu 14.04」では、以下のポイントリリースが行われています。
- Ubuntu 14.04.1
- Ubuntu 14.04.2
- Ubuntu 14.04.3
- Ubuntu 14.04.4
- Ubuntu 14.04.5
上記のポイントリリースと「LTS Enablement Stacks」による「Linux Kernel」や「Xスタック」の関連性をまとめると、以下のようになります。
ポイントリリース | Linux Kernelの 導入元バージョン |
Xスタックの 導入元バージョン |
---|---|---|
Ubuntu 14.04.1 | Ubuntu 14.04と同じ | Ubuntu 14.04と同じ |
Ubuntu 14.04.2 | Ubuntu 14.10 | Ubuntu 14.10 |
Ubuntu 14.04.3 | Ubuntu 15.04 | Ubuntu 15.04 |
Ubuntu 14.04.4 | Ubuntu 15.10 | Ubuntu 15.10 |
Ubuntu 14.04.5 | Ubuntu 16.04 | Ubuntu 16.04 |
見ての通り、最終的に「Ubuntu 16.04」の「Linux Kernel」や「Xスタック」が「Ubuntu 14.04」で利用できるようになっています。
「Ubuntu 16.04」はLTSリリースであり、「Ubuntu 14.04」の次のLTSリリースであるため、「Ubuntu 16.10」以降の「Linux Kernel」や「Xスタック」が「Ubuntu 14.04」に導入されることはありません。
最終的にサポートされるLinux KerneとXスタック
上記の表より「Ubuntu 14.04」では、「Ubuntu 14.10」から「Ubuntu 16.04」で採用された「Linux Kernel」や「Xスタック」を利用できるということになります。しかしサポート期限に違いがあります。
最終的に「Ubuntu 14.04」でサポートされる「Linux Kernel」と「Xスタック」は、以下の2種類になります。
- Ubuntu 14.04リリース時に採用されたLinux KernelとXスタック
- Ubuntu 16.04で採用されたLinux KernelとXスタック
現在「Ubuntu 14.04」では、「Ubuntu 14.10」から「Ubuntu 15.10」で採用された「Linux Kernel」や「Xスタック」のサポートは終了しています。
「Ubuntu 14.10」から「Ubuntu 15.10」で採用された「Linux Kernel」や「Xスタック」は、次のLTSリリースである「Ubuntu 16.04」の「Linux Kernel」や「Xスタック」が利用できるようになるまで、並行してサポートされています。
それまでユーザーは、自分が利用したい「Linux Kernel」や「Xスタック」が選択できるということになります。
もしサポートが切れた「Linux Kernel」や「Xスタック」を利用している場合、サポートされている「Linux Kernel」や「Xスタック」にアップグレードすることになります。
アップグレードは案内が出るので、それに従うだけです。
HWEカーネルとは
ここで言うカーネルとは「Linux Kernel」のことです。「LTS Enablement Stacks」の仕組みの中で提供される新しいバージョンの「Linux Kernel」のことです。
上記の「Ubuntu 14.04」の例で言えば、「Ubuntu 14.04.2」から「Ubuntu 14.04.5」にかけて導入された「Linux Kernel」のことです。
言い換えれば「Ubuntu 14.04」リリース時に採用されたオリジナルの 「Linux Kernel」ではないということです。
「HWE」は「HardWare Enablement」のことです。
Ubuntu 16.04で何が変わるのか
まず「Ubuntu 14.04」の例のように「Ubuntu 16.04」のポイントリリースと「Linux Kernel」や「Xスタック」の関連性をまとめると以下のようになります。ポイントリリース | Linux Kernelの 導入元バージョン |
Xスタックの 導入元バージョン |
---|---|---|
Ubuntu 16.04.1 | Ubuntu 16.04と同じ | Ubuntu 16.04と同じ |
Ubuntu 16.04.2 | Ubuntu 16.10 | Ubuntu 16.10 |
Ubuntu 16.04.3 | Ubuntu 17.04 | Ubuntu 17.04 |
Ubuntu 16.04.4 | Ubuntu 17.10 | Ubuntu 17.10 |
Ubuntu 16.04.5 | Ubuntu 18.04 | Ubuntu 18.04 |
「Ubuntu 16.04.2」以降及び「Ubuntu 17.04」はまだリリースされていないため、あくまで予定である、という点に注意してください。
ただ今までの慣例に従えば上記の通りになりますし、おそらくその通りになるでしょう。
1.サポート期間の変更
以下の図を見ると、通常リリース(Ubuntu 16.04.2〜Ubuntu 16.04.4)から導入された「Linux Kernel(=HWEカーネル)」と「Xスタック」のサポート期間が変更されています。例えば「Ubuntu 16.04.2」で導入される「HWEカーネル」と「Xスタック」は、「Ubuntu 16.10」の「Linux Kernel」と「Xスタック」です。
この「HWEカーネル」と「Xスタック」のサポート期間が、次のバージョンの「HWEカーネル」と「Xスタック」がリリースされるまで、となっています。
従って「HWEカーネル」と「Xスタック」を利用する場合は、次々に新しい「HWEカーネル」と「Xスタック」にアップグレードしていくということになります。
そのアップグレードは最終的に「Ubuntu 18.04」の「Linux Kernel」と「Xスタック」を導入するまで続きます。
「Ubuntu 14.04」と異なり、次のLTSの「Linux Kernel」と「Xスタック」が利用できるようになるまで、並行して「HWEカーネル」と「Xスタック」がサポートされる、ということはありません。
石が転がるように次々とアップグレードしていくため、ローリングと表現されます。
一方で「Ubuntu 16.04」リリース時に採用されたオリジナルの「Linux Kernel」と「Xスタック」は、「Ubuntu 14.04」と同じように最後までサポートが行われます。
2.GAカーネルとHWEカーネル
「HWEカーネル」については、上記で紹介したとおりです。ここで新たに「GAカーネル」という言葉が出てきました。
「Ubuntu Server」では、「GAカーネル」と従来通り「HWEカーネル」が利用できるようになります。
「Ubuntu Server」のディスクイメージでは、デフォルトで「GAカーネル」が採用され、オプションで最新安定版の「HWEカーネル」が利用できます。
GAカーネルとは
「GAカーネル」とは、「Ubuntu」リリース時に採用されたオリジナルの 「Linux Kernel」のことです。従って「Ubuntu 16.04」では、「Linux Kernel」バージョン「4.4」のことを指します。
「HWEカーネル」の対になる言葉だと思ってもらえればよいです。
「GAカーネル」は5年間のサポートが行われ、「Ubuntu」のサポートが終わるまでアップデートが提供されます。
Ubuntu Desktopは対象外
「Ubuntu Desktop」では従来通り「HWEカーネル」が同梱されます。3.自動的なアップグレード
「HWEカーネル」は次の「HWEカーネル」がリリースされれば、自動的にアップグレードできるようになります。3種類のカーネルパッケージ
「GAカーネル」と「HWEカーネル」を提供するにあたり、それぞれのカーネルに対応したパッケージが提供されます。1.GAカーネル用パッケージ
「GAカーネル」を提供するパッケージには、以下の2種類のメタパッケージがあります。- linux-generic
- linux-lowlatency
オリジナルのカーネルですので、見慣れたパッケージかと思います。
「generic」や「lowlatency」は「Linux Kernel」のフレーバー(種類)を表します。
「Ubuntu」ではデフォルトで「generic」を採用しています。
従来通り、自動的なアップデートが可能です。
2.HWEカーネル用パッケージ(安定版)
安定版の「HWEカーネル」を提供するパッケージには、以下の2種類のメタパッケージがあります。- linux-generic-hwe-16.04
- linux-lowlatency-hwe-16.04
これらのメタパッケージは適切なバージョンの安定版「HWEカーネル」パッケージを指し、新しい安定版「HWEカーネル」がリリースされれば、新しい安定版「HWEカーネル」を指すようになります。
つまり自動的なアップグレードが可能になります。
3.HWEカーネル用パッケージ(開発版)
開発版の「HWEカーネル」を提供するパッケージには、以下の2種類のメタパッケージがあります。開発版とは、次にリリースされる「HWEカーネル」のことです。
- linux-generic-hwe-16.04-edge
- linux-lowlatency-hwe-16.04-edge
これらのメタパッケージは適切なバージョンの開発版「HWEカーネル」パッケージを指し、新しい開発版「HWEカーネル」がリリースされれば、新しい開発版「HWEカーネル」を指すようになります。
Linux Kernelのライブパッチサービスについて
現時点では、「HWEカーネル」はCanonicalライブパッチサービスの対象外です。ライブパッチサービスの対象となるカーネルは、64bit版(x86_64/amd64)「GAカーネル」かつ、フレーバーが「generic」もしくは「lowlatency」のカーネルだけです。