DietPi – Das bessere Rapsberry Pi OS? DietPi Betriebssystem vorgestellt: DietPi vs. Raspberry Pi OS

Als Video ansehen
Bereitgestellt über YouTube

DietPi – Das bessere Rapsberry Pi OS? DietPi Betriebssystem vorgestellt: DietPi vs. Raspberry Pi OS

In diesem Beitrag möchte ich euch DietPi für den Raspberry Pi vorstellen und es mit dem Raspberry Pi OS vergleichen. Die Idee kam von U-Labs Mitglied DotNet: Er hat in meinen Thread für Themenvorschläge im Forum geschrieben, dass er sich mehr Beiträge zu alternativen Betriebssystemen wünscht.

Es gibt einige Betriebssysteme für den Pi. Ich finde die Idee sinnvoll und möchte hiermit eine Beitragsreihe zu diesem Thema starten.

Was ist DietPi?

Beginnen wir mit DietPi: Die auf Raspberry Pi und damit Debian basierte Linux-Distribution versteht sich selbst als optimiertes Betriebssystem – vor allem auf Einplatinencomputern, wo man im Vergleich mit klassischen PCs oder Servern deutlich weniger Leistung zur Verfügung hat. Daher stammt auch der Name: Es soll möglichst wenig Ressourcen verbrauchen.

Das DietPi-Logo von dietpi.com

Doch DietPi nur darauf zu reduzieren, greift zu kurz. Es versucht, möglichst einsteigerfreundlich zu sein und bietet Hilfswerkzeuge, die verschiedenes vereinfachen. Einige gängige Programme lassen sich mit nur einem Befehl installieren, darunter beispielsweise die beliebte Nextcloud. Das macht die Distribution vor allem für Einsteiger interessant, die sich noch nicht so gut mit Linux auskennen und schnelle Ergebnisse erzielen möchten.

Welche konkreten Vorteile bietet DietPi gegenüber dem offiziellen Raspberry Pi OS?

Schauen wir uns das einmal konkret anhand der in meinen Augen wichtigsten Vorteile an.

Umfangreichere Vorkonfiguration für die automatische Installation

Wie beim Raspberry Pi OS steht am Anfang die Installation. Mit dem Raspberry Pi Imager lassen sich bereits einige Einstellungen festlegen, um den Pi vorzukonfigurieren – Etwa SSH aktivieren, den Hostname setzen, WLAN-Zugangsdaten und ähnliches. Dietpi geht darüber hinaus und ermöglicht es, eine Reihe an weiteren Einstellungen vorzunehmen. Auf der Boot-Partition liegt dazu eine Datei namens dietpi.txt. Neben den vom Imager bekannten erweiterten Einstellungen lassen sich hier beispielsweise eine Reihe an Programmen automatisch installieren – und auch konfigurieren. Wer etwa VNC installiert, möchte wohl auch entsprechende Einstellungen wie z.B. die Auflösung anpassen. Im Gegensatz zum Imager für das Raspberry Pi OS geschieht dies aber nicht grafisch, sondern über eine Textdatei.

Wem diese Möglichkeiten nicht ausreichen, der kann einfach ein eigenes Shell-Skript erstellen und dies nach der Installation des Betriebssystems automatisch starten lassen.

Schlankes Grundsystem

Das Raspberry Pi OS enthält einige Komponenten, die viele wohl nie brauchen, vor allem wenn der Pi als Server genutzt wird. Die Idee dahinter ist: Es soll möglichst vieles „automatisch“ funktionieren. DietPi schränkt die Vielseitigkeit nicht ein, sondern gestaltet das ganze modularer.

Dies sieht man bereits beim Installations-Image: Unkomprimiert ist es nur knapp halb so groß, wie das des Raspberry Pi OS. Es ist nur etwa die Hälfte der Pakete vorinstalliert und auch beim Arbeitsspeicherverbrauch ist DietPi etwas genügsamer. Weniger Pakete bedeutet weniger sowie schnellere Updates und eine geringere Angriffsfläche. Teilweise ersetzt DietPi auch Programme durch effizientere. Etwa Dropbear als schlankerer SSH-Server im Gegensatz zu OpenSSH von Debian und Raspberry Pi OS.

Ein frisch gestartetes minimales DietPi – Vanilla, ohne installierte Software. Lediglich Updates zum Stand 05.12.2021 eingespielt.
Auf einem frisch installierten Raspberry Pi OS Lite laufen mehr Prozesse, der RAM-Verbrauch ist leicht höher

Auf der Speicherkarte belegt DietPi ohne grafische Oberfläche rund 870 MB Speicherplatz. Bei einem vanilla Raspberry Pi OS Lite ist es mit 1,5 GB fast doppelt so viel.

Erwähnenswert finde ich, dass DietPi uns leichtgewichtigere Alternativen wie Dropbear anbietet – aber nicht aufzwingt. Über das dietpi-software Werkzeug können wir jederzeit auf die vom Raspberry Pi OS her bekannten Standardprogramme wechseln – im Falle des SSH-Server wäre das OpenSSH.

Dies gilt auch für andere Programme. Beispielsweise ist Lighttpd der Standard-Webserver. Hier werden uns sogar zwei Alternativen geboten: Neben dem weit verbreiteten Apache2 können wir auch den effizienteren Nginx nutzen:

Hier sieht man auch beispielhaft, wie DietPi sich bemüht, den Nutzer direkt in der Anwendung zu informieren. Über der Auswahl werden die Vorteile aller Webserver in zwei Sätzen zusammengefasst. Wer sich detaillierter einlesen möchte, findet an vielen Stellen Links zur oft ausführlicheren Dokumentation.

Vorkonfigurierte Software

Eine der größten Stärken ist ein Skript namens dietpi-software. Dort gibt es zahlreiche Softwarepakete, die sich ohne Konfiguration installieren lassen. Zum Stand 04.12.2021 sind es genau 200 Stück. Viele bekannte quelloffene Projekte sind dabei, etwa Nextcloud, Gogs (zum Hosting von Git-Repos), Docker und Docker-Compose für Container, das Content Management System WordPress oder MotionEye für Überwachungskameras sind nur einige wenige Beispiele:

$ sudo dietpi-software list | wc -l
200

Wählt man dort beispielsweise Nextcloud aus, installiert DietPi im Hintergrund alle notwendigen Komponenten. In diesem Falle ist das ein Webserver (Lighttpd als leichtgewichtigere Alternative zu Apache2), PHP, MariaDB als Datenbank und Redis zum zwischenspeichern von Daten im Arbeitsspeicher.

Anschließend werden diese Komponenten miteinander verknüpft, sodass nach etwas Wartezeit die gewünschte Software sofort genutzt werden kann. Das ist interessant für Anfänger, die schnelle Ergebnisse möchten, ohne sich zuerst mit den technischen Grundlagen und Hintergründen zu beschäftigen.

Das System informiert auch über anstehende Aktualisierungen. Beispielsweise informiert uns DietPi beim Login, dass das darunterliegende Debian von 10 auf 11 aktualisiert werden kann:

 ─────────────────────────────────────────────────────
 DietPi v7.8.2 : 15:26 - Sa 04.12.2021
 ─────────────────────────────────────────────────────
 - Device model : RPi 4 Model B (armv7l)
 - CPU temp : 48'C : 118'F (Optimal temperature)
 - LAN IP : 192.168.0.102 (eth0)
 - MOTD : Learn how to upgrade your system to Bullseye:
          https://dietpi.com/blog/?p=811
 ─────────────────────────────────────────────────────

Leider bietet auch DietPi keine Möglichkeit zum direkten In-Place Upgrade. Wie beim Raspberry Pi OS wird eine saubere Neuinstallation auf einer separaten SD-Karte empfohlen. Wer dennoch ein In-Place Upgrade versuchen möchte, kann immerhin mit dietpi-backup zunächst eine Sicherung des kompletten Systemes anlegen.

Wer eine grafische Desktopumgebung benötigt, kann diese übrigens auch unter DietPi nachinstallieren. Hier stehen sogar mehrere zur Auswahl.

Umfangreiche Konfigurationsmöglichkeiten

DietPi bringt einige Konfigurationswerkzeuge mit, die alle mit dem dietpi- Präfix beginnen:

$ dietpi-
dietpi-autostart      dietpi-cloudshell     dietpi-explorer       dietpi-logclear       dietpi-software       dietpi-wifidb
dietpi-backup         dietpi-config         dietpi-justboom       dietpi-morsecode      dietpi-survey         
dietpi-banner         dietpi-cron           dietpi-launcher       dietpi-nordvpn        dietpi-sync           
dietpi-bugreport      dietpi-ddns           dietpi-led_control    dietpi-optimal_mtu    dietpi-update         
dietpi-cleaner        dietpi-drive_manager  dietpi-letsencrypt    dietpi-services       dietpi-vpn

Ähnlich wie es unter dem Raspberry Pi OS raspi-config gibt, bietet DietPi das Werkzeug dietpi-config. Dort kann man sein System noch tiefergehend tunen, z.B. durch Übertakten. Andererseits lässt sich auch der Pi etwas drosseln, um ihn zum Strom sparen zu optimieren.

Die Distribution bietet zahlreiche Helfer, wie etwa dietpi-backup zum Erstellen und Wiederherstellen einer Sicherung des kompletten Systems. Selbst Details wie der Message of the Day Banner beim SSH-Login lässt sich mit dietpi-banner Anpassen. Dank dietpi-update lässt sich der Update-Prozess mit einem einzigen Befehl etwas vereinfachen. Wer einen HTTP-Dienst mit kostenlosem Zertifikat bereitstellen möchte, dem Hilft dietpi-letsencrypt. Mit dietpi-ddns kann man auch gleich einen Anbieter von dynamischen DNS-Diensten einbinden, sodass dort die Domain immer auf die jeweils aktuelle öffentliche IP-Adresse zeigt.

Dieser Auszug macht deutlich, wie umfangreich die von DietPi bereitgestellten Hilfswerkzeuge sind. Wer nicht den Programmname suchen möchte, findet in dietpi-launcher eine Übersicht.

Logs in den Arbeitsspeicher verlagern

Standardmäßig legt DietPi sämtliche Logs in einer Ramdisk ab:

Dazu wird /var/log auf einer 50 MB großen Ramdisk eingehangen, die das System automatisch erstellt.

$ df -h /var/log
Dateisystem    Größe Benutzt Verf. Verw% Eingehängt auf
tmpfs            50M    116K   50M    1% /var/log

Dies reduziert die Schreibzugriffe auf die Speicherkarte, wodurch deren Lebensdauer erhöht wird. Standardmäßig bewahrt DietPi die Logs dort für eine Stunde auf, um den Arbeitsspeicher nicht unnötig zu belasten. Wer Protokolldateien über einen längeren Zeitraum benötigt, kann sie regelmäßig auf ein Laufwerk schreiben lassen, etwa jede Stunde – oder das Ramlaufwerk komplett deaktivieren.

Fazit: Ist DietPi das bessere Raspberry Pi OS?

Die Leichtgewichtigkeit wird sich vor allem auf schwächeren Pis bemerkbar machen – also älteren oder kleineren Modellen wie dem Zero. Doch auch auf stärkeren Modellen macht der Ansatz Sinn, schon alleine aus Sicherheitsgründen. Darüber hinaus bringt DietPi eine Reihe an nützlichen Werkzeuge mit. Vieles lässt sich auch auf dem Raspberry Pi OS abbilden, aber mit mehr Aufwand. Darin liegt eine der großen Stärken von DietPi. Eben so wie in den vorkonfigurierten Paketen. Eine Nextcloud vollautomatisiert mit allen Programmen einzurichten, ist unter Raspberry Pi OS nicht ohne externe Werkezuge wie z.B. Ansible Playbooks möglich. Damit dürften Anfänger aber etwas überfordert sein.

Andererseits kann diese Entkoppelung aber auch ein gewisser Nachteil sein: Man ist weniger mit dem System und seinen Risiken vertraut vertraut. Bei der Fehlersuche muss man ggf. auf die Eigenheiten von DietPi eingehen.

Ich würde DietPi für zwei Gruppen von Nutzern empfehlen:

  1. Absoluten Anfängern, die schnell ein funktionierendes System benötigen und sich nicht zuvor tiefergehend mit Linux sowie dem Raspberry Pi beschäftigen können
  2. Erfahrene Anwender, welche die Technik dahinter bereits verstehen und sich daher händische Arbeit sparen möchten

Wer lernen möchte, für den sind Werkzeuge wie dietpi-software dagegen wenig hilfreich. Sie verstecken die Technik dahinter. Fürs Verständnis empfehle ich die händische Installation, die ihr euch damit aber nicht verbaut: Positiv finde ich, dass DietPi auf dem Raspberry Pi OS aufbaut. Man ist also nicht gezwungen, die DietPi-Werkzeuge zu verwenden. Sondern kann jederzeit auf dem gewohnten Weg z.B. APT-Pakete oder händisch Programme installieren. Somit ist DietPi eher als Werkzeugkasten zu sehen, der das Raspberry Pi OS um einige nützliche und anfängerfreundliche Funktionen in Form umfangreicher Bash-Skripte ergänzt.

Mein bisheriger Eindruck ist ziemlich positiv: DietPi scheint eine sinnvolle Alternative zum Raspberry Pi OS zu sein – auch für neuere, leistungsstarkere Pis. Durch die Nutzung der offiziellen Paketquellen ist man zudem nicht all zu sehr vom Projekt abhängig, wenngleich dies bereits seit einigen Jahren existiert. Man kann daher durchaus sagen, dass DietPi das bessere Raspberry Pi OS ist.

Was denkt ihr über DietPi? Interessiert ihr euch dafür und wünscht euch weitere Beiträge, etwa zur Einrichtung eines Pi mit DietPi? Schreibt es gerne ins Forum oder in die Kommentare!

Leave a Reply