dpkg-deb(1)

名前
dpkg-deb - Debian パッケージアーカイブ (.deb) 操作ツール

書式
dpkg-deb -b|--build directory [archive|directory]
dpkg-deb -I|--info archive [control-file-name ..]
dpkg-deb -f|--field archive [control-field-name ...]
dpkg-deb -c|--contents archive
dpkg-deb -W|--show [--showformat=format] archive
dpkg-deb -x|--extract|-X|--vextract archive directory
dpkg-deb -e|--control archive directory
dpkg-deb --fsys-tarfile archive

説明
dpkg-deb は、Debian アーカイブの作成、展開、情報の表示をする。 パッケージをシステムにインストールするときや削除するときには dpkg を使うこと。 また、 dpkg に対して dpkg-deb のオプションを指定することで、 dpkg を通して dpkg-deb を呼び出すことができる。 dpkg は、オプションが dpkg-deb のオプションであると判断すると、 dpkg-deb を起動する。

アクション・オプション

--build, -b
    directory に格納されているファイルシステム木から debian アーカイブを作成する。 directory には、control ファイルなどの制御情報ファイルのある DEBIAN サブディレクトリが必ず存在しなければならない。 DEBIAN ディレクトリはバイナリパッケージのファイルシステム・アーカイブには含まれない。そのかわり、DEBIAN ディレクトリ以下にあったファイルはバイナリパッケージ制御情報エリアに置かれる。 圧縮レベルを指定する場合は、 -z# オプションを追加する。 dpkg-deb は、このオプションを gzip に渡す。 --nocheck を指定しないかぎり、 dpkg-deb は DEBIAN/control を読み、解析する。 dpkg-deb は、文法エラーやその他の問題のチェックをし、そして、構築中のバイナリパッケージ名を表示する。 dpkg-deb はまた、 DEBIAN 管理情報ディレクトリにある、管理スクリプトやその他のファイルのパーミッションをチェックする。 もし、 archive を指定しない場合、 dpkg-deb はパッケージを directory.deb という名前で作成する。 もし、すでにアーカイブが作成されて存在している場合、上書きする。 2 番目の引き数がディレクトリの場合、 dpkg-deb は package_version_arch.deb または package_version.deb (パッケージ制御ファイルに Architecture フィールドがない場合)というファイルを作成する。アーカイブの代わりにディレクトリを指定するときには、 --nocheck オプションは使用してはいけない( dpkg-deb は、使用するファイル名を調べるために、パッケージ制御ファイルを読んで解析する必要があるから)。

--info, -I
    バイナリパッケージアーカイブの情報を表示する。 もし control-file-name が指定されていない場合、制御ファイル一覧と、パッケージの中身の要約を表示する。 もし control-file-name を指定した場合、 dpkg-deb は指定した順でファイル名を表示する。もし指定したファイルのどれかが存在しなければ、存在しなかったファイルに対してそれぞれエラーメッセージを表示し、そして終了ステータス 2 で終了する。

--show, -W
    バイナリパッケージアーカイブの情報を --showformat の引き数で指定した形式で表示する。デフォルトの出力形式は、一行ごとにパッケージ名とバージョンをタブで区切ったものである。

--field, -f
    バイナリパッケージアーカイブから制御ファイル情報を取り出す。 control-file-field が指定されていない場合、制御ファイルすべてを表示する。 もし何か指定されている場合、 dpkg-deb はその内容を制御ファイルに現われる順序で表示する。もし、複数の control-file-field が指定された場合、 dpkg-deb は、それぞれの情報の前にフィールド名(そしてコロンと空白)を表示する。 指定したフィールドがみつからない場合でもエラーを報告しない。

--contents, -c
    パッケージアーカイブに含まれるファイルシステム木の内容の一覧を表示する。現在のバージョンは、 tar の冗長出力(-v オプション)をそのまま表示する。

--extract, -x, --vextract, -X
    パッケージアーカイブからファイルシステム木を、指定したディレクトリに展開する。 --vextract (-X) は現在展開中のファイルを表示する。 --extract (-x) はエラーが発生しない限り何も表示しない。 ルートディレクトリでパッケージを展開することは正しいインストールにはならないことに注意すること! パッケージのインストールには dpkg を使うべきである。 directory (親やそれより上のディレクトリは含まない)は必要があれば作成される。

--fsys-tarfile
    バイナリパッケージからファイルシステム木を展開し、標準出力に tar 形式で出力する。 tar と共に使用することで、特定のファイルをパッケージアーカイブから取り出すことができる。

--control, -e
    パッケージアーカイブから制御情報ファイルを指定したディレクトリに展開する。 もしディレクトリが指定されない場合、カレントディレクトリにある DEBIAN サブディレクトリに展開する。 指定したディレクトリ(親やそれより上のディレクトリは含まない)は必要があれば作成される。

--help, -h
    dpkg-deb の使用方法、つまりすべてのオプションとその使い方の要約を表示する。

--version
    dpkg-deb のバージョン番号を表示する。

--licence
    dpkg-deb の著作権と無保証に関する情報を表示する(アメリカ式の綴りである --license もサポートしている)。

その他のオプション

--showformat=format
    このオプションは、--show が生成する出力の書式を指定するものである。書式は文字列で、パッケージごとに出力される。 文字列は "${field-name}" 形式であらゆる status フィールドを参照することができる。有効なフィールドの一覧は、そのパッケージに -I を使用することで簡単に生成できる。書式オプションの完全な解説(エスケープシーケンスやフィールドでのタブの使い方を含む)は、dpkg-query(1)の --showformat オプションの解説を参照すること。 このフィールドのデフォルトのフォーマット文字列は "${Package}\t${Version}\n" である。

--new
    dpkg-deb に `新しい' 形式のアーカイブで構築させる。これはデフォルトの動作である。

--old
    dpkg-deb に `古い' 形式のアーカイブを構築させる。この古いアーカイブ形式は、新しい形式よりも非 Debian ツールで処理することが難しく、現在は使用されていない。このオプションは、i386 の a.out 形式のみを対象としてリリースされた、バージョン 0.93.76(1995 年 9 月)以前の dpkg で処理するためのパッケージを構築するときだけに使用される。

--nocheck
    dpkg-deb --build のときにアーカイブの中身を確認させない。これによって、アーカイブの中身にどのように問題があっても、望んだ通りアーカイブを構築することができる。

--debug, -D
    デバッグ出力を有効にする。これはあまり役に立たない。

バグ
dpkg-deb -I package1.deb package2.deb はうまく動作しない。 .deb ファイル自体には認証の手段がない。実際、単純なチェックサムさえもない。 dpkg-deb でソフトウェアをインストールしようとしてはいけない! 必ず dpkg を使うこと。そうすれば、すべてのファイルを正しい位置に置き、パッケージのスクリプトを実行し、状態や内容を記録する、ということを確実に実行できる。

関連項目
deb(5), deb-control(5), dpkg(1), dselect(1).

著者
dpkg-deb とこのマニュアルページは Ian Jackson が作成した。これらの著作権は彼にあり(Copyright (C)1995-1996)、GNU 一般公有使用許諾により頒布される。これらは無保証である。詳細は /usr/share/doc/dpkg/copyright と /usr/share/common-licenses/GPL を参照すること。

翻訳者
喜瀬浩 <kise@fuyuneko.jp>

翻訳校正
Debian JP Documentation ML <debian-doc@debian.or.jp>