Ubuntu Weekly Recipe

第337回 12.04から14.04へアップグレードする際に気をつけるべきこと

この記事を読むのに必要な時間:およそ 6.5 分

先日Ubuntu 14.04.1 LTSがリリースされました。そこで今回は,前回のLTSであるUbuntu 12.04から,最新のLTSであるUbuntu 14.04へアップグレードする際に知っておいたほうが良いこと,注意すべき内容をご紹介します。

LTSとポイントリリースのおさらい

既にLTSであるUbuntu 12.04をお使いの方ならご存知だとは思いますが,Ubuntuの長期サポート(Long Term Support)とポイントリリースについておさらいしておきましょう。ちなみにSoftware Designの2014年6月号には,あわしろいくやさんによる詳しい解説もありますので,興味のある方はそちらも併せて参照してください。

なお,ここで説明する話はあくまで2014年現在の情報に基づいています。これまでにも何度かあったように,サポート期間やその提供方法はコミュニティを取り巻く状況やCanonicalのお財布事情に合わせて変わって行きます。

長期サポート(LTS)について

Ubuntuは4月と10月,半年毎の定期的なリリースを行っています。通常のリリースのサポート期間は9ヵ月です。よって,10月にリリースされたバージョンは次の4月のリリースの3ヶ月後にはサポート期限を終えます。サポート期限の終了を「EOL(End of Life)」と呼び,より新しいリリースへのアップグレードを呼びかけるアナウンスが流れます。たとえば,2013年10月にリリースされた13.10は7月17日にEOLを迎えました。よって,12.04以降の通常リリースを使っている方はほとんど既に14.04にアップグレードされていることでしょう注1)。

通常のリリースとは別にUbuntuでは2年に1回,より長期間のサポートを行う長期サポート版(Long Term Support)をリリースします。LTSでは原則として5年間のサポート期間が設けられています。つまり通常のリリースが次のリリース後それほどせずにアップグレードする必要があるのに対して,LTSでは「次の次のLTS」がリリースされるまでは同じバージョンを使い続けることができるわけです。

前回のLTSは2012年4月にリリースされた12.04でした。そして2年後の2014年4月にリリースされた14.04もまたLTSとなります。12.04は2017年,14.04は2019年までサポートされます。

フレーバーやリミックスといった公式の派生物となるKubuntuやXubuntuのLTS対応やその対応期間についてはその開発コミュニティの判断を基にTechnical Boardが決定しています。詳しくは14.04リリース時のアナウンスを参照してください。

ではこの「サポート」とはなんでしょうか。Ubuntuにおいては,おもに次の3つが提供されることを意味しています。

  • main,restrictedコンポーネントに対するセキュリティチームによるセキュリティアップデート
  • universe,multiverseコンポーネントに対するコミュニティによるアップデート
  • 最新のパッケージを配信するアーカイブサーバー

ちょっとややこしいのですが,Ubuntuは「コミュニティによって」開発されているLinuxディストリビューションです。Canonicalはその開発コミュニティを金銭的に支援しているに過ぎません。よってUbuntuにおける「オフィシャル」とは「開発コミュニティ」を指します。Canonicalではありません。少なくとも建前上は。

Canonicalは開発コミュニティ支援の一貫として,セキュリティチームメンバーをフルタイムワーカーとして雇っています。オフィシャルの開発コミュニティによるセキュリティサポートは,セキュリティチームによるサポートであり,結果的にCanonical社員によるセキュリティサポートとなっています。universe,multiverseの「コミュニティによる」は,セキュリティチーム以外の開発コミュニティも担当するアップデートということになります。

「main,restricted,universer,multiverse」は,コンポーネントと呼ばれるパッケージのカテゴリーの一種です。セキュリティチームによるメンテナンスが行われるかどうか,と,フリーソフトウェアであるかどうかをおもな判断基準として振り分けられています。

さて気を付けなければいけないのは,サポート期間において最も重要である「セキュリティアップデート」はmain,restrictedコンポーネントに対してのみ保証されているということです。もちろんuniverseやmultiverseのコンポーネントに対してもセキュリティアップデートは行われますが,これはボランティアで構成される開発コミュニティによる作業となりますので,場合によってはいつまでたっても修正されないということも起こり得ます。同様にLTSもあくまでmainコンポーネントに対するサポート期間ですので注意してください注2)。

注1)
まだの方は早くアップグレードしてください。お願いします。なんでもはしませんから。
注2)
このあたり,Canonicalのサポートビジネスがうまくいけばもう少しなんとかなるのかもしれませんので,手は出せないが金はあるという奇特な方はUbuntu Advantageの購入も考えてみてください。

ポイントリリースについて

ポイントリリースは,LTSのリリース後に一定期間ごとに提供される,最新のアップデートを適用したインストールメディアです。

LTSは5年間サポートが継続します。リリース後もさまざまなパッケージがアップデートされますので,リリース時のインストールメディアを使ってインストールした場合,インストール直後にかなりの数のパッケージをアップデートする必要が出てきます。これは手間がかかるうえに,セキュリティ的にもネットワーク的にもあまり嬉しくありません。

そこでLTSでは,LTSのリリースから数ヵ月後に1度,さらにその後の通常リリースから数ヵ月後に1度ずつ次のLTSがリリースされるまで,それまでのアップデートを適用したインストールメディアを「ポイントリリース」という形でリリースしています。

ポイントリリースではバージョン番号の後ろに数字を追加します。14.04の最初のポイントリリースは7月25日にリリースされた14.04.1ですし,12.04の5回目のポイントリリースは12.04.5です。後述するHWEに関する例外を除いて,アップデート適用済みのインストーラーと言う位置付けなので,普通にLTSをインストールした環境をアップグレードして言っても,ポイントリリースと同じ環境になります。

たとえば14.04をインストールした環境を最新の状態にアップグレードしていれば,次のように「14.04.1」と表示されていることでしょう。

$ lsb_release -d
Description:    Ubuntu 14.04.1 LTS

LTSでは,HWE(Hardware Enablement) Stacksという名前で,より新しいカーネルやドライバー,それを動かすためのソフトウェアを提供しています。ポイントリリースでは,このHWEが適用済みの状態でインストールされるため,14.04のリリース時には不具合があったり,ドライバーがないことによってインストーラーが動作しなかったハードウェアに対しても,Ubuntuをインストールできるようになっている可能性があります。

ちなみにLTSをインストールした状態から普通にアップデートするだけではHWEは適用されません。HWE用のパッケージをインストールする必要があります。また12.04において,12.10から13.10までのHWEを適用した場合,今後それらのHWEは更新されませんので早急に14.04のHWE(パッケージ名にtrustyと名前のついているHWE)を適用してください。Server版であれば,おそらくログイン時に次のようなメッセージが出ているはずです注3)。

14.04のHWEパッケージをインストール済みの場合:
Your Hardware Enablement Stack (HWE) is supported until April 2017.

グラフィカルスタックもインストールしている場合:
There is a graphics stack installed on this system. An upgrade to a
supporte (or longer supported) configuration will become available
on %(date)s and can be invoked by running 'update-manager' in the
Dash.

コマンドで確認したい場合:
$ hwe-support-status
Your Hardware Enablement Stack (HWE) is supported until 4月 2017.

HWEに関しては第278回の記事でも紹介していますが,Software Designの2014年6月号のほうがより詳しく最新の情報に追随しています。

注3)
今は英語ですが,Language Packがアップデートされたら,メッセージも日本語になるはずです。

LTSからLTSへのアップグレードについて

LTSは2年ごとにリリースされますのでLTSの間には3回の通常リリースをはさんでいます。あるLTSから次のLTSにアップグレードしたいとき,この通常リリースを経てアップグレードを行うのは手間がかかりますし,そもそもサポートが切れたリリースを使うことはセキュリティを考えると現実的ではありません。そのためLTSでは,LTSからLTSへと直接アップグレードする仕組みを用意しています注4)。

Ubuntuは次のバージョンが正式にリリースされたら,アップデートマネージャーで,リリースされたこととアップグレードを促す通知が表示されます。しかしながらLTSの場合は,次の通常版をリリースしてもアップグレード通知が行われず,「次のLTSの最初のポイントリリースをリリース」してはじめてアップグレード用のメタデータが更新され,アップグレード通知が表示されるようです注5注6)。

 アップデートマネージャーによる通知

アップデートマネージャーによる通知

アップグレードの手順はとてもかんたんで,デスクトップ版であればアップデートマネージャーの指示に従うだけ,サーバー版であれば以下のコマンドを実行するだけです注7)。

$ sudo apt-get install update-manager-core
$ sudo do-release-upgrade

アップグレード中いくつか問い合わせ画面が表示されますので,適宜回答を行ってください。時間はかかりますが最終的にアップグレードが反映されて再起動したらアップグレード完了です。

注4)
Ubuntu 10.04 LTSのServer版を使っている場合は,一度12.04 LTSを経由する必要があります。一足飛びに14.04に上げることはできません。
注5)
とくにそうすると言ったルールを示した文書は見つからなかったのですが,12.04からそういう慣習になっているようです。慣習といっても今回が2回目なのですが。リリースノートではポイントリリースまで待つことを推奨しています。
注6)
LTSがリリースされるまでアップグレード通知を待つかどうかは,/etc/update-manager/release-upgradesでコントロールできます。
注7)
アップデートマネージャーやdo-release-upgradeは,LTS用のメタデータを見ています。8月11日に14.04.1が追加されたので,アップグレード通知がきているはずです。もしメタデータが用意される前にアップグレードしたい場合はアップデートマネージャーならAlt+F2で「update-manager -d」やサーバーなら「do-relase-upgrade -d」やど「-d」オプションを付けて実行してください。ちなみに、この記事を入稿後にあわしろいくやさんが気づかれたのですが,現在の12.04は日本語環境だとアップグレード通知がエラー終了する問題が存在します。詳しくはリンク先の情報を確認してください。

著者プロフィール

柴田充也(しばたみつや)

Ubuntu Japanese Team Member。数年前にLaunchpad上でStellariumの翻訳をしたことがきっかけで,Ubuntuの翻訳にも関わるようになりました。

コメント

コメントの記入