Debian の最もよく知られた特色の 1 つに、インストールされたシステムを安定版から次の安定版にアップグレードできることが挙げられます。そして有名なサブコマンドである dist-upgrade はプロジェクトの評判に大きく寄与し続けています。いくつかの事前準備に必要な時間を含めても、コンピュータのアップグレードに必要な時間はパッケージリポジトリからのダウンロード速度に依存してわずか数分から数十分です。
Debian の安定版は次のリリースまでの間にかなり長い時間をかけて大きく進化するので、アップグレードの前にリリースノートを読むべきです。
この節では、特に Jessie システムを Stretch にアップグレードを行う場合について解説します。システムのアップグレードはシステムに甚大な変更を加えます。このため、危険が全くないわけではありません。アップグレードを行う前に、必ずすべての重要なデータをバックアップしてください。
アップグレードを簡単に (短時間で) 実行するために身に付けるべき良い癖の 1 つに、インストール済みパッケージを整理整頓し、本当に必要なものだけを残すことがあります。これを行う便利なツールが
aptitude
、
deborphan
、
debfoster
です (
第 6.2.7 節「自動的にインストールされたパッケージの追跡」を参照してください)。たとえば以下のコマンドを実行した後、
aptitude
の対話型モードで削除予定としてマークされたパッケージの再確認と微調整を行うことができます。
# deborphan | xargs aptitude --schedule-only remove
次にシステムのアップグレードを行います。最初に /etc/apt/sources.list
ファイルを書き換えて、APT にパッケージの取得先を Jessie から Stretch に変更するよう伝えます。/etc/apt/sources.list
ファイルの中でコードネームではなく安定版へのリファレンスを使っている場合、この変更は必要ありません。なぜなら、安定版は常に Debian の最新リリース版を指しているからです。どちらの場合でも、利用できるパッケージのデータベースを更新してください (apt update
コマンドを実行するか synaptic
の更新ボタンを押してください)。
新しいパッケージソースが登録されたら、真っ先に apt upgrade
を使い、最小アップグレードを実行するべきです。アップグレードを 2 段階に分けて行うことにより、パッケージ管理ツールの作業が軽減されますし、パッケージ管理ツールが最新のバージョンになっていることが保証されます。また、最新のパッケージ管理ツールには、多くのバグ修正がなされているかもしれませんし、ディストリビューション全体のアップグレードを完了させるために必要な改善が含まれているかもしれません。
最小アップグレードが終了したら、apt full-upgrade
、aptitude
、synaptic
のうちどれか 1 つを使って、ディストリビューション全体のアップグレードを行います。提案された操作を適用する前に注意深く確認するべきです。具体的に言えば、提案パッケージを追加したい場合や、推奨されたけれども使いにくいと知っているパッケージを除外したい場合があるかもしれません。いかなる場合でもフロントエンドは、整合性が保たれて最新の Stretch システムになるような、解決策を用意します。管理者に要求されるのは、パッケージがダウンロードされるまで待って、Debconf とマシンに合わせて変更された設定ファイルの保存可否に関する質問に答え、APT が作業を終えるまで見ているだけです。
6.6.2. アップグレードの後から問題を取り扱う
Debian メンテナの最大限の努力にも関わらず、システムのメジャーアップグレードは常に望んだ通りに順調に進むわけではありません。新しいソフトウェアバージョンは古いものと互換性がないかもしれません (たとえば、デフォルト動作やデータフォーマットが変わっているかもしれません)。また、いくつかのバグは Debian リリース前のテスト段階を経たにも関わらず見過ごされているかもしれません。
いくつかの問題を未然に防ぐために、apt-listchanges パッケージをインストールすることが可能です。apt-listchanges は、あるパッケージのアップグレード作業の開始時に、このパッケージのアップグレードを行うことで生じる可能性のある問題の情報を表示します。この情報はパッケージメンテナがまとめたもので、ユーザが内容を確認できるように /usr/share/doc/package/NEWS.Debian
ファイルに含まれています。これらのファイルを (場合によっては apt-listchanges を通じて) 読めば、予期しない状況に驚かされることがなくなるでしょう。
あるソフトウェアの新しいバージョンが全く動かない場合があるかもしれません。これは通常、そのアプリケーションがそれほど人気ではない場合や十分にテストされていない場合に起こります。さらに、リリース直前の更新はそれまでに存在しなかった不具合を発生させる場合があり、この種の不具合は安定版がリリースされた後に見つかります。どちらの場合でも、最初にやることはバグ追跡システム https://bugs.debian.org/package
でこの問題が既に報告されているか確認することです。まだ報告されていなければ、reportbug
を使って自分で報告するべきです。既に報告されていれば、バグ報告と関連メッセージがバグに関連する情報の素晴らしいソースになります。
バグの重要度に依存して、パッケージの新しいバージョンが安定版リリースに対する新しい改訂版として用意されている場合もあります。この場合、修正されたパッケージは Debian アーカイブミラーの
proposed-updates
セクションから提供されます (
第 6.1.2.3 節「提案された更新」を参照してください)。対応するエントリを一時的に
sources.list
に追加すれば、更新されたパッケージを
apt
や
aptitude
からインストールすることが可能です。
修正されたパッケージがまだ
proposed-updates
セクションから提供されていないこともあります。これは、安定版リリースマネージャによる妥当性の確認が終わっていないからです。パッケージが公開待ち状態にあるかをウェブページから確認できます。このウェブページに載せられたパッケージはまだ利用できませんが、少なくとも公開待ち状態であるか否かを確認できます。