deb
deb(5) dpkg suite deb(5)
NOM
deb - Format des paquets binaires Debian
SYNOPSIS
nom-du-fichier.deb
DESCRIPTION
Le format .deb est le format des paquets binaires de Debian. Il est compatible depuis la version 0.93.76 de dpkg, et il est généré par défaut depuis les
versions 1.2.0 de dpkg et 1.1.1elf (constructions i386/ELF).
Le format décrit ici est utilisé depuis la version 0.93 de Debian ; les détails concernant le vieux format sont consultables dans deb-old(5).
FORMAT
Ce fichier est une archive ar avec une valeur magique de !<arch>. Seul le format commun ar est géré, sans extension pour les noms longs de fichiers, mais
avec optionnellement un caractère « / » final, ce qui limite leur longueur utile à 15 caractères (sur les 16 autorisés). Les tailles de fichiers sont
limitées à 10 chiffres décimaux ASCII, ce qui permet d'utiliser des fichiers membres d'une taille jusqu'à environ 9536,74 Mio.
Les archives tar actuellement gérées sont le format v7 d'origine, le format ustar pré-POSIX, un sous-ensemble du format GNU (uniquement le nouveau format de
noms longs pour les chemins et les liens, gérés depuis dpkg 1.4.1.17 ; « large file metadata » depuis dpkg 1.18.24) et le format ustar POSIX (noms longs
gérés depuis dpkg 1.15.0). Les marqueurs tar (« typeflags ») inconnus provoquent une erreur. La taille de chaque entrée dans une archive tar est limitée à 11
chiffres en octal ASCII ce qui permet d'utiliser des entrées tar d'une taille jusqu'à 8 Gio. La gestion des « large file metadata » de GNU permet des entrées
tar 95 bits et des horodatages négatifs, ainsi que des numéros de 63 bits d'UID, GID et de périphériques.
Le premier membre est nommé debian-binary et contient une succession de lignes, séparées par des caractères saut de ligne. Pour le moment, une seule ligne
est présente : le numéro de version du format, 2.0 à l'heure où ce document a été écrit. Les programmes lisant des archives Debian récentes doivent être
préparés à une augmentation du numéro de version mineur et à la présence de nouvelles lignes, et doivent les ignorer si tel est le cas.
Si le numéro de version majeur a changé, cela signifie qu'une modification entraînant une incompatibilité entre les versions a été effectuée, et le programme
doit alors s'arrêter. Si ce n'est pas le cas, le programme doit être en mesure de continuer à traiter correctement le fichier, à moins qu'il ne rencontre un
membre non reconnu dans l'archive (excepté à la fin de cette dernière), comme décrit ci-dessous.
Le second membre requis est nommé control.tar. Il s'agit d'une archive tar contenant les informations de contrôle du paquet, soit non compressée (gérée
depuis dpkg 1.17.6) ou compressée grâce à gzip (avec extension .gz), xz (avec extension .xz, gérée depuis dpkg 1.17.6) ou zstd (avec extension .zst, gérée
depuis dpkg 1.21.18), sous la forme d'une série de fichiers simples, parmi lesquels le fichier control est strictement requis et contient les principales
informations de contrôle, les fichiers md5sums, conffiles, triggers, shlibs et symbols qui contiennent des informations de contrôle optionnelles, et les
fichiers preinst, postinst, prerm et postrm qui sont des scripts optionnels du responsable. L'archive de contrôle peut éventuellement contenir une entrée
pour « . », le répertoire courant.
Le troisième et dernier membre obligatoire est appelé data.tar. Il contient le système de fichiers sous forme d'une archive tar, soit non compressée (gérée
depuis dpkg 1.10.24) ou compressée avec gzip (avec extension .gz), xz (avec extension .xz, gérée depuis dpkg 1.15.6), zstd (avec extension .zst, gérée depuis
dpkg 1.21.18), bzip2 (avec extensions .bz2, gérée depuis dpkg 1.10.24) ou lzma (avec extension .lzma, gérée depuis dpkg 1.13.25).
Ces membres doivent apparaître dans cet ordre exact. Les implémentations actuelles devraient ignorer tout membre additionnel après data.tar. D'autres membres
seront éventuellement proposés, et (si possible) seront placés après ces trois derniers. Tout autre membre qui nécessitera d'être inséré après debian-binary
et avant control.tar ou data.tar et qui pourra être ignoré sans problème par des programmes plus anciens, aura un nom commençant par un caractère de
soulignement, « _ ».
Les nouveaux membres qui ne pourront pas être ignorés sans conséquence seront insérés avant data.tar avec des noms préfixés par quelque chose d'autre qu'un
caractère de soulignement, ou impliqueront plus probablement une incrémentation du numéro majeur de version.
TYPE DE SUPPORT Actuel
application/vnd.debian.binary-package
Obsolète
application/x-debian-package
application/x-deb
VOIR AUSSI
deb-old(5), dpkg-deb(1), deb-control(5), deb-conffiles(5), deb-md5sums(5), deb-triggers(5), deb-shlibs(5), deb-symbols(5), deb-preinst(5), deb-postinst(5),
deb-prerm(5), deb-postrm(5).
TRADUCTION
Ariel VARDI <ariel.vardi@freesbee.fr>, 2002. Philippe Batailler, 2006. Nicolas François, 2006. Veuillez signaler toute erreur à
<debian-l10n-french@lists.debian.org>.
1.21.22 2023-05-11 deb(5)