Ein Blog über Code, Hardware und Co

NAS, Server und Co, Programmieren und Entwickeln

Was sind .deb und .rpm und wie unterscheiden sie sich von .msi?

Zuletzt aktualisiert am 13. Dezember 2021.

Anwendungen aus dem Paket am GUI-Paketmanager vorbei installieren

Manchmal schlägt die Installation über den GUI-Paketmanager mit Fehlermeldungen wie “Installation aus unsignierten Paketquellen nicht möglich” fehl. In diesem Falle ist keine Installation über das GUI direkt möglich.
Als Nutzer mit root-Rechten natürlich schon 😉

Das Problem: Heruntergeladene .deb-Files

Oftmals werden einzelne Programme oder Skripte als .deb-Files zum Download angeboten. Bei einem Doppelklick öffnet sich das GUI des Paketmanagers, aber nach dem Klick auf “Installieren” kommt die Meldung “Installation aus unsignierten Paketquellen nicht möglich”.

Was uns hier in die Quere kommt, ist eigentlich eine sinnvolle Sicherheitsfunktion. So müssen Installationspakete von einer dritten Instanz – z.B. dem Paketmanager – signiert sein, um installiert werden zu können. So will man verhindern, dass Schadsoftware installiert wird.

Es gilt also der Sicherheitshinweis, dass man sich vorher im klaren sein sollte, welches Paket man versucht zu installieren!

Die Lösung: Installation über die Konsole als root-Nutzer.

Trotzdem gibt es eine ganze Reihe von Fällen, in denen nicht-signierte Pakete installiert werden sollen. So ist dies bei vielen Open-Source-Projekten der Fall oder schlicht bei Software, die nicht so weit verbreitet ist, oder von einzelnen Entwicklern alleine bereitgestellt wird.

Als root-user kannst du diese Pakete trotzdem über das Terminal installieren.

Wie werde ich nun root Nutzer?
Mit Hilfe von “sudo” kann man einen Befehl auf der Konsole mit root-Privilegien ausführen. Dieser Weg ist dann natürlich der bequemste.

Die Installation eines z.B. .deb-Files sieht dann wie folgt aus:

sudo apt install filename.deb

Es gibt auch Fälle, in denen ist sudo nicht auf dem System vorhanden, oder der Nutzer hat keine Rechte, sudo zu verwenden. In diesem Fall kann man versuchen, direkt in die Shell des root-Users zu wechseln und das Paket zu installieren.

Das geht wie folgt:

su-
apt install filename.deb

Der Paketmanager apt installiert nun das Softwarepaket und installiert die vermerkten Abhängigkeiten gleich mit.

Und fertig, so einfach kann man unter Linux Softwarepakete an der GUI-Paketverwaltung vorbei installieren.


Exkurs: Was sind überhaupt die unterschiedlichen Paketformate?

.deb – das Debian-Dateiformat

.deb-Dateien sind Installationsdateien, die eine Software zur Installation auf Debian-basierten Linux-Distributionen enthalten. Es handelt sich dabei um ein Installationsarchiv, dass sowohl die zu installierende Software, als auch Verweise zu möglichen Abhängigkeiten enthält.

Debian-basierte Linux-Distributionen sind z.B.: Debian, Ubuntu, Xubunut, Raspberry Pi OS, Kubuntu, Knoppix, LiMux, Lubuntu, Linux Mint, OpenMediaVault und einige mehr.

.rpm – der Paketmanager

Hier handelt es sich um eine Installationsdatei für einen Paketmanager – den Paketmanager RPM. In .rpm-files sind Dokumentationsfiles sowie eine “Bauanleitung” für eine Software enthalten. Der Paketmanager RPM kümmert sich dann darum, die entsprechende Software zu laden und mögliche Abhängigkeiten zu identifizieren und mitzuinstallieren.

Übrigens: RPM ist als Paketmanager das Pendant zu DPKG (Debian Package Manager). DPKG ist der Paketmanager auf Debian-basierten Distributionen und wird über “apt” gesteuert.

.msi – das Windows-Dateiformat

Eine .msi-Datei ist im Prinzip eine Installationsdatei für den Windows Paketmanager “MSI”. Die Datei enthält Anweisungen und Registry-Einträge für die Installation einer Software. Die eigentliche Installation führt dann das Windows-eigene MSI-Installationsprogramm durch.

Was ist der Unterschied zu einer .exe-Datei?
Im Gegensatz zu .msi-Dateien sind .exe-Dateien selbständig entpackende Installations-Archive. Eine .exe-Datei installiert eine Software, ohne dass eine Zusatzsoftware, wie der MSI-Installer notwendig wäre.

Schreibe eine Antwort