What is the DEB file format?
Files with the .deb extension contain Debian software packages used by Linux-based operating systems and their derivatives, including Ubuntu, Linux Mint, and Kali. A single .deb file is a Unix ar archive that wraps three members: a small debian-binary text file stating the format version, a control.tar archive holding metadata, and a data.tar archive holding the installation payload.
The control archive (control.tar) stores maintainer scripts and package metadata - name, version, dependencies, and other control information. On modern Debian 12+ and Ubuntu systems, the control tarball defaults to Zstandard (.zst) compression; older packages use GZIP or XZ.
The data archive (data.tar) contains the actual installation files laid out in their destination paths. This archive also uses Zstandard compression in current releases, with GZIP, BZIP2, LZMA, or XZ found in older packages.
.udeb files, also known as 'micro debs', share many similarities with .deb files. .udeb files store essentially the same data as .deb, but are limited to the essential functional files needed by the Debian installer. A related variant, .ddeb, carries detached debug symbols for developer crash analysis.
.debfiles are designed to be installed with a package manager -apt,dpkg, orgdebi- which resolves dependencies and runs maintainer scripts..debfiles can be converted to other installer formats such as.rpmusing thealientool.- On Windows and macOS, tools such as 7-Zip can extract
.debmembers for inspection, but cannot install the package.
Security & safety
RISK: MEDIUMA .deb installs software with root privileges and runs maintainer scripts (preinst/postinst), so a malicious package can fully compromise the system - treat it like an installer, not a data file. Install .deb files only from the official distro repositories or trusted vendor sites (where APT's GPG signatures or the vendor's HTTPS provide some assurance); be wary of random .deb downloads. Extracting a .deb with 7-Zip to look inside is harmless; installing it is the risky step. Inspect dependencies with GDebi before committing.
Format details
in a nutshellPrograms that open DEB files
sudo apt install ./package.deb - installs the package AND resolves its dependencies. Technical details
deep spec| Container format | Unix `ar` archive; begins with 8-byte magic `!<arch>\n` at offset 0 |
| Internal structure | Three `ar` members in order: `debian-binary` (format version), `control.tar.*` (metadata + scripts), `data.tar.*` (installed files) |
| Format version marker | `debian-binary` member contains the ASCII string `2.0`; this format has been stable since 1995 |
| Control archive compression | Zstandard (`.zst`) on Debian 12+ and Ubuntu 22.04+; XZ on older releases; GZIP on legacy packages |
| Data archive compression | Zstandard (`.zst`) by default in current Debian/Ubuntu; also GZIP, BZIP2, LZMA, or XZ in older packages |
| MIME type | `application/vnd.debian.binary-package` (registered); also `application/x-deb` |
| Integrity checking | `md5sums` file inside `control.tar`; APT verifies repository metadata via GPG (`Release.gpg` / `InRelease`) |
| Installation tools | `dpkg` (low-level); `apt` / `apt-get` (dependency-resolving front-end); `gdebi` (single-file GUI/CLI installer) |
| Package metadata fields | Stored in `control` file inside `control.tar`; mandatory fields: Package, Version, Architecture, Maintainer, Description |
| Supported platforms | Debian, Ubuntu, Linux Mint, Kali Linux, Raspberry Pi OS, Pop!_OS; legacy iOS jailbreak (Cydia) |
| `.udeb` micro-deb variant | Stripped package for the Debian installer - no maintainer scripts, minimal metadata, no dependency resolution |
| `.ddeb` debug variant | Detached debug-symbol package fetched automatically by crash handlers (`apport`, `gdb`) |
| Repository authentication | Repositories are GPG-signed; the `.deb` file itself carries no individual signature |
| Cross-format conversion | `alien` converts `.deb` to `.rpm`, Slackware `.tgz`, and other installer formats |
| Typical file size | A few KB (minimal utilities) to several hundred MB (games, IDE toolchains, media packages) |
| Released | 1995 (the modern dpkg 'ar' .deb format; Debian itself dates to 1993) |
| Latest version | deb format version 2.0 (the '2.0' string in debian-binary; stable for decades) |
| Open standard | Yes · royalty-free |
| Specification | manpages.debian.org |
DEB conversions
Community Q&A
asked by usersNo questions yet - be the first to ask about DEB files.
Frequently asked questions
How do I install a .deb file on Ubuntu?
sudo apt install ./package.deb, which also installs any required dependencies.Why does `dpkg -i` say dependencies are missing?
sudo apt -f install afterwards, or just use sudo apt install ./file.deb from the start.Can I open a .deb file on Windows?
What's the difference between .deb and .rpm?
alien can convert with caveats.How do I extract a .deb without installing it?
dpkg-deb -x file.deb outdir/ for the files, or dpkg-deb -e for the control info. On Windows/macOS, open it with 7-Zip/Keka.