deb - Debian
バイナリパッケージ形式
filename.deb
.deb フォーマットは Debian
バイナリパッケージのファイル形式であり、dpkg
0.93.76
以降で扱うことができる。dpkg
1.2.0
以降のすべてのバージョンと
i386/ELF 1.1.1elf
以降のすべてのバージョンでは、デフォルトでこの形式が作成される。
このマニュアルで説明する形式は
Debian 0.93
から使用されている。古い形式の詳細については
deb-old(5) を参照のこと。
フォーマット¶
このファイルは
!<arch>
というマジックナンバーを持つ
ar
アーカイブである。一般的な
ar
アーカイブ形式のみがサポートされているため長いファイル名はサポートされていないが、ファイル名が
(本来許可されている 16
文字のうち) 15
文字以内の場合、末尾にスラッシュを付けることができる。ファイルサイズは、ASCII
の 10 進数で 10
桁以内となっており、約
9536.74 MiB
のメンバファイルを扱うことができる。
現在使用できる
tar
アーカイブの形式は、old-style
(v7) 形式、POSIX 以前の ustar
形式、GNU
形式のサブセット
(新しい形式の長いパス名とリンク名のみ。dpkg
1.4.1.17
以降でサポート)、POSIX ustar
形式
(長いパス名については
dpkg 1.15.0 以降でサポート)
である。認識されないtar
の typeflag
はエラーとなる。
アーカイブの 1
番目のファイルは
debian-binary
である。このファイルは、改行で区切られた何行かからなるが、本マニュアルページが書かれた時点では、形式のバージョン番号である
2.0 が書かれた 1
行のみが存在している。新しい形式のアーカイブを読み込むプログラムは、マイナーバージョン番号の増加や、新しい行の追加に対応すべきである。その際には、これらを無視すること。
メジャーバージョン番号が変更されている場合は、互換性のない変更がされているとみなし、プログラムは停止すべきである。メジャーバージョンが変更されていない場合は、以下で説明するように、アーカイブに予期しないファイルが含まれていない限り
(アーカイブ末尾に含まれる場合を除く)、プログラムは安全に実行を継続できる必要がある。
2
番目の必須ファイルは
control.tar.gz
である。このファイルは、パッケージ制御情報が格納されたテキストファイルからなる
gzip で圧縮された tar
アーカイブである。
control ファイル
(制御情報ファイル)
は必須であり、中心となる制御情報が含まれる。アーカイブには、カレントディレクトリを意味する
`
.'
のエントリがあってもよい。
3
番目となる最後の必須ファイルは
data.tar
である。このファイルは、ファイルシステムツリーが格納された
tar
アーカイブである。ファイルは、gzip
(拡張子
.gz)、xz (拡張子
.xz 、dpkg
1.15.6以降でサポート)、bzip2
(拡張子
.bz2、dpkg
1.10.24以降でサポート)、lzma
(拡張子
.lzma、dpkg 1.13.25
以降でサポート)
により圧縮される場合もあるが、非圧縮のまま
(dpkg 1.10.24 以降でサポート)
の場合もある。
これらのファイルはこの通りの順序でアーカイブされていなければならない。現在の実装では、
data.tar
より後に追加されているファイルを無視すべきである。将来的に追加のファイルが定義された場合は、(やむを得ない場合を除き)
これら 3
つのファイルより後にアーカイブされることになるだろう。
data.tar
の前に何らかのファイルを追加する必要が発生した際に、それらを古いプログラムから安全に無視させるには、アンダースコア
`_'
から始まる名前を付ければよい。
安全に無視させることのできない、アンダースコア以外の文字で始まる名前のファイルが
data.tar
の前に追加されるかも知れないが、その場合は、(おそらく)
メジャーバージョンアップとなるだろう。
関連項目¶
deb-old(5),
dpkg-deb(1),
deb-control(5).
翻訳者¶
高橋 基信 <monyo@monyo.com>. 喜瀬
浩 <kise@fuyuneko.jp>. 関戸 幸一
<sekido@mbox.kyoto-inet.or.jp>. 鍋谷 栄展
<nabe@debian.or.jp>. 倉澤 望
<nabetaro@debian.or.jp>. 石川 睦
<ishikawa@linux.or.jp>. 鵜飼 文敏
<ukai@debian.or.jp>. 中野 武雄
<nakano@apm.seikei.ac.jp>.
翻訳校正¶
Debian JP Documentation ML <debian-doc@debian.or.jp>.