Ubuntu Weekly Topics

2022年2月4日号 jammyの開発・壁紙コンテストの開始とsystemd-oomd

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

jammyの開発・壁紙コンテストの開始

Ubuntuの開発における「おなじみ」のフェーズ,壁紙コンテストがjammyでも開始されました。3840x2160ピクセルの「壁紙に適した画像」をお持ちの場合,募集要項を確認の上応募してみるのも良いかもしれません。なぜか部屋に生えてくるレンズやカメラをお持ちの場合は撮影にチャレンジするのも手です。

また,Xenって4.11が入ってるけれど,リリース時にはどうするの?といった質問が投げかけられたり(回答:4.16にする予定だよ。すべてがちゃんと動くとまでは言えいものの,4.11よりはマシなはずだ⁠⁠,最新のカーネルパッケージだとZSTDを使うからpygrubが動かなくてブート不能になるケースがあるんだけど,といったやりとりがあったり,OpenSSL3への変更に伴ってMySQLにパッチが必要になったりと,なんとなく忙しい気配が漂い始めています。

これらとはまた別に,systemdベースのユーザーランドOOM Killer注1system-oomdがリポジトリに投入されデスクトップ環境(Ubuntuや各種フレーバー)ではデフォルトで動作させる方向で検討が進められています注2⁠。

注1
Linuxは伝統的に,⁠メモリ空間はある程度オーバーコミットする」⁠実際に使えるメモリ容量よりも多くの空間を確保することを許す)戦術を採用しています。これは厳密なメモリ確保戦術に比べるとパフォーマンスの面で有利になるものの,ともすれば「メモリ使用量が大幅に増えてきた場合,いずれかの(メモリを確保している)プロセスを終了させない限りシステムとしての安定性を保てない」という状態に陥ることがあります。これをカーネルレベルで実現するのがOOM Killer(通称「Kernel OOM Killer⁠⁠)です。OOM Killerはシステム上利用できるメモリ残量が少なくなった時に,良い意味でも悪い意味でも『適当な』メモリを消費しているプロセスを停止させることで,オーバーコミットした分のメモリ消費のつじつまを合わせる動作を行います。Kernel OOM Killerの動作はやや原始的で,⁠メモリ消費が大きそうなもの」を選んで停止させるというものです。この動作はときに,⁠よりによってそれを止めるか」的な重要なプロセスを対象にしてしまうことがあり,システム管理者を苦悩させることになります。Linuxの利用においては,Kernel OOM Killerの予測不能さを制御するために,⁠ユーザーランドに実装された」OOM Killerというものが準備されてきました。ユーザーランドOOM Killerは,Kernel OOM Killerが発動するよりも前に,一定のロジックに基づいて「メモリを消費しているが停止させても致命的ではないプロセス」を選定して停止させる動作をすることで,より適切なプロセスを止めたり,あるいはシステムとしての応答性が著しく劣化する前に先回りしてプロセスを止めるといった動作を行います。system-oomdはこのための実装のひとつで,⁠特定のcgroupに属するプロセス」を停止させる動作が実現されています。
注2
ユーザーランドOOM Killerも万能の解ではなく,用途によっては逆効果になる場合もあります(そもそも「ある程度ましなプロセスを選定できる」というメリットこそあるものの,⁠メモリが足りなくなった状態』に備えるために,ユーザーランドOOM Killerという余計なプロセスを動かす(=その分メモリが消費される⁠⁠」という構図そのものがなかなかに矛盾しています⁠⁠。デスクトップ環境では,⁠ユーザーが動かしているプロセス」⁠たとえばブラウザ)「デスクトップ環境を構成するプロセス」⁠たとえばGNOME⁠⁠,そして「システムとして動作しているべきプロセス」⁠各種ロギングデーモンやシステムユーティリティ)といった単位で「困ったときに停止されるべきプロセス」を分類することができ,⁠止める順」を制御しやすいので,⁠systemd-oomdを用いることでユーザー体験を改善しやすい」という傾向があります。最近のLinuxディストリビューションではデスクトップ向けにsystemd-oomdを用いることが多く,その流れがUbuntuにもやってきた,というのがこの変更の背景にあります。

その他のニュース

今週のセキュリティアップデート

usn-5252-1, usn-5252-2:PolicyKitのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2022-January/006371.html
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2022-January/006372.html
  • Ubuntu 21.10・20.04 LTS・18.04 LTS・16.04 ESM・14.04 ESM用のアップデータがリリースされています。CVE-2021-4034を修正します。
  • ⁠PwnKit⁠脆弱性に対応します。
  • 対処方法:アップデータを適用の上,システムを再起動してください。
usn-5193-2:X.Org X Serverのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2022-January/006373.html
  • Ubuntu 16.04 ESM・14.04 ESM用のアップデータがリリースされています。CVE-2021-4008, CVE-2021-4009, CVE-2021-4011を修正します。
  • usn-5193-1のESM向けパッケージです。
  • 対処方法:アップデータを適用の上,システムを再起動してください。
usn-5247-1:Vimのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2022-January/006374.html
  • Ubuntu 21.10・20.04 LTS・18.04 LTS用のアップデータがリリースされています。CVE-2021-3973, CVE-2021-3974, CVE-2021-3984, CVE-2021-4019, CVE-2021-4069を修正します。
  • 悪意ある加工を施したファイルを開かせることで,DoS・メモリ破壊を伴うクラッシュの誘発・任意のコードの実行が可能でした。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。
usn-5254-1:shadowのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2022-January/006375.html
  • Ubuntu 18.04 LTS・16.04 ESM・14.04 ESM用のアップデータがリリースされています。 CVE-2017-12424, CVE-2018-7169を修正します。
  • 悪意ある入力を行うことで,DoS・本来秘匿されるべき情報へのアクセスが可能でした。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。
usn-5255-1:WebKitGTKのセキュリティアップデート
usn-5064-2:GNU cpioのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2022-January/006377.html
  • Ubuntu 16.04 ESM用のアップデータがリリースされています。CVE-2021-38185を修正します。
  • usn-5064-1の16.04 ESM用パッケージです。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。
usn-5257-1:ldnsのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2022-January/006378.html
  • Ubuntu 18.04 LTS・16.04 ESM用のアップデータがリリースされています。CVE-2020-19860, CVE-2020-19861を修正します。
  • 悪意ある入力を行うことで,DoS・本来秘匿されるべき情報へのアクセスが可能でした。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。
usn-5260-1, usn-5260-2:Sambaのセキュリティアップデート
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2022-February/006379.html
  • https://lists.ubuntu.com/archives/ubuntu-security-announce/2022-February/006380.html
  • Ubuntu 21.10・20.04 LTS用のアップデータがリリースされています。CVE-2021-43566, CVE-2021-44142, CVE-2022-0336を修正します。
  • 悪意ある操作を行うことで,アカウントの偽装・共有領域の外へのディレクトリ作成・任意のコードの実行が可能でした。
  • 対処方法:通常の場合,アップデータを適用することで問題を解決できます。

著者プロフィール

吉田史(よしだふみひと)

システム管理を中心にWindows/PC Unixを併用している。Ubuntu Japanese Teamではパッケージサーバの管理や翻訳などの作業を担当。