table of contents
| deb(5) | dpkg suite | deb(5) |
NAMN¶
deb - Debians binära paketformat
SYNOPS¶
filnamn.deb
BESKRIVNING¶
.deb-formatet är Debians binära paketformat. Det förstås sedan dpkg 0.93.76, och genereras som förval sedan dpkg 1.2.0 och 1.1.1elf (i386/ELF-versioner).
Formatet som beskrivs här används sedan Debian 0.93; detaljer om det gamla formatet finns i deb-old(5).
FORMAT¶
Filen är ett ar-arkiv med det magiska numret !<arch>. Endast det gemensamma ar-arkivformatet stöds, utan utökningar för långa filnamn, men med filnamn som kan innehålla ett avslutande snedstreck, vilket begränsar deras längd till 15 tecken (från de 16 tillåtna). Filstorlekar begränsas till 10 decimala ASCII-tecken, vilket tillåter ungefär 9536,74 MiB filer.
De tar-arkiv som tillåts för närvarande är:
- den gamla stilens format (v7)
- för-POSIX-ustar-formatet
- en delmängd av GNU-formatet
Nya stilens långa sökvägsnamn och långa länknamn, stöds sedan dpkg 1.4.1.17; stora filmetadata sedan dpkg 1.18.24.
- POSIX-ustar-formatet
Långa namn stöds sedan dpkg 1.15.0.
Okända tar-typflaggor anses utgöra fel. Som standard är enskilda tar-poststorlekar inuti ett tar-arkiv är begränsade till 11 oktala ASCII-siffror, vilket tillåter tar-poster upp till 8 GiB. GNU:s stora filmetadata tillåter 95 bitar stora tar-poststorlekar och negativa tidsstämplar, och 63-bitars UID, GID och enhetsnummer.
ar-arkivet består av flera delar i en specifik ordning:
- debina-binary
- Den första nödvändiga posten i arkivet
innehåller ett antal rader, avdelade med nyradstecken. För
närvarande finns endast en rad, formatets versionsnummer,
2.0 när den här manualsidan skrevs. Program som
läser arkiv i det nya formatet bör vara förberedda
på att underversionsnumret kan komma att ökas, och att nya
rader kan förekomma, och ska i så fall ignorera dessa.
Om huvudversionsnumret har ändrats har en inkompatibel ändring införts, och programmet ska avbrytas. Om så inte har gjorts, ska programmet kunna fortsätta utan problem, såvida det inte stöter på en oväntad post i arkivet (förutom i slutet), enligt vad beskrivs nedan.
- control.tar
- Den andra nödvändiga posten är ett tar-arkiv som
innehåller paketets metadata.
Det kan använda följande komprimeringstyper:
- ingen (stöds sedan dpkg 1.17.6)
- gzip (med filtillägget .gz)
- xz (med filtillägget .xz, stöds sedan 1.17.6)
- zstd (med filtillägget .zst, stöds sedan dpkg 1.21.18)
Det innehåller ett antal vanliga filer:
Tarbollen control kan eventuellt innehålla en post för ”.”, den aktuella katalogen.
- data.tar
- Den tredje och sista nödvändiga posten innehåller
filsystemet som ett tar-arkiv.
Det kan använda följande komprimeringstyper:
- ingen (stöds sedan dpkg 1.10.24)
- gzip (med filtillägget .gz)
- xz (med filtillägget .xz, stöds sedan 1.15.6)
- zstd (med filtillägget .zst, stöds sedan dpkg 1.21.18)
- bzip2 (med filtillägget .bz2, stöds sedan dpkg 1.10.24)
- lzma (med filtillägget .lzma, stöds sedan dpkg 1.13.25)
Dessa poster måste ligga i exakt denna ordning. Nuvarande implementationer bör ignorera eventuella ytterligare poster efter data.tar. Ytterligare poster kan komma att definieras i framtiden, och kommer (om möjligt) placeras efter dessa tre. Eventuella ytterligare poster som kan komma att behöva läggas till efter debian-binary och före control.tar eller data.tar och som kan ignoreras av äldre program utan problem kommer att ha namn som börjar med understreck, ”_”.
Nya poster som inte kommer att kunna ignoreras utan problem kommer att läggas in före data.tar med namn som börjar med något annat än understreck, eller (mer troligt) göra att huvudversionsnumret ökas.
MEDIATYP¶
Nuvarande¶
application/vnd.debian.binary-package
Föråldrade¶
application/x-debian-package
application/x-deb
SE ÄVEN¶
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).
ÖVERSÄTTNING¶
Peter Krefting och Daniel Nylander.
| 2026-03-06 | 1.23.7 |