[ 前のページ ] [ 目次 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 次のページ ]


APT HOWTO (Obsolete Documentation)
第 5 章 - パッケージ情報の入手


APT システムには、パッケージが属しているセクションや重要度、その 内容説明などを見るためのフロンとエンドプログラムと同様に、インストール 可能かあるいはインストール済のパッケージ一覧をきわめて容易に入手する ためのフロントエンドプログラムがいくつかあります。

ですが... ここでの我々の目的は APT 本体の使い方を学ぶことです。よって、 インストールしたいパッケージ名を見つけるにはどうすれば良いのでしょうか?

この目的のためには、いくつかのリソースがあります。apt-cache から 始めましょう。このプログラムは、APT システムが自分のデータベースを 整備するために使われます。ここでは、より実用的な応用について概観する ことにしましょう。


5.1 パッケージ名の発見

例えば、旧き良き Atari 2600 の日々について回想に耽りたいとしましょう。 APT を使って Atari エミュレータをインストールし、いくつかのゲームを ダウンロードできます。次のようにしてください:

     [root]@[/] # apt-cache search atari
     atari-fdisk-cross - Partition editor for Atari (running on non-Atari)
     circuslinux - The clowns are trying to pop balloons to score points!
     madbomber - A Kaboom! clone
     tcs - Character set translator.
     atari800 - Atari emulator for svgalib/X/curses
     stella - Atari 2600 Emulator for X windows
     xmess-x - X binaries for Multi-Emulator Super System

探しているものに関連するいくつかのパッケージと、その簡単な説明が表示 されています。特定のパッケージに関するさらに詳しい情報を得るには、 次のようにしてください:

     [root]@[/] # apt-cache show stella  
     Package: stella
     Priority: extra
     Section: non-free/otherosfs
     Installed-Size: 830
     Maintainer: Tom Lear <tom@trap.mtview.ca.us>
     Architecture: i386
     Version: 1.1-2
     Depends: libc6 (>= 2.1), libstdc++2.10, xlib6g (>= 3.3.5-1)
     Filename: dists/potato/non-free/binary-i386/otherosfs/stella_1.1-2.deb
     Size: 483430
     MD5sum: 11b3e86a41a60fa1c4b334dd96c1d4b5
     Description: Atari 2600 Emulator for X windows
      Stella is a portable emulator of the old Atari 2600 video-game console
      written in C++.  You can play most Atari 2600 games with it.  The latest
      news, code and binaries for Stella can be found at:
      http://www4.ncsu.edu/~bwmott/2600

上記の出力から、インストールしたい (あるいはしたくない) パッケージの 詳細が得ることができ、そのパッケージの完全な説明文もあります。 そのパッケージがインストール済で、しかも新バージョンが利用可能なら、 両バージョンの情報が表示されます。例えば:

     [root]@[/] # apt-cache show lilo
     Package: lilo
     Priority: important
     Section: base
     Installed-Size: 271
     Maintainer: Russell Coker <russell@coker.com.au>
     Architecture: i386
     Version: 1:21.7-3
     Depends: libc6 (>= 2.2.1-2), debconf (>=0.2.26), logrotate
     Suggests: lilo-doc
     Conflicts: manpages (<<1.29-3)
     Filename: pool/main/l/lilo/lilo_21.7-3_i386.deb
     Size: 143052
     MD5sum: 63fe29b5317fe34ed8ec3ae955f8270e
     Description: LInux LOader - The Classic OS loader can load Linux and others
      This Package contains lilo (the installer) and boot-record-images to
      install Linux, OS/2, DOS and generic Boot Sectors of other OSes.
      .
      You can use Lilo to manage your Master Boot Record (with a simple text screen)
      or call Lilo from other Boot-Loaders to jump-start the Linux kernel.
     
     Package: lilo
     Status: install ok installed
     Priority: important
     Section: base
     Installed-Size: 190
     Maintainer: Vincent Renardias <vincent@debian.org>
     Version: 1:21.4.3-2
     Depends: libc6 (>= 2.1.2)
     Recommends: mbr
     Suggests: lilo-doc
     Description: LInux LOader - The Classic OS loader can load Linux and others
      This Package contains lilo (the installer) and boot-record-images to
      install Linux, OS/2, DOS and generic Boot Sectors of other OSes.
      .
      You can use Lilo to manage your Master Boot Record (with a simple text screen)
      or call Lilo from other Boot-Loaders to jump-start the Linux kernel.

最初のものが利用可能なパッケージのもので、二番目がインストール済の ものであることに注意してください。パッケージに関する一般的な情報を得るには、 次のようにしてください:

     [root]@[/] # apt-cache showpkg penguin-command
     Package: penguin-command
     Versions: 
     1.4.5-1(/var/lib/apt/lists/download.sourceforge.net_debian_dists_unstable_main_binary-i386_Packages)(/var/lib/dpkg/status)
     
     Reverse Depends: 
     Dependencies: 
     1.4.5-1 - libc6 (2 2.2.1-2) libpng2 (0 (null)) libsdl-mixer1.1 (2 1.1.0) libsdl1.1 (0 (null)) zlib1g (2 1:1.1.3) 
     Provides: 
     1.4.5-1 - 
     Reverse Provides:

さらにどのパッケージに依存しているのかを見るには:

     [root]@[/] # apt-cache depends penguin-command
     penguin-command
       Depends: libc6
       Depends: libpng2
       Depends: libsdl-mixer1.1
       Depends: libsdl1.1
       Depends: zlib1g

まとめると、我々は欲しいパッケージ名を探すのに使える多様な武器を持って いることになります。


5.2 dpkg を使ってパッケージ名を探す

パッケージ名を特定する方法の一つに、パッケージ中の重要なファイル名を 知っている場合があります。例えば、特定の ".h" ファイルがないと コンパイルできない場合、次のようにしてください。

     [root]@[/] # dpkg -S stdio.h
     libc6-dev: /usr/include/stdio.h
     libc6-dev: /usr/include/bits/stdio.h
     perl: /usr/lib/perl/5.6.0/CORE/nostdio.h

あるいは:

     [root]@[/] # dpkg -S /usr/include/stdio.h
     libc6-dev: /usr/include/stdio.h

システムにインストール済のパッケージ名を探す時も、便利です。例えば、 ハードディスクを掃除したいなら次のようにしてください。

     [root]@[/] # dpkg -l | grep mozilla
     ii  mozilla-browse 0.9.6-7        Mozilla Web Browser

このコマンドの問題点は、パッケージ名が "途切れて" しまうことです。 上記の例だと、パッケージの本当の名前は mozilla-browser です。 これに対処するには、次のように環境変数 COLUMNS を使うことができます:

     [kov]@[couve] $ COLUMNS=132 dpkg -l | grep mozilla
     ii  mozilla-browser             0.9.6-7                     Mozilla Web Browser - core and browser

あるいは次のように、description かその一部を使うこともできます:

     [root]@[/] # apt-cache search "Mozilla Web Browser"
     mozilla-browser - Mozilla Web Browser

5.3 "必要に応じて" パッケージをインストールする方法

プログラムをコンパイルしていて、まったくの突然、ドカーン! エラーの 原因は、ある .h ファイルが無かったからでした。このような 展開は、auto-apt プログラムを使うことで避けられます。 あるパッケージが必要になった時点でインストールするかどうかを尋ね、 関連するプロセスを停止して、インストールが完了したら再開します。

基本的には、次のように実行してください:

     auto-apt run command

'command' の個所には、実行するのに必要なファイルが無いコマンドを 指定してください。例えば:

     auto-apt run ./configure

必要なパッケージをインストールするかどうかを尋ねてきて、自動的に apt-get を呼び出します。X の実行中であれば、デフォルトのテキスト インターフェイスに代わってグラフィカルインターフェイスが使われ ます。

auto-apt はデータベースを持っており、効果的に使うためにはそれを更新する 必要があります。そのためには、auto-apt update, auto-apt updatedb, auto-apt update-local などのコマンドを使います。


5.4 パッケージの変更点を常に知らせる方法

どのパッケージも、個別のドキュメント用ディレクトリ (/usr/share/doc/packagename) に、changelog.Debian.gz という ファイルをインストールします。このファイルは、前回のバージョンからの変更点一覧を 含んでいます。こういったファイルは、'zless' などの助けを借りて読むこと ができますが、全システムをアップグレードした後などは、アップグレードされた 各パッケージの changelog を探すのに骨が折れます。

apt-listchanges というツールを使って、この作業を自動化できます。 まずは apt-listchanges パッケージをインストールする必要が あります。インストール中に、Debconf が設定を行ないます。質問に対して、 あなたの希望するように答えてください。

"Should apt-listchanges be automatically run by apt?" というオプションは、 アップグレード途中で apt によってインストールされようとしている各パッケージの 変更点一覧を表示し、作業を続ける前にその内容を確認できるので、役に立ちます。 "Should apt-listchanges prompt for confirmation after displaying changes?" と いうオプションは、変更点一覧を読んだ後で、インストールを続けるかどうかを問い 問い合わせてくれるので役に立ちます。継続を望まないと答えれば、apt-listchanges は エラーを返し、apt はインストールを取り止めます。

apt-listchanges がインストールされればすぐに、その後ダウンロードされた (あるい は CD やマウントされたディスクから入手した) パッケージはインストールされる前に 変更点一覧を表示するようになります。


[ 前のページ ] [ 目次 ] [ 1 ] [ 2 ] [ 3 ] [ 4 ] [ 5 ] [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] [ 次のページ ]


APT HOWTO (Obsolete Documentation)

1.7.6 - 2002 年 1 月

Gustavo Noronha Silva kov@debian.org