[ 前のページ ] [ 概要 ] [ 著作権表示 ] [ 目次 ] [ 次のページ ]

The Debian GNU/Linux FAQ
章 8 Debian システムを最新に保つには


Debian の目標の一つは首尾一貫したアップグレード方針と安全なアップグレー ド手順を提供することであり、前のリリースから新リリースにスムーズにアップ グレードできるよう我々は常に最善を尽しています。アップグレード手順に加え るべき何か重要な注記事項がある場合には、パッケージはユーザに注意を促し、 ありうる問題への解決法を提供します。

アップグレードの詳細を具体的に解説した『リリースノート』も読んでおく べきです。これはすべての Debian CD と一緒に出荷されており、WWW でも http://www.debian.org/releases/stable/i386/release-notes/ で 利用可能です。


8.1 libc5 に基づく私の Debian 1.3.1 (あるいはそれ 以前) を libc6 に基づく2.0 (あるいはそれ以降) にアップグレードするにはど うすればいいのですか?

アップグレードするにはいくつかの方法があります。


8.2 Debian システムを最新に保つにはどうすればいいの ですか?

単純に Debian アーカイブに匿名 ftp をかけ、次にディレクトリをよく調べ て、欲しいファイルを見つけ、それを取ってきます。最後に dpkg を 使ってそのファイルをインストールします。たとえシステムが稼動していても、 dpkg はアップグレードする必要のあるファイルをきちんとインストー ルしてくれます。あるパッケージをアップグレードしようとした時、他のパッケー ジもアップグレードするように要求される場合があります。この場合、指示され たアップグレードを行うまで、あるいは行わなければ、希望するパッケージのアッ プグレードは失敗してしまいます。

この方法はあまりにも時間がかかり過ぎると多くの人が感じるでしょう。と いうのも Debian は急速に進化しているからです。通常、一週間に 1 ダース以 上もの新しいパッケージがアップロードされています。新しいメジャーリリース の直前にはもっと増えます。このような大変なアップグレード作業を自動化して くれるプログラムを使いたいという人が多くいます。このためにいくつかのパッ ケージが利用できます。


8.2.1 APT

APT はソフトウェアパッケージ、言い換えると Debian のバイナリとソース のパッケージのための管理システムです。パッケージを扱うコマンドラインツー ルとして apt-get があり、dselect 経由の APT インタフェースとして APT dselect メソッドがあります。

APT の特徴はインストールの順序が完璧であること、複数のソースを利用で きることです。他にもいくつかありますので、 /usr/share/doc/apt/guide.html/index.html のユーザーズガイドを見 てください。


8.2.2 dpkg-ftp

この方法は dselect のアクセスメソッドの一つになっています。 dselect の中から実行できるので、ファイルをダウンロードしてインス トールするという作業を一度に直接行うことができます。やり方は、まず dselect プログラムを起動してオプション「0」("Choose the access method to use") を選択します。そしてオプション「ftp」を反転表示させてリ モートホスト名とディレクトリを指定します。dpkg-ftp は今回新たに選 択したファイルや以前に選択したファイルを自動的にダウンロードしてくれます。

mirror プログラムと違って dpkg-ftp はミラーサイトの全て のファイルを取ってくるわけではありません。このプログラムは (dpkg-ftp を立ち上げた時に) 選択したパッケージのうちアップグレー ドする必要のあるファイルだけをダウンロードします。


8.2.3 mirror

この Perl スクリプトと mirror-master という (付属の) 管理プロ グラムは、ユーザが指定したホストから匿名 ftp を使って指定したディ レクトリツリーを取ってくるのに使います。

mirror は大量のソフトウェアをダウンロードする場合に特に役立ち ます。あるサイトから初めてファイルをダウンロードすると、 .mirrorinfo と呼ばれるファイルがローカルホストに作成されます。 mirror がこのファイルとリモートシステムにある同様のファイルを比較 することによって、リモートファイルシステムの変更が自動的に認識され、変更 されたファイルだけがダウンロードされます。

mirror プログラムは一般にリモートディレクトリツリーのローカル なコピーを更新するのに役立ちます。取ってくるファイルは Debian ファイルで ある必要はありません。(mirror は Perl スクリプトなので非 Unix シ ステム上でも動かせます。) mirror プログラムにには指定した文字列に マッチする名前のファイルを除外する機能もありますが、このプログラムはパッ ケージを選択してダウンロードするよりもディレクトリツリー全体をダウンロー ドするのに大変役立ちます。


8.2.4 dftp

この Perl スクリプトは特定のホストからユーザ指定の Debian パッケージ を取ってくるのに使えます。このプログラムは、ユーザが指定したディレクトリ (たとえば、stable、contrib、non-free) の Packages.gz ファイルをダウンロー ドして、そのディレクトリに含まれるパッケージの一覧を表示します。ファイル は new upgrades、downgrades、new packages、ignored upgrades、ignored packages などの様々なセクションに置かれます。それから欲しいパッケージを 選択すると dftp はそれをダウンロードしてインストールします。これによって インストールするつもりのないパッケージをダウンロードすることなく、非常に 簡単に Debian システムを常に最新にしておくことができます。

dftpdselect (dselect, Section 7.1.2 参照) を呼び出すこ とができるので、Debian パッケージのシステムへの取得と更新を統合して行え ます。インストールが終了すると別の dftp コマンドでパッケージアー カイブ (「.deb」) ファイルを消去することができます。リモートファイルシス テムの変更は dftp がローカルとリモートシステムの Packages.gz ファ イルを比較することによって、自動的に認識されます。


8.2.5 dpkg-mountable

dpkg-mountable を使うと dselect のリストに「mountable」というアクセス メソッドが加わります。こうすると /etc/fstab に指定されている任意のファイ ルシステム (例えば通常のハードディスクパーティションや NFS サーバなど) からインストールできるようになります。これらのファイルシステムは必要に応 じて自動的にマウントされアンマウントされます。

dselect の標準的なメソッドにない特別な機能もいくつかあります。ローカ ルのファイルツリー (メインのディストリビューションと並行か全く別か) を指 定できたり、時間をかけてディレクトリを再帰的に見渡すのではなく必要なパッ ケージだけを取得できたりします。インストールメソッドで dpkg アクションの すべてを記録することもできます。


8.3 パッケージをアップグレードするにはシングルユー ザモードに入る必要がありますか?

いいえ、その必要はありません。システム稼動中であってもパッケージをきちん とアップグレードすることができます。Debian には start-stop-daemon プログラムがあり、パッケージをアップグレード する時にもし必要なら、動いているプロセスをストップしてその後再びスタート するという作業を行ってくれます。


8.4 自分のディスクに全ての .deb アーカイブファイルを保存 しておかなければならないのですか?

いいえ、その必要はありません。もし自分のディスクにファイルをダウンロー ドしているなら (これは必ずしも必要なことではありません。上記の dpkg-ftp や dftp を見てください)、そのパッケージをインストールした後、そ のファイルをシステムから消去しても構いません。


8.5 システムに追加したパッケージのログを保存するには どうしたらいいのですか?

dpkg は、展開したり設定したり削除したり完全削除したりしたパッ ケージの記録をとっていますが、パッケージが処理される間の端末表示のログは (現在のところは) 保存しません。あるユーザはこの問題を以下のように tee コマンドを使うことで簡単に克服しています。

     dpkg -iGOEB -R main/binary non-free/binary contrib/binary | \
         tee -a /root/dpkg.log

長いオプションを用いて書くと次のようになります。

     dpkg --install --refuse-downgrade --selected-only \
       --skip-same-version --auto-deconfigure \
       --recursive main/binary non-free/binary contrib/binary | \
         tee -a /root/dpkg.log


[ 前のページ ] [ 概要 ] [ 著作権表示 ] [ 目次 ] [ 次のページ ]
The Debian GNU/Linux FAQ
version 2.2.2.2, 14 January 2001
著者, Section 15.1