Aller au contenu principal

Dpkg


Dpkg


dpkgディーピーケージー)とはDebianのパッケージ管理システムの基礎となるソフトウェアである。dpkgは .deb の拡張子を持ったパッケージをインストール、削除し、そしてパッケージの情報を得るために使われる。

dpkg自身は低水準のツールである。パッケージをリモートホストから取得したり、複雑なパッケージ間の依存関係を扱うためには、APTのようなより高水準のツールが使われる。さらに、dpkgよりも洗練されたパッケージ間の依存関係の処理方法や親切なインターフェイスを持っているaptitudeやsynapticのようなソフトウェアの方がよく使われる。

Debianパッケージ "dpkg" はdpkgプログラムを提供している。さらに、それ以外にもdpkg-statoverridedpkg-divertupdate-alternativesなど、パッケージシステムを機能させるために実行時に必要ないくつかのプログラムを提供している。また、start-stop-daemoninstall-infoのようなプログラムも含まれている。一方、Debianパッケージ "dpkg-dev"には、以下に述べるパッケージ構築用の多くのツールが含まれている。

歴史

dpkgはもともとマット・ウェルシュとカール・ストリーター、イアン・マードックによって作られたものである。最初はPerlのプログラムであったが、後に1993年に大部分がイアン・ジャクソンによってC言語で書き直された。dpkgという名前はもともと"Debian パッケージ(package)"を省略したものであったが、dpkgというソフトウェアは、Debianパッケージがどのように振る舞うか定義するDebianポリシーのみならず、debパッケージのフォーマットと密接に関わってきているので、その意味は明確に変わってきている。

具体例

.debパッケージをインストールするには以下のように入力する。

dpkg -i debFileName

ここで、debFileNameはパッケージの情報を含むファイルの名前であり、一般的に .debという拡張子を持っている。このコマンドはroot権限で実行する必要がある。

インストールされているパッケージのリストは以下のコマンドで得られる。

dpkg -l [optional pattern]

インストールされているパッケージを削除するためには以下のコマンドを実行する。

dpkg -r package name

開発用ツール

dpkg-devには、パッケージを構築する際に呼び出される以下のツール群が含まれている。

  • dpkg-source - Debianパッケージのソースファイルを圧縮し展開する。
  • dpkg-deb - バイナリパッケージを圧縮し展開する。
  • dpkg-gencontrol - 展開された Debianソースのツリーから情報を読み込み、バイナリパッケージのcontrolファイルを生成し、debian/filesの中にバイナリパッケージの名前を挿入する。
  • dpkg-shlibdeps - ライブラリに関する実行時の依存関係を計算する。
  • dpkg-genchanges - 展開されたすでに構築済みのDebianソースツリーから情報を読み込み、コントロールファイル(.changes)を作り出す。
  • dpkg-buildpackage - パッケージを自動的に構築するために使うことができる制御用スクリプト。
  • dpkg-distaddfile - debian/files にファイル名を追加する。
  • dpkg-parsechangelog - 展開されたDebianソースツリーの更新履歴ファイル(changelog)を読み、その履歴の情報から整形済みの出力を作り出す。

脚注

関連項目

  • apt
  • alien

比較

  • dpkgはRPMと類似している。
  • ipkgは容量が制限されたLinux向けのパッケージ管理システムである。dpkgの影響を受けている。

外部リンク

  • Debianのdpkgパッケージ
  • debian-dpkgメーリングリスト
  • dpkg(8) マニュアルページ
  • General Origin handling.

Text submitted to CC-BY-SA license. Source: Dpkg by Wikipedia (Historical)