kledgeb UbuntuやLinuxの最新情報を紹介

Ubuntu 25.04 その11 - Dracutへの移行計画・複数のバージョンを経て移行

Dracut への移行計画

以下で Dracut への移行計画が紹介されています。


  • [Spec] Switch to Dracut

Dracut とは

Dracut とは initramfs-tools の代替ソフトウェアです。
Dracut は以前紹介していますので、以下を参考にしてください。

  • Dracutを試してみよう・initramfs-toolsの代替ソフトウェア

現状

現状 Ubuntu Desktop 及び Ubuntu Server では、initramfs(initrd) の生成に initramfs-tools を採用しています。
しかし initramfs-tools には、以下の課題や欠点があります。

  1. systemd が initramfs 内で使用されていない
  2. NVM-oF(NVMe over Fabric)がサポートされていないなど、機能が欠けている
  3. initramfs と ルートファイルシステム間で実装が十分に共有されておらず、メンテナンスコストの増大につながっている
  4. ここ数年 initramfs-tools のアップストリームで積極的な開発が行われておらず、多くの作業がメンテナンス作業になっている
  5. initramfs に大量のシェルスクリプトが含まれている
  6. initramfs の生成はシェルスクリプトで実装されている

シェルスクリプトは実行速度が遅く、また構文の複雑さ故、メンテナンスの負担が大きくなっています。

ちなみに Ubuntu Core はすでに systemd ベースの initramfs を使用しており、
core-initrd は Dracut を利用しています。

  • core-initrd

課題の解消に向けて

これらの課題を解消するために、Ubuntu Desktop 及び Ubuntu Server で initramfs の生成ツールを従来の initramfs-tools から Dracut に変更する予定です。
Ubuntu では init に systemd を採用しているため、Dracut は systemd の Dracut モジュールを使用することになります。
initramfs で systemd を使用することで、initramfs 内のシェルスクリプトを減らすことができます。

また Dracut では以下の機能がサポートされます。

  • NVM-oF(NVMe over Fabric)のサポート
  • LUKS 暗号化デバイスのパスフレーズ入力時に、Bluetooth キーボードのサポート

シェルスクリプトを減らす

シェルスクリプトに関する課題は、Dracut に移植することで課題の解消を狙います。
例えば Dracut では、dracut-install および dracut-utils ですでに C による実装が含まれています。

複数のバージョンを経て移行する

Dracut への移行は、複数の Ubuntu のバージョンを経て移行します。

Ubuntu 24.10

Ubuntu 24.10 では、一般的及び基本的なユースケースにおいて、Dracut が機能することを確認します。
ユーザーが Dracut のテストを行えるように環境を整え、ユーザーからフィードバックを募集し、問題の調査や確認、そして必要な対応を精査します。

  • Dracutを試してみよう・initramfs-toolsの代替ソフトウェア

Ubuntu 25.04

Dracut を initramfs-tools の代替としてサポートします。
また ubuntu-desktop パッケージ及び類似パッケージには、依存関係に initramfs-tools が指定されていますが、この依存関係の選択に dracut パッケージを加えます。(initramfs-tools | dracut)

  • Support Dracut as alternative initrd tool
 
これによりクラウド向けなどイメージのメンテナーは、dracut を選択できるようになります。

Ubuntu 25.10

Dracut をデフォルトにします。
Ubuntu Desktop Installer は、Dracut をインストールするようになります。

ただし引き続き initramfs-tools は利用できるようにし、Dracut で問題が発生するユーザーは initramfs-tools をインストールして initramfs-tools に切り替えられるようにします。

Ubuntu 26.04 LTS

dracut のみをサポートし、initramfs-tools をサポートから外します。
また initramfs-tools を universe リポジトリーに移します。
ubuntu-desktop パッケージ及び類似パッケージの依存関係から initramfs-tools が削除され、dracut のみになります。

問題の追跡と予定の延期について

Dracut に関する問題の追跡は、以下で行われています。

  • dracut package

影響の大きい問題が発覚し、優先的に修正が必要になった場合、上記のスケジュールから遅れが発生する可能性もあります。

ライブイメージについて

ライブイメージは引き続き casper と initramfs-tools を使用します。
ライブイメージは dracut-live 経由でライブシステムをサポートする Dracut への移植作業が必要なためです。

dracut-live

dracut-live は root=live:<URL> を指定することで、SquashFS イメージからの起動を可能にします。
例えば <URL> には、CDLABEL=$ubuntu_label といった指定を行います。

ただ dracut-live は、スタックに積み重ねる複数の SquashFS イメージがサポートされておらず、この対応が必要になっています。

  • Please support multiple squashfs images for root=live:<URL>

casper-bottom スクリプト

またすべての casper-bottom スクリプトを Dracut へ移植するか、アップストリームのプロジェクトに組み込む必要があります。
後者は例えば ConditionKernelCommandLine=rd.live.image を利用してサービスの有効化・無効化を指定したり、あるいは類似する方法で対処する必要があります。

サポートするファイルシステムの考慮

Dracut をデフォルトにする前に、インストーラーで選択可能な以下のファイルシステムに対応しなければなりません。

  1. ext4(デフォルト)
  2. LVM
  3. LVM(暗号化)
  4. ZFS
  5. ZFS(暗号化)

5. に関しては、現状以下の問題があります。

  • dracut does not support booting from an encrypted ZFS volume (LP: #2070066)

Dracut のサポートについて

Dracut は systemd モジュールと組み合わせて利用されることが想定されており、この組み合わせのみで Dracut のサポートが提供されます。

universe リポジトリーに配置されている Dracut モジュールは、コミュニティーによるサポートのみになります。

Ubuntu
スポンサー
コメント
コメントポリシー
コメントをする前に UbuntuのCode of Conduct(CoC/行動規範) を確認し、CoCに沿ったコメントをお願いします。
コメントの使い方は、コメントの使い方を参照してください。
同一カテゴリーの記事
SNS
人気の記事
  • Ubuntu 26.04 その42 - Ubuntu 26.04.1 LTS のリリーススケジュール
    Ubuntu 26.04.1 LTSのリリーススケジュール Ubuntu 26.04.1 LTS のリリーススケジュールを紹介します。
  • Linux Mint その292 - Linux kernel 7.0 採用の Linux Mint 22.3 リリース・システム管理ツールにカーネル管理機能追加など
    Linux Mint 月刊ニュース Linux Mint 開発チームは Linux Mint 月刊ニュースにて、Linux Mint の開発状況や取り組みを紹介しています。
  • Ubuntu 26.04 その68 - Ubuntu 26.04.1 LTS がリリースされました・ディスクイメージのダウンロード
    Ubuntu 26.04.1 LTS リリース 2026年8月27日、Ubuntu 26.04.1 LTS がリリースされました。
  • Linux その422 - GNOME Boxes の再構築と未来・Flatpak のみの提供やモダンな機能の実装など
    GNOME Boxes の再構築と未来 GNOME Boxes の再構築と未来が以下で紹介されています。
  • Kubuntu その117 - Kubuntu 26.04 LTS にもっと手厚いサポートを・最高の信頼性を誇る KDE 搭載ディストリビューションを目指して
    最高の信頼性を誇る KDE 搭載ディストリビューションを目指して Kubuntu 26.04 LTS に手厚いサポートが導入されました。
  • Linux その421 - GNOME Shell のデザイン構想と長期的な見通し
    GNOME Shell のデザイン構想と長期的な見通し GNOME Shell のデザイン構想と長期的な見通しが、以下で紹介されています。
  • Linux その420 - KDE Plasma で実装予定の新機能や改善・UI レイアウトの調整やリモートデスクトップの改善など
    KDE Plasma で実装予定の新機能や改善 KDE Plasma で実装予定の新機能や改善を紹介します。
  • Windows その29 - Windows 向け Coreutils 登場・Coreutils のインストールやコマンドの一覧など
    Windows 向け Coreutils 登場 Windows 向け Coreutils が登場しました。
  • Linux その386 - Arch Linux の AUR パッケージで悪意あるコミットが続く・今度はソースコードの難読化か
    Arch Linux の AUR パッケージで悪意あるコミットが続く Arch Linux の AUR パッケージで悪意あるコミット(マルウェア)が続いています。
  • Ubuntu 18.04 その195 - PolicyKitにクラッシュや権限の昇格など複数の脆弱性・今すぐアップデートを
    PolicyKitの脆弱性 2018年7月16日、クラッシュや権限の昇格など複数の脆弱性に対応した「PolicyKit」がリリースされました。
記事のピックアップ
オプション