Debian-Pakete (Dateiendung: .deb
) dienen der Softwareinstallation auf Debian-basierten Betriebssystemen. Sie enthalten die zu installierenden Programme in komprimierter Form. Das Paketformat wurde von Ian Murdock entwickelt, die Abkürzung Deb leitet sich hierbei aus dem ersten Teil des Namens der Distribution Debian, der sich wiederum von den Namen „Debra“ (der Vorname Murdocks damaliger Frau) und „Ian“ ableitet.
Eine Debian-Paketdatei besteht einmal aus einem ar-Archiv, das wiederum mit gzip, bzip2 oder LZMA komprimierte tar-Archive enthält. Diese enthalten die eigentlichen Programmdateien sowie Metainformationen wie Versionsinformationen des enthaltenen Programms und Abhängigkeiten zu weiteren Paketen, welche dieses Programm zum Laufen benötigt oder die Funktion verbessern.
Um diese Informationen verwenden und verwalten zu können, konzipierte Murdock ebenfalls den Debian Package Manager (kurz dpkg). Darauf wiederum baut APT (Kommandozeilenprogramm) auf bzw. dessen Frontends (z. B. aptitude oder Synaptic), das auch weitere für das Programmpaket nötige Pakete automatisch installiert.
Die Debian-Repositorys enthalten neben diesen Binärpaketen auch Quelltextpakete.
Binärpakete können von den Werkzeugen der Debian-Paketverwaltung direkt installiert werden.
Das Auspacken des Debianpakets und die Ausführung diverser Skripte und Helferprogramme geschieht mit den Rechten des Systemadministrators, genauso wie bei den Paketverwaltungen anderer Betriebssysteme.
Einige Pakete sind auch als udeb-Pakete erhältlich. Diese werden meist dazu benutzt, ein minimales Debiansystem für die Installation zu laden. Sie bieten nur einen Bruchteil der Funktionen eines normalen deb-Paketes und werden nur vom Debian-Installer verwendet, nicht in einem installierten Debiansystem.
Jedes Binärpaket besteht aus drei Dateien, die mittels des UNIX-Kommandos ar oder dem debianspezifischen Kommando dpkg-deb entpackt werden können (z. B. ar x datei.deb):
Quelltextpakete enthalten unkompilierte Programmdaten, den Quelltext der Programme. Sie bestehen aus einem Archiv mit den originären Quelltexten (Endung .orig.tar.gz
), einer (komprimierten) diff-Datei mit Debian-spezifischen Modifikationen (.diff.gz
) und einer Beschreibungsdatei (.dsc
).
Quellpakete können nicht direkt installiert werden. Es müssen zuerst die Quelltexte kompiliert und dann eventuell ein installierbares Binärpaket daraus erstellt werden.
Der Dateiname eines binären Debian-Paketes folgt einem festgelegten Schema: Dem Namen der Software (eventuell mit Präfixen wie z. B. lib für Programmbibliotheken oder Postfixen wie z. B. -doc für Dokumentationen oder -dev für entwicklungsspezifische Pakete), einem Unterstrich, der Versionsnummer der Software, eventuell einem Bindestrich und einer Debian-internen Revisionsnummer, dann einem weiteren Unterstrich, einem Kürzel für die Prozessorarchitektur (all
für plattformunabhängige) und der Dateinamenserweiterung .deb
(z. B. beispiel_10.2-5_powerpc.deb
).
Debian-Pakete sind nicht mit RPM-Paketen kompatibel, können aber mit Hilfe des Programms alien innerhalb einer Architektur (z. B. PowerPC oder x86-basierte Systeme) konvertiert werden. Einige Dateimanager, wie z. B. Konqueror, Midnight Commander oder 7-Zip, erlauben das Anzeigen des Paketinhalts und der Kontrollinformation, ohne das Paket zu installieren.
Mittels debhelper können Quellpakete in Binärpakete übersetzt werden.[1]
Aufgrund der einfachen Portierbarkeit von APT und dpkg hat das Debian-Paketformat auch in vielen anderen Betriebssystemen Einzug gehalten.