APT 3.2では、DebianとUbuntuに履歴機能(元に戻す機能とロールバック機能)が導入されました。

  • APT 3.2が、Debianおよび派生ディストリビューション向けのパッケージマネージャーの新しい安定版となりました。
  • トランザクション履歴システムを導入し、一覧表示、照会、取り消し、やり直し、ロールバックなどのコマンドを提供します。
  • 依存関係解決エンジンを改善し、JSONLにパフォーマンスメトリクスを追加し、dpkg実行中のスリープモードブロッキングを解消します。
  • Debian 14「Forky」で利用可能になり、Ubuntu 26.04 LTSにも搭載される予定です。また、Debian Unstableでは既にテスト可能です。

APT 3.2

到着 de APT 3.2 これは、Debianベースのシステムにおけるパッケージ管理の転換点となるものです。この新しい安定版のクラシックパッケージマネージャーは、内部の詳細を洗練するだけでなく、管理者や上級ユーザーから長年要望されていた機能も組み込んでいます。これらの機能は、これまでRed Hatなどの他のエコシステムでより一般的でした。このバージョンは、 バージョン3.1.

このリリースにより、Debian、Ubuntu、およびその他の派生ディストリビューションは、 トランザクション履歴(元に戻す機能とロールバック機能付き)より洗練された依存関係エンジンと、日々の信頼性向上に重点を置いた数々の改善点。これらはすべて、APTを完全にトランザクションシステムに変えることなく、アップデート時の容易さとセキュリティを大幅に向上させることによって実現されています。

APT 3.2: Debianパッケージマネージャーの新しい安定版

DebianプロジェクトはAPT 3.2を最新版と認定しました。 安定版 Debianベースのディストリビューション向けAPTパッケージマネージャー(システム上のソフトウェアのインストール、更新、削除を担当するコンポーネント)に対する今回のアップデートは、近年のAPTにおける最も大規模な機能アップデートの一つであり、システム変更の管理方法に直接的な影響を与える。

バージョン3.2は、開発ブランチ3.1.6および3.1.7で行われた作業に基づいており、そこで新しい履歴インフラストラクチャの基盤が構築されました。 3.1.7で実験的だったものは何ですか?これは現在、過去の取引を操作するための特定のサブコマンドセットを備えた、安定したすぐに使用できる機能として提供されています。

トランザクション履歴、アンドゥ、リドゥ、ロールバック

APT 3.2 の大きな変更点は、 トランザクション履歴は意味的に理解されるこれまで、APT は次のような単純なログ ファイルを生成することに限られていました。 /var/log/apt/history.logそのため、問題のあるインストールやアップグレードで何が起こったのかを再構築するために、手動でレビューする必要がありました。

新バージョンでは、APT はパッケージ操作を次の形式で保存します。 体系的な方法で参照および再利用する各トランザクションは識別され、特定のコマンドを使用して一覧表示、検査、取り消し、または繰り返すことができます。これにより、APTは宣言型マネージャやスナップショットベースのシステムで一般的な概念に近づきますが、それらを置き換えるものではありません。

サブコマンドのセットはプレフィックスを中心に展開されます apt history-*単一の汎用コマンドの代わりに、APT 3.2 は 注文を分けて明確にする 各タスクごとに定義されるため、スクリプトや自動化での利用が容易になり、より複雑な管理環境における曖昧さが軽減されます。

APT 3.2 の新しい履歴コマンド

新しいトランザクションベースを処理するために、APT 3.2 では、アップグレードまたはインストール中に問題が発生した場合の典型的なワークフローを構造化するいくつかのコマンドが導入されています。開始点は apt history-listこれは、登録されたすべての取引のリストと、それらの識別子および基本データを表示します。

興味のある変更を見つけたら、詳細を確認するには apt history-info <ID>このレポートでは、操作中にインストール、削除、または更新されたパッケージの詳細が示されます。従来はログを一つ一つ確認する必要がありましたが、この情報は整理された形で表示され、迅速な確認が可能になりました。

特定の操作を元に戻すことが目的であれば、以下のことが適用されます。 apt history-undo <ID>このコマンドは、その識別子に関連付けられたトランザクションを取り消す役割を担います。既に取り消されたアクションを再適用したい場合は、同等のコマンドを使用します。 apt history-redo <ID>これは、システムに対して同じ変更を繰り返すものです。

状況がより深刻で、パッケージセットを以前の状態に戻す必要がある場合、APT 3.2 は apt history-rollback <ID>このコマンドは、指定されたトランザクション実行時のシステム状態を再構築しようと試みます。これにより、更新チェーンの障害発生後に手動で再構築する場合と比べて、多くの時間を節約できます。

新しいロールバックシステムの制限と適用範囲

機能的な飛躍は目覚ましいものの、Debianの開発者たちは、 APT 3.2では、システムが完全にトランザクション対応になるわけではありません。ロールバック機構は、明確に定義されたパッケージ操作向けに設計されており、非常に複雑な環境や絶えず変化する環境におけるあらゆるケースに対応できるわけではありません。

最も重要な条件の1つは、 パッケージの旧バージョンは引き続き利用可能です。 リポジトリ内に存在するソフトウェアが復元対象である場合、復元可能な範囲が狭まり、ロールバックが不可能または不完全になる可能性があります。

さらに、パッケージメンテナンススクリプト(よく知られているスクリプト) postinst、prerm、および会社これらの変更は、必ずしも自動的に元に戻せるとは限らない副作用を引き起こす可能性があります。特に高度にカスタマイズされた構成のサーバーでは、状況によっては手動での介入が必要になる場合があります。

したがって、APT 3.2は バックアップとスナップショットを補完するツールこれは代替手段ではありません。新しい履歴機能は、日常的な多くのエラーの影響を軽減し、デスクトップ環境や一部のサーバー環境での作業を容易にしますが、堅牢なバックアップ戦略の必要性をなくすものではありません。

デスクトップコンピュータとサーバーへの実際的な影響

日常的なコンピューターでは、 apt history-list y apt history-undo これは、単なる不安要素と深刻な問題との分かれ目となる可能性があります。アップデート後に何らかの不具合が発生した場合でも、ユーザーまたは管理者は、再インストールやログの手動検索に頼ることなく、変更を比較的直接的に元に戻すことができるようになりました。

DebianまたはUbuntuサーバーファームを管理するシステム管理者にとって、これらの機能は メンテナンス期間をより細かく制御できる例えば、特定のパッケージ層における変更をテストし、望ましくない影響が検出された場合には、同じ期間に適用された他のアップデートを元に戻すことなく、そのトランザクションを取り消すことが可能です。

このモデルは、Red Hat 環境で既に提供されている DNF マネージャーと同様のもので、 APTに対する歴史的批判の一つマネージャー自体に直接統合することで、以前のシステム状態を再構築するための外部ツールやカスタムスクリプトへの依存も排除されます。

よりスマートな依存関係エンジン

実績に加えて、APT 3.2 は 依存関係解決エンジンこれは既に3.1シリーズからアップデートされていました。新バージョンでは、複数のアーキテクチャを持つインストール環境や、バイナリパッケージを段階的に公開するリポジトリなど、デリケートなシナリオに対応した改善が盛り込まれています。

注目すべき新機能の 1 つは、ソルバーが概念をよりよく理解していることです。 ソースパッケージの更新これにより、マルチアーキテクチャシステムにおいて、あるアーキテクチャ用のバイナリがまだ入手できない場合に、重要なコンポーネントが誤って削除されるリスクが軽減されます。このような問題は、システムを非常に不安定な状態に陥らせる可能性があります。

このエンジンは現在、 依存関係の代替案を並べ替える この機能は、現在の状態に最も合致するオプションを優先し、必要に応じて、競合を解決する唯一の合理的な方法である場合に限り、手動でインストールされたパッケージの削除を許可します。この柔軟性により、ユーザーがこれまで個別に介入しなければならなかったような行き詰まりを回避することを目的としています。

APT 3.2 スリープモードのパフォーマンス指標とロック

エンドユーザーにはあまり目立たないものの、モニタリングには非常に役立つもう1つの新機能は、 パフォーマンスメトリクスログ(JSONL形式)ログの各行は独立したJSONオブジェクトに対応しており、これにより、プロフェッショナルな環境で一般的に使用される監視ツールを用いた自動分析が容易になります。

APT 3.2では、以下のメカニズムも追加されています。 コンピュータがスリープモードに入らないようにする 実行中 dpkgシステムがスリープ状態になったためにインストールやアップデートの処理が途中で中断されると、パッケージデータベースが破損したり、コンポーネントが不完全に構成されたままになったりする可能性があり、特に省電力機能に大きく依存しているノートパソコンやデスクトップパソコンでは、このような事態は起こりやすい。

この保護措置を講じることで、包装プロセスの中核部分への偶発的な中断のリスクが最小限に抑えられ、家庭ユーザーと組織内でノートパソコンを管理する管理者双方にとって有益となる。

Debian、Ubuntuおよび派生ディストリビューションにおけるAPT 3.2の利用可能性

Debianプロジェクトの計画によると、 APT 3.2はDebian 14「Forky」の一部となる予定です。その安定版は2027年の夏頃にリリースされる予定です。したがって、このディストリビューションの新しいバージョンが安定版リポジトリに配信されると、履歴機能とロールバック機能がすべてのユーザーにデフォルトで利用可能になります。

その節目以前に、バージョン3.2はすでに組み込まれていました Debian Sid (不安定版)したがって、この開発ブランチを使用しているユーザーは、パッケージマネージャーを更新して、簡単な手順で新機能のテストを今すぐ開始できます。 sudo apt update && sudo apt install apt あなたのシステムで。

Ubuntuの世界では、CanonicalはAPT 3.2を Ubuntu 26.04 LTS “Resolute Raccoon”2026年4月23日にリリース予定のこの拡張サポート版のユーザーは、その日から、長期的な安定性を考慮して設計された環境で、履歴コマンドとロールバックコマンドを直接利用できるようになります。

DebianおよびUbuntuをベースとしたその他のディストリビューションも統合される予定です。 APTの新しいバージョン リリースサイクルによって異なります。Debian 12、Debian 13、および現在の安定版の場合、APT 3.2 の採用は、各ブランチのメンテナーがアップデートを移植するか、次のメジャーバージョンリリースまでパッケージマネージャを現状のまま維持するかによって決まります。