Alpine Linux auf dem Raspberry Pi

Alpine Linux ist eine auf Ressourceneffizienz und Sicherheit optimierte Linux-Distribution. Sie kann in verschiedenen Varianten installiert werden und kann so zum Beispiel komplett aus dem RAM laufen. Neben aktueller x86 Hardware stehen auch images für die verschiedenen Raspberry Pi Modelle zur Verfügung. In diesem Artikel wird kurz die Installation auf einem Raspberry Pi vorgestellt.

Vorbereitung

Achtung: Unbedingt darauf achten, dass wirklich die richtige SD-Karte für die nächsten Schritte ausgewählt wurde! Es gehen alle Daten verloren.

Im ersten Schritt wird die SD Karte vorbereitet. Dazu wird sie neu formatiert. Anders als bei anderen Linux Distributionen wird hier lediglich eine FAT32 formatierte Partition benötigt.

$ sudo fdisk /dev/mmcblk0

Ist die Partition erstellt, kann Sie wie folgt formatiert werden.

Achtung: Unbedingt darauf achten, dass die richtige Partition ausgewählt wird, es gehen alle Daten verloren.

$ sudo mkdosfs -F 32 /dev/mmcblk0p1

Entpacken

Ist die SD-Karte vorbereitet, können die Dateien einfach auf die entsprechende Partition entpackt werden. Im Weiteren wird davon ausgegangen, dass der automounter die Partition bereits unter /run/media/<username>/Memory card eingehängt hat. Das Verzeichnis kann bei jeder SD-Karte unterschiedlich sein und muss daher in den folgenden Beispielen angepasst werden.

Es sollte darauf geachtet werden, dass möglichst die auf die entsprechende Variante des Raspberry Pi optimierte Version verwendet wird. Aktuell ist es jedoch noch so, dass neuere Hardware Modelle mit älterer Software laufen.

Für den Raspberry Pi 1 und Zero wird zum Beispiel die armhf Variante benötigt. Diese kann wie folgt entpackt werden.

$ cd /run/media/user/Memory card
$ tar -xvf ~/Downloads/alpine-rpi-3.11.3-armhf.tar.gz .

Für den Raspberry Pi 2 Model B kann schon die armv7 Variante verwendet werden. Diese kann wie folgt entpackt werden.

$ cd /run/media/user/Memory card
$ tar -xvf ~/Downloads/alpine-rpi-3.11.3-armv7.tar.gz .

Der Raspberry Pi 2 Model B v1.2, 3 und 4 besitzen eine 64Bit CPU. Hier kann die aarch64 Variante verwendet werden. Dies kann wie folgt entpackt werden.

$ cd /run/media/user/Memory card
$ tar -xvf ~/Downloads/alpine-rpi-3.11.3-aarch64.tar.gz .

Tipp: Der Umfang an verfügbaren Pakete im Alpine Linux Paketrepository für die armhf Variante ist stark begrenzt, wenn möglich sollte daher eine andere Variante bevorzugt werden.

Der 1. Start

Der erste Start verlief ohne Probleme und es konnte sich per Tastatur und Monitor als Benutzer root ohne Passwort angemeldet werden. Zur Einrichtung steht das Tool setup-alpine zur Verfügung. Dies sollte als erstes aufgerufen werden. Im Verlauf der Einrichtung werden verschiedene Fragen gestellt und das System entsprechend eingerichtet. So werden zum Beispiel die Netzwerkschnittstelle und das Paketrepository konfiguriert.

$ setup-alpine

Achtung: Aktuell lässt sich Alpine Linux nur im RAM Modus installieren. Das bedeutet, dass das gesamte System beim Start in den RAM geladen wird und nach einem Neustart alle nicht gespeicherten Einstellung verschwunden sind.

Das Tool Alpine Local Backup(lbu) erlaubt es die geänderten Daten in einer separaten Datei zu speichern. Sie werden beim nächsten Start wieder geladen. Beachtet werden sollte jedoch, dass standartmäßig nur die geänderten Daten im Ordner /etc gesichert werden.

$ lbu commit -dv

Zusätzliche Anwendungen

Es können weitere Anwendungen installiert werden, jedoch liegen diese alle in einem Dateisystem im RAM. Damit die installierten Anwendungen beim nächsten Neustart wieder zur Verfügung stehen, werden die Heruntergeladenen Pakete auf der SD-Karte gespeichert und wärend des Boot-Vorgangs installiert.

Beachten: Je nach Raspberry Pi Variante und installiertem Paket ist der Speicher im RAM sehr schnell erschöpft.

Daten aus Paketquellen aktualisieren.

$ apk update

Paket installieren.

$ apk install vim

Anschließend alles speichern.

$ lbu commit -dv

Fazit

In unserem Test wurde ein Raspberry Pi 1 Model B mit einer bereits stark in die Jahre gekommenen 128MByte Speicherkarte verwendet. Von den 121MByte zur verfügungstehend Speicher waren nach dem Entpacken der Dateien 92MByte belegt und noch 29MByte frei. Das System lief ohne Probleme, jedoch waren die Möglichkeiten durch die lediglich 256 MByte RAM von denen ca. 100MByte als Festplatte im RAM zur Verfügung standen, sehr begrenzt.

Für einfache Aufgaben kann durchaus ältere Hardware zum Einsatz kommen. Dadurch, dass das das System im RAM liegt und die SD-Karte im nur-lesen(read-only) Modus eingehängt ist, ist es auch relativ robust gegenüber Stromausfällen. Wer jedoch auf der Suche nach einem Umfangreichen System zum Beispiel als Desktopersatz ist, der sollte sich entweder mit anderen Installatonswegen beschäftigen oder auf eine andere Linux-Distribution zurückgreifen.

Links

Verwandte Artikel