APTはパッケージの取り寄せ、インストール、アップグレード、検索などを行う 便利なアプリケーションです.RPMに対してパッケージ間の依存関係や競合関係 を解決してくれるためOSのバージョンアップを行うときにも利用できます.
APTはVine Linux 2.1.5から正式採用になっていますので,それ以前のバージョ ンをお持ちの方は,Vine Plusからrpmコマンドを用いてインストールする必要が あります.rpmコマンドの使い方は次節を御覧ください.
APTがインストールされていると,ファイル /etc/apt/sources.list があるはず です.このファイルには apt line と呼ばれるパッケージを取り寄せる場所が記 述されています.「#」で始まっている行はコメントになっています.標準では, アップデートパッケージのみをvinelinux.orgからダウンロードするようになっ ています.
ネットワークに接続されている場合は、ネットワーク上のサーバからダウンロー ドして,インストール/アップグレードすることができます.ただし、ダイアル アップなどの低速なネットワークでOSのバージョンアップを行うと,非常に時間 がかかりますので注意してください.
ファイル /etc/apt/sources.listの標準設定では,vinelinux.orgからアップデー トパッケージのみをダウンロードするようになっています.もし,別のサイトか らダウンロードする場合は,このファイルを修正してください.配布されている sources.list では様々な apt line の例が書かれていますので、必要な個所の コメントを外すことで、そのパッケージを apt の対象に含めることができます。
たとえば Vine Linux 2.5 や VinePlus 2.5 を apt line に含めるには以下のよ うにのコメントを外します(#を取ってください)。
#rpm ftp://ftp.jaist.ac.jp/os/linux/Vine/apt 2.5/$(ARCH) main plus plus-noarch #rpm-src ftp://ftp.jaist.ac.jp/os/linux/Vine/apt 2.5/$(ARCH) main plus
標準ではネットワークにアクセスします.CD-ROM等を入手している場合は,ファ イル/etc/apt/sources.listを修正します.CD-ROMを /mnt/cdromにマウントして いる場合は,このファイルにある
#rpm file:/mnt/cdrom/ Vine main
のコメントを外します.また,ネットワークにアクセスしないように,
rpm http://vinelinux.org/apt 2.5/$(ARCH) updates
rpm-src http://vinelinux.org/apt 2.5/$(ARCH) updates
などのhttpやftpアクセスの行をコメントにします(先頭に#を入れてください).
まず,インストールされているパッケージ情報と新しいパッケージの情報のデー タベースを更新します。apt-getコマンドを用いて,apt line 上のパッケージ情 報を取得し APT 用のデータベースを構築します。この段階ではまだパッケージ の更新は行われません.sources.list の変更をした場合や、前回の apt-get か ら数時間以上たった場合はパッケージ情報が更新されていますので、かならず 更新の操作をしてください。
アップデートパッケージを vinelinux.org からダウンロードする場合,以下の ように表示されます.
# apt-get update
取得:1 http://vinelinux.org 2.5/i386/base/pkglist.updates [14B]
取得:2 http://vinelinux.org 2.5/i386 release.updates
無視 http://vinelinux.org 2.5/$(ARCH)/base/mirrors
取得完了: 14B を 0s (80B/秒)
ファイル依存を処理しています... 完了
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
W: http://vinelinux.org/apt/ は認証を省略します。
また,CD-ROMを利用する場合,以下のように表示されます.
# apt-get update
無視 file: Vine/base/mirrors
ファイル依存を処理しています... 完了
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
W: file:/mnt/cdrom/ は認証を省略します。
既にインストールされているパッケージのアップデートを行なうには
apt-get upgradeで行います.この場合は,パッケージが他のものと入
れ替わる場合や、消えると言った場合には保留されますので、完全なアップグレー
ドをすることはできません.
# apt-get upgrade
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
以下のパッケージがアップグレードされます:
emacs emacsen-common
2 個のアップグレードパッケージ, 0 個の新規パッケージ, 0 個の削除/リプレースパッケージ, 0 個の保留パッケージがあります。
取得パッケージ: 20.4MB のアーカイブを取得します。インストール後は 564kB が使用されます。
続行しますか? [Y/n]
オプション-sあるいは--no-actをapt-getの後に指
定すると,実際にはアップグレード動作は行ないません。通常は、まずこのオプ
ションを指定して,どのパッケージがアップグレードされるか確認してから行う
と良いでしょう.
パッケージが入れ替わる場合などの依存関係の解決が必要な場合は,
dist-upgradeを用います.OS全体のバージョンアップを行う場合はこ
ちらを使用します.
# apt-get dist-upgrade
特定のパッケージをインストールしたりアップグレードする場合は,
apt-get installを用います.
# apt-get install (パッケージ名)
パッケージ名には複数のパッケージを空白で区切って指定することができます.
パッケージに依存関係がある場合は、自動的に解決され必要となるパッケージも
インストールやアップグレードされます。
例えば,パッケージxemacsの場合は,以下のようになります.
# apt-get install xemacs
パッケージリストを読みこんでいます... 完了
依存情報ツリーを作成しています... 完了
以下の追加パッケージがインストールされます:
xemacs-sumo
以下のパッケージが新たにインストールされます:
xemacs xemacs-sumo
0 個のアップグレードパッケージ, 2 個の新規パッケージ, 0 個の削除/リプレースパッケージ, 32 個の保留パッケージがあります。
取得パッケージ: 0B/21.0MB のアーカイブを取得します。インストール後は 61.0MB が使用されます。
続行しますか? [Y/n]y
RPM コマンドを実行しています (-U)...
xemacs-sumo ##################################################
xemacs ##################################################
..後略..
特定のパッケージをインストールする場合は,removeを用います.
# apt-get remove (パッケージ名)
パッケージ名には複数のパッケージを空白で区切って指定することができます.
パッケージの情報を知りたい場合は,apt-cacheコマンドを用います.
まず,gencachesで情報を収集しておきます.
# apt-cache gencaches
個別のパッケージ情報を知りたい場合は,apt-cache show (パッケージ名) を用います.apt 自身の場合,以下のように表示されます.
$ apt-cache show apt
パッケージ名: apt
セクション: System Environment/Base
インストールサイズ: 2228
メンテナ: Daisuke SUZUKI <daisuke@linux.or.jp>
バージョン: 0.3.19.cnc.55-3vl7
Depends: rpm (>= 3.0.5), gnupg, ld-linux.so.2, libapt-pkg.so.3.1, libbz2.so.1, libc.so.6, libdb.so.2, libm.so.6, libpopt.so.0, librpm.so.0, libstdc++-libc6.2-2.so.3, libz.so.1, libc.so.6(GLIBC_2.0), libc.so.6(GLIBC_2.1)
提供: libapt-pkg.so.3.1
アーキテクチャ: i386
ファイルサイズ: 135271872
MD5sum: 9611abf4494fd0245d7dd2b73e4ea9b0
ファイル名: apt-0.3.19.cnc.55-3vl7.i386.rpm
説明: Debian's Advanced Packaging Tool with RPM support
A port of Debian's apt tools for RPM based distributions,
or at least for Conectiva. It provides the apt-get utility that
enables a simpler, safer way to install and upgrade packages.
APT features complete installation ordering, multiple source
capability and several other unique features.
また,showpkgを用いると,パッケージの依存関係などが表示されます.
$ apt-cache showpkg apt
パッケージ: apt
バージョン: 0.3.19.cnc.55-3vl7(/var/state/apt/lists/_home_Vine_apt_VineSeed_i386_base_pkglist.main)(/var/lib/rpm/packages.rpm),
逆依存:
tiny-buildfarm,apt
synaptic,apt
apt-devel,apt
依存:
0.3.19.cnc.55-3vl7 - rpm (2 3.0.5) gnupg (0 (null)) /bin/sh (0 (null)) ld-linux.so.2 (0 (null)) libapt-pkg.so.3.1 (0 (null)) libbz2.so.1 (0 (null)) libc.so.6 (0 (null)) libdb.so.2 (0 (null)) libm.so.6 (0 (null)) libpopt.so.0 (0 (null)) librpm.so.0 (0 (null)) libstdc++-libc6.2-2.so.3 (0 (null)) libz.so.1 (0 (null)) /bin/sh (0 (null)) libc.so.6(GLIBC_2.0) (0 (null)) libc.so.6(GLIBC_2.1) (0 (null))
提供:
0.3.19.cnc.55-3vl7 - libapt-pkg.so.3.1
逆提供:
キーワードを元にパッケージを検索することができます.例えば,
「office」という文字を含むパッケージを検索してみます.
$ apt-cache search office
koffice - A set of office applications for KDE.
abiword - Multiplattform word processor
koffice-devel - Development files for KOffice
imap - Server daemons for IMAP and POP network mail protocols.
このようにkofficeとabiwordなど4つのパッケージが関係
していることがわかります.さらに詳細を知りたい場合は,--fullオ
プションを付けて実行します。検索にひっかかったパッケージそれぞれについ
てshowと同じように出力されます。