Ubuntu日和
【第50回】2年ぶりのLTSであるUbuntu 24.04 LTSがリリースされた!変更点をご紹介!
2024年4月27日 06:24
2024年4月25日に2年ぶりのLTS(長期サポート版)である「 Ubuntu 24.04 LTS 」がリリースされた。今回はこの24.04の新機能や変更点、さらに開発期間中の苦労話について紹介しよう。
ちなみに「リリースされた」と言い切っているのだが、ここだけの話として、この記事を書いている時点ではまだリリースされていない。Ubuntuの場合は「4月25日リリース」だと「日本時間の4月26日の午前中」ぐらいまでにはリリースされるのが一般的なので、おそらくリリースされているはずだ。もし本記事の公開日である4月27日まで経ってもリリースされていないのだとすると、何か重大な問題が起きたということで、わくわくして待っていてほしい。
多くのユーザーが利用する長期サポート版
最初に「Ubuntu 24.04 LTS 」の位置づけについて説明しておこう。本連載の第1回でも紹介しているように、Ubuntuの特徴のひとつが「 タイムベースのリリース 」だ。
現在のUbuntuは次のタイミングでリリースされる。
- 1年に2回、4月と10月にリリースする
- バージョン番号は西暦下ふた桁と月を使って「YY.MM」とする
- 各リリースのサポート期間は9カ月
- 2年に1度、偶数年の4月に「長期サポート版(Long Term Support:LTS)」をリリースする
- LTSのサポート期間は5年(有償サポート込みで最大12年)
- サポート期間はセキュリティアップデートが提供される
このようにUbuntuではリリース時期とサポート期間をはっきりさせ、その仕組みを2004年の4.10の登場から20年近く、1度の例外(2006年の6.06)を除いて守っているために、個人ユースからエンタープライズサーバーに至るまで、広く使われるLinuxディストリビューションに成長した。
さて、俄には信じがたいことではあるが、今年は2024年である。一部の読者はまだ2023年が終わっていないかもしれないものの、残念ながら暦の上では2024年である。どんなにタイムリープしたところで2024年になる現実は変えられない。つまり2年ぶりの長期サポート版のリリース時期なのだ。
Ubuntu 24.04 LTSは5年サポートされる。つまり2029年までは使える。次のLTSである26.04だけでなく、その次のLTSである28.04がリリースされるぐらいまでは使い続けられると思っておけばいいだろう。
さらに有償サポート(Ubuntuアカウントを作れば5台までなら無料でも利用可能)であるUbuntu Proを導入すれば、プラス5年の2034年まで延命できる。最近、プラス2年延長できる(合計12年になる)「 Legacy Support 」もアナウンスされた。こちらは完全に有償になるため、個人で導入することはあまりないとは思うが、最大で2036年まで使えるわけだ。
いずれにせよ、最近のUbuntuユーザーは「LTSだけを使っている」ことが多い。Ubuntuはリリース間のアップグレードを提供しているのだが、前回リリースされたLTSからの一足飛びのアップグレードもサポートしているからだ。
たとえば、今回リリースされた24.04は前回のLTSである22.04から直接アップグレードできる。アップグレードはそれなりに気合と心構えの必要な作業になるので、短くとも2年以上は使い続けられたほうが嬉しいだろう。
よって今回は、22.04のユーザーが24.04にアップグレードすることを想定して、22.04に対する新機能を中心に紹介しよう。ちなみにLTSは5年サポートなので、20.04の利用者はあと1年ぐらいでサポートが切れることになる。そろそろ移行について検討したいところだ。
Ubuntu 24.04 LTSの新機能
それではUbuntu 24.04 LTSの新機能の紹介をしていこう。Ubuntuは開発期間中にコードネームを付ける慣習がある。24.04のコードネームは「 Noble Numbat(高貴なフクロアリクイ) 」だ。そのため24.04を「noble」と呼ぶことも多いし、最近は壁紙などもコードネーム由来になっていることも多い。今回の壁紙では、「noble」を王冠であらわし、王冠の中にフクロアリクイが居るおしゃれな感じになっている。
デスクトップ関連機能を重点的に紹介すると、Ubuntu 22.04 LTSからの大きな変更点は次のようになるだろう。
- インストーラが刷新
- 初期状態でインストールされるソフトウェアの見直し
- アプリセンターの追加
- クイック設定パネルの刷新
- タイルっぽいウィンドウ管理
順番に見ていこう。
Ubuntuは2006年から「 Ubiquity 」と呼ばれるインストーラを採用していた。これはUbuntuの「かんたんにインストールできる」という特徴を担う存在だった。20年近くこのUbiquityを、時代に合わせて改造して使い続けてきたものの、そろそろコードベースが古くなり新しい機能が追加しづらくなってもいた。
そこでUbuntu 24.04 LTSでは(正確には23.10から)、Flutterを用いて抜本的に作り直し、サーバーとインストール処理を共通化した新しいインストーラを採用することになった。ちなみに名前(とコードリポジトリ)はころころ変わっているおり、今後も変わるかもしれないので「新しいインストーラ」としか言えない状況だ。
このインストールオプションが「初期状態でインストールされるソフトウェアの見直し」だ。
まず、インストールオプションの「既定の選択」は、「最小インストール」に近い内容の設定となっている。とりあえずWebブラウザと端末アプリぐらいがインストールされていれば良く、それ以外はあとから追加したい人向けの設定だ。最近はオフィス系ツールもWebブラウザから使うことが増えてきたため、「必須」とは言えなくなってきたということなのだろう。将来的な「Immutable Desktop」も視野に入れた措置だとは思われるが、これについてはまた別の機会に紹介しよう。
それに対して「拡張選択」はオフィス系ツールが入る。具体的にはLibreOfficeやメーラー、音楽/動画プレイヤーなどだ。いずれも仕事中にお世話になる定番のツールと言えるだろう。インストール後に、改めてソフトウェアをインストールせずともそこそこ使える状態にしたいなら「拡張選択」を選ぶと良いだろう。
Ubuntu本体のインストーラだけでなく、ストアアプリも「 アプリセンター 」としてFlutterで再実装されている。従来の「もっさり」感が若干解消され、シンプルなインターフェイスになった。
「クイック設定パネル」は画面右上にある各種インジケータ領域をクリックすることで表示される操作パネルだ。Wi-Fi/Bluetoothの接続やサウンドデバイスの切り替えなどのよく使う設定は、設定画面を開かなくてもここからワンタッチで変更できる。
「タイルっぽいウィンドウ管理」とは、ウィンドウをタイル状に配置するための機能で、最近のWindowsで言うところの「スナップ機能」が一番イメージに近いだろう。Linuxではもともと「タイル型ウィンドウマネージャー派」という、デスクトップをできるだけ効率よく利用し、ウィンドウの配置・サイズ変更をすばやく行なうことを重視した勢力が存在する。UbuntuでもGNOME ShellのTiling Assistant拡張機能を最初からインストールすることで、このタイル型機能のサブセットを使えるようになった。
ほかにもあるウィンドウを右半分のサイズに変更した時、左半分のウィンドウをどれにするか選択できたりもする。ただし現状はシンプルな機能だけが使えるようになっている。またキーボードショートカットも変更できない。代表的なショートカットをあげておこう。「Superキー」とは、一般的にはWindowsキーを意味する。
- Super + 右矢印:ウィンドウを右半分のサイズにする
- Super + 左矢印:ウィンドウを左半分のサイズにする
- Super + 上矢印:ウィンドウを最大化する
- Super + 下矢印:ウィンドウサイズをもとに戻す
- Super + テンキーの1-9:ウィンドウをテンキーの位置に相当する場所にポジショニングする
最後のキーは、たとえば「9」を押すと右上4分の1のサイズに配置する形だ。ほかにもタイル配置されたウィンドウの境界をドラッグすると、そのサイズを自由に変更できる。
実はタイル型の操作はキーボードショートカットを駆使することで、その真価を発揮する。Tiling Assistantにもキーボードショートカットを変更する仕組みが存在するのだが、現時点ではそのUIは用意されていない。もし変更したい場合は、次のように設定ツールをインストールしよう。
$ sudo apt install gnome-shell-extension-prefs
$ gnome-shell-extension-prefs
あとは「Ubuntu Tiling Assitant」の一番右のアイコンをクリックし、「Settings」を選ぶと良い。
ほかにも「APTリポジトリの設定フォーマットが変更された」とか「Rustでカーネルドライバーを書けるようになった」とか、下回りでは大きな機能がいくつも存在する。これらの更新により、新しいリリースは基本的に、高速化され・高機能になり・よりセキュアになっていると考えれば良いだろう。もちろん、同じ理由で新しい不具合が入り、特定のデバイスでの性能が下がることも起こりうる。このあたりはどうしても、全員が幸せになれるわけではないことを留意していて欲しい。
アップグレードの注意点
古いリリースからのアップグレードに関する注意点も紹介しておこう。一般的な話は第5回の後半も参考にして欲しい。気をつけるポイントは次の4点だ。
- まずはリリースノートを読もう
- バックアップはとっておこう
- 可能なら再インストールがおすすすめ
- 最後にリリースノートをもう一度読もう
Ubuntuのリリースノートには、「今回の新機能! 」とは別に「 既に見つかっている、はまるとやばい不具合 」が掲載されている。アップグレードするのであれば、まずはここを一読することを強く、強くおすすめする。具体的には「 既知の不具合 」と題した項目以降だ。リリースノートの真ん中あたりには、たまにプリンタ関連の長大な講義とか、IBMのメインフレーム用専門用語たっぷりの機能紹介とかが混じっていることがあるが、そこはすっ飛ばして良い。
日本語版についてはリリースされてから数日ないし1週間程度で公開される。急いでいる場合は英語版を読むと良いだろう。
また、現在Ubuntu 22.04 LTSを使っている場合は、第47回でも紹介した「 ポイントリリース 」の24.04版(24.04.1)が登場するまで待つことになる。これはおおよそ半年に1回、各種セキュリティアップデートを適用した状態でリリースされるインストールメディアだ。1回目のポイントリリースは比較的はやくおおよそ7月末から8月頭にかけてリリースされる。これはLTSリリース後に見つかるであろうさまざまな問題を一通り修正したものだと思って欲しい。
実際Ubuntuのアップデートマネージャーも24.04のアップグレード可能通知は、最初のポイントリリース(24.04.1)がリリースされてから行なうことになっている。
ただしポイントリリース前のLTSを使う人が少ないと、それはそれで不具合の洗い出しが行なえないということになる。特に業務で24.04を使うつもりである場合は、できれば早い段階でテスト環境で24.04をインストールし、問題を報告してほしい。
今回のリリースの苦労話
最後にちょっと技術的な小話を。普通の人には関係ない話ではある。
Ubuntu 24.04 LTSは近年稀に見る「難産」だった。そもそも開発中もインストーラがまともに動作する期間が極端に短かった。ベータ版がリリースする直前も、「インストーラは完了するが、実はパッケージはほとんど何もインストールされない」みたいなわけの分からない状態にもなっていた。
今回のリリースでは大きな課題として「 2038年問題の対応 」が存在していた。2038年問題とは、Ubuntuを含むLinux/Unix系のOSの32bit版では、歴史的な経緯から時刻情報の内部表現(time_t型)を符号付きの32bitの整数として扱っていたことに起因する問題だ。
Linux/Unix系OSでは「1970年1月1日0時0分0秒」からの秒数をtime_tの中に保持するようになっているため、符号付きの32bitだと、1970年から「2^31-1」秒を経過したおおよそ日本時時間2038年1月19日の正午を過ぎたあたりでオーバーフローしてしまう(結果的に負の値になってしまう)。つまりそれ以降の時刻を正しく扱えなくなってしまうわけだ。そんな理由から「2038年問題」というのはLinux/Unix系OSについては大きな問題として古くから言及されてきた。
「2038年」と言うと、24.04のサポート期限が最大でも2036年であることを考えると、今回のリリースでは対応しなくてもいいような気がする。ただ2036年4月の時点になると「あと3年弱の問題」ではあるし、3年後のカレンダーがうまく表示できないというのは、多少の不便さは感じる。そして何よりDebian側で、2023年から本格的に対応が始まることになった。そこでUbuntuでも24.04のリリースに向けて、Debianの他の修正と一緒にそれらの対応を取り込む必要がでてきた。
問題はその対応が想定上に遅れたことだった。当初1月の時点である程度解消されていることが期待されていたのだが、3月になっても大量のパッケージが「ビルド待ち」という形で、ほかのパッケージのビルドを阻害している状態に陥っていた。
実は現在主流である64bit系のOSであれば、time_tは符号付き64bit整数になっている。つまりあと3,000億年ぐらいは安心して使い続けられるため、長命種でもない限りは心配しなくて良い。問題は古いRaspberry Pi向けなどに作られているイメージだ。こちらは64bit版と並行して32bit版も提供しているため、将来的には2038年問題が起きうる。
Ubuntuにおいて32bit版のRaspberry Piは、ほかに比べて優先度が低くなりつつある。そこで結局、リリースチームとしてこれ以上はスケジュールに影響を与えるのはまずいということで、2038年問題に限定される修正はなるべく先送りにする判断がくだされた。それにより、数多くのパッケージが「ビルド待ち」状態から解消され適切にテストされるようになった。
という話をしていたのが3月半ばのこと。これでようやくベータに向けて準備ができると思っていた3月29日に、特大の爆弾が放り込まれる。それが「 XZ Utilsのバックドア (CVE-2024-3094)」だ。幸いUbuntuとしては、このバックドアはリリース版にも開発版にも取り込まれることはなかった。しかしながら、バックドアを仕込んだ本人と思われるアカウントがバックドア発見の直前にUbuntuにもバックドア入りのバージョンの取り込み依頼を行なうなど、少なからず影響は受けている。実際、ビルド自体は進んでいて、まもなく開発版に取り込まれるかもしれないという間一髪の状況ではあった。
結果的に影響はなかったとは言え、ビルドは行なおうとしていたという状況を踏まえて、2月26日以降に変更があった開発版の全パッケージを再ビルドすることになった。つまり再びビルド大会になったのである。その結果として、本来4月4日にリリースされるはずだったベータ版も、4月11日に延期している。
このように、ただでさえインストーラを刷新したばかりなのに、多くのパッケージのビルドができなかったり、ビルド自体をやり直したりみたいな状況が重なった結果、ベータ版直前でもインストールがうまく動かなかった状況になってしまったのだ。リリース直前でも、アップグレードがうまくいかないみたいな報告があがっており、本当に4月25日にリリースできるのかは、その直前までやきもきすることになるだろう。
ちなみにUbuntuにおける「リリース」とは、アナウンス用のメーリングリストへの投稿をもって正式にリリースされたと判断する。たまにリリースイメージの配布場所にファイルが置かれた時点で「リリースされた! 」と、Xなどに投稿するユーザーもいるが、このファイルは正式アナウンスまでに差し替わる可能性もあるので要注意だ。
PADでもUbuntuを取り上げてもらいました!
PC WatchやAkiba PC Hotline! によるPCハードウェア関連の専門チャンネルであるPADにて、先日Ubuntu 24.04 LTSを取り上げていただいた。
Ubuntuとはなんぞやというところから、実際にPCにUbuntuをインストールして、ゲームを楽しむところまで一通り紹介しているので、ぜひチェックしてほしい。
もしかするとPADでは初めての「生放送でOSのインストールからやる」回かもしれない。この番組や本記事を参考に、GWはそのへんに転がっているPCにUbuntuをインストールしてみよう!