Durch Chipknappheit und gestörte Lieferketten ist der Raspberry Pi derzeit kaum zu bekommen oder unverschämt teuer. Unter Umständen kann es sinnvoller und günstiger zu sein, für dein Projekt einen echten Mini-PC wie den HP ProDesk 600* zu kaufen und dort ein Linux-Betriebssystem wie Ubuntu oder Debian zu installieren.
Der Auslagerungsspeicher auf dem Raspberry Pi ist klein und belastet die ohnehin relativ empfindliche MicroSD-Karte. Stattdessen kann man den Auslagerungsspeicher auf dem Raspberry Pi auch auf einen kompletten USB-Stick verschieben.
Was ist eine Auslagerungsdatei / Auslagerungspartition / SWAP-Partition
Alle Betriebssysteme verwenden Auslagerungsdateien oder Auslagerungspartitionen. Diese sind für den Fall da, dass dem Betriebssystem der Arbeitsspeicher ausgeht. In diesem Fall werden Daten, die eigentlich im schnellen RAM liegen, in die Auslagerungsdatei auf der Festplatte oder einem anderen Datenträger ausgelagert.
Je nach Modell, hat der Raspberry Pi nur relativ wenig RAM verbaut. Daher kann es sein, dass das Betriebssystem auf den Auslagerungsspeicher zurückgreifen muss. Standardmäßig stehen dem Raspberry Pi mit dem offiziellen Betriebssystem Raspbian nur 100 MB Auslagerungsspeicher auf der MicroSD-Karte zur Verfügung. Dies ist nicht besonders viel.
Die Auslagerungsdatei auf der MicroSD-Karte des Raspberry Pi hat außerdem den Nachteil, dass die ohnehin relativ empfindliche SD-Karte bei jedem Auslagerungsvorgang unnötig belastet wird.
Dies lässt sich ändern, indem man einen kompletten USB-Stick als Auslagerungspartition verwende. Unter Linux werden diese Partitionen SWAP-Partition genant. Auf diese Weise steht sehr viel mehr Auslagerungsspeicher zur Verfügung, ohne dass der Speicherplatz auf der SD-Karte knapp wird. Außerdem wird die MicroSD-Karte geschont, da diese nicht mehr als Auslagerungsspeicher verwendet wird.
Auslagerungspartition auf dem USB-Stick erstellen, damit dieser anstelle der Auslagerungsdatei auf dem Raspberry Pi verwendet wird.
Im ersten Schritt wird ein USB-Stick als Auslagerungspartition, bzw. SWAP-Partition für den Raspberry Pi vorbereitet. Hierzu eignet sich beispielsweise ein alter USB-Stick mit 2GB, den man ansonsten nicht mehr verwenden würde.
USB-Stick mit grafischem Tool für die Auslagerungsdatei vorbereiten
Um den USB-Stick mit dem passenden Dateisystem für die Auslagerungsdatei zu versehen, wird das Programm Gnome Partition Editor, kurz GParted, verwendet. GParted ist beim Raspberry Pi Betriebssystem Raspbian allerdings standardmäßig nicht vorinstalliert. Daher wird als erstes GParted installiert.
- Hierzu öffnet man das Softwarecenter über Startmenü (Himbeere) > Einstellungen > Add/Remove Software.
- In das Suchfeld gibt man „gparted“ ein und startet die Suche mit der Entertaste.
- Zur Installation setzt man den Haken vor dem Suchergebnis „GNOME partition Editor„
- Ein Klick auf den Button „OK“ installiert GParted auf dem Raspberry Pi.
Jetzt kann GParted über das Startmenü aufgerufen werden. Hier findet man es unter Startmenü (Himbeere) > Systemwerkzeuge > GParted.
Im Dropdown-Menü von GParted oben rechts wählt man nun den USD-Stick aus. Diesen erkennt man an der Speichergröße und daran, dass das Gerät mit /dev/sdX beginnt, wobei X für einen beliebigen Buchstaben steht. Diese Bezeichnung sollte man sich merken, sie wird später nochmals benötigt.
Um den USB-Stick für die Auslagerungsdatei zu verwenden, muss dieser mit einem speziellen Dateisystem formatiert werden. Achtung: Dabei gehen alle bereits vorhandenen Daten verloren.
Zum Formatieren der Partitionen klickt man diese mit der rechten Maustaste an und wählt den Menüpunkt „Formatieren als“ und dann „Linux-SWAP„.
Wenn alle Menüpunkte grau sind, dann ist der USB-Stick in das Betriebssystem eingebunden und in Verwendung. Dann muss zuerst die Option „Aushängen“ ausgewählt werden.
Mit einem Klick auf den grünen Haken wird die Formatierung durchgeführt.
Als nächstes muss die angelegte Partition anstelle der Auslagerungsdatei in Raspbian eingebunden werden. Springe hierzu direkt zum Punkt 2. Alte Auslagerungsdatei auf dem Raspberry Pi deaktivieren und den USB-Stick als Auslagerungsdatei aktivieren
USB-Stick mit der Kommandozeile für die Auslagerungsdatei vorbereiten
Wer auf dem Raspberry Pi ein Betriebssystem ohne grafische Benutzeroberfläche verwendet, beispielsweise Raspbian Lite, der muss den USB-Stick mit der Kommandozeile für die Auslagerungsdatei vorbereiten.
Zuerst muss man den Gerätename des USB-Sticks mit folgendem Befehl herausfinden.
sudo fdisk -l
Nun werden alle physischen und virtuellen Datenträger aufgelistet. Der USB-Stick befindet sich wahrscheinlich ganz unten in der Liste und beginnt mit einer Bezeichnung wie /dev/sdX. Das „X“ steht hierbei für einen beliebigen Buchstaben. Außerdem kann man den Stick an der angegebenen Speichergröße erkennen.
Als nächstes wird der USB-Stick mit einem speziellen Dateisystem für die Auslagerungsdatei formatiert. Achtung: Dabei gehen alle auf dem Stick gespeicherten Daten verloren. Die Formatierung nimmt man mit folgenden Befehlen vor. Die Bezeichnung /dev/sda muss eventuell an das eigenen System angepasst werden.
sudo fdisk /dev/sda
Die Bedienung von Fdisk ist etwas kompliziert und erfolgt über einzelne Buchstaben und Zahlen. Das Anlegen der Partition erfolgt durch die Eingabe folgender Zeichen:
o, n, p, 1
Zum Bestätigen muss man am Ende noch zweimal Enter drücken.
Nun muss aus der angelegten Partition noch die passende Auslagerungs- bzw. SWAP-Partition erstellt werden. Dies geschieht durch Eingabe folgender Zeichen.
t, L
Nun wird eine Liste mit allen verfügbaren Partitionstypen angezeigt. Hier sucht man die Zahl, die vor der Bezeichnung „Linux swap“ steht. In diesem Beispiel ist das 82.
Durch Eingabe von w werden die Änderungen endgültig auf den USB-Stick geschrieben.
Damit wurde die Partition, die anstatt Auslagerungsdatei verwendet werden soll, angelegt. Als nächstet muss die Partition noch formatiert werden. die geschieht mit dem nächsten Befehl. Auch hier muss „sda“ eventuell wieder angepasst werden. Zu beachten ist, dass hier nicht nur das Laufwerk (sda), sondern auch auch die Partition (sda1) angegeben wird.
sudo mkswap /dev/sda3
Alte Auslagerungsdatei auf dem Raspberry Pi deaktivieren
Der USB-Stick ist nun bereit um für die Auslagerungsdatei verwendet zu werden. Dazu muss zuerst die alte, 100 MB große Auslagerungsdatei deaktiviert werden. Dies geschieht mit folgendem Befehl im Terminal.
sudo dphys-swapfile swapoff
Eindeutige ID des USB-Sticks herausfinden
Bisher wurde mit der Datenträgerbezeichnung /dev/sda gearbeitet. Alternativ kann man auch mit UUIDs arbeiten. Hierbei handelt es sich um eine eindeutige Bezeichnung, die jeder Partition zugeordnet wird. Beides hat Vor- und Nachteile.
Die Bezeichnung /dev/sda kann sich ändern, wenn man den USB-Stick absteckt und zwischenzeitlich anderen Datenträgern, wie einer externen Festplatte, arbeitet. Dann kann es passieren, dass statt des USB-sticks die externe Festplatte die Bezeichnung /dev/sda bekommt.
Mit UUIDs passiert dies nicht. Diese sind eindeutig einer Partition zugeordnet und ändern sich nur, wenn der Datenträger formatiert wird.
Um den USB-Stick als SWAP-Partition in Raspbian oder ein anderes Betriebssystem auf dem Raspberry Pi einzubinden, muss man zuerst die UUID der SWAP- bzw. Auslagerungspartition auf dem USB-Stick herausfinden. Die erledigt man mit folgendem Befehl.
sudo blkid
Hier sucht man den Eintrag, bei dem als Type=“swap“ angegeben ist. Außerdem wird auch die bisher verwendete Bezeichnung /dev/sda1 angegeben.
USB-Stick aus Auslagerungsspeicher im Raspberry Pi einbinden
Nun muss ein Eintrag für die Auslagerungsdatei auf dem USB-Stick in der Datei /etc/fstab angelegt werden. In dieser Datei werden alle Partitionen angegeben, die das System beim booten automatisch in das System einbinden und verwenden soll.
Hierzu öffnen wir die Datei im Texteditor Nano auf der Kommandozeile mit folgendem Befehl.
sudo nano /etc/fstab
Ganz am Ende der Datei wird dann folgende Zeile eingegeben. Die UUID muss durch die gerade ermittelte ID an das eigene System angepasst werden. Anstatt der UUID kann auch /dev/sda1 verwendet werden. Dies ist jedoch, wie gesagt, unsicherer, da sich die Bezeichnung ändern kann. Man sollte daher die UUID verwenden.
/dev/sda1/ none swap sw 0 0
oder besser:
UUID=c0667d21-7a0e-4f2b-898a-3a98f1e7a5dc none swap sw 0 0
Nun speichert man die geänderte Datei mit der Tastenkombination [Strg] + [o]. Die Abfrage, ob die geänderte Datei wirklich gespeichert werden soll bestätigt man mit Enter.
Nun kann der Texteditor Nano mit der Tastenkombination [Strg] + [x] geschlossen werden.
Damit der Raspberry Pi den USB-Stick als Auslagerungsdatei verwendet muss das System neu gestartet werden. Anschließend kann man wieder mit dem Befehl „htop“ im Terminal prüfen, ob die Änderung übernommen wurde.
In unten stehendem Screenshot sieht man, dass bei „Swp“ nicht mehr 100MB stehen, wie dies standardmäßig der Fall ist. Stattdessen wird der komplette Speicherplatz des USB-Sticks (hier 2GB) als Auslagerungsdatei verwendet. Somit steht dem System deutlich mehr Auslagerungsspeicher zur Verfügung. Und außerdem wird die relativ empfindliche MicroSD-Karte bei Auslagerungsvorgängen nicht mehr belastet.
Anzeige
20.000 mAh, USB-C und USB-A, Hohe Ladeleistung ermöglicht Laden von Notebooks
USB-C & USB-A, 65W Ladeleistung lädt Laptops & Handys, Power Delivery & Quick Charge
Zum Schluss nicht vergessen swap zu aktivieren:
sudo swapon /dev/sda1
Kontrolle mit:
sudo swapon -s
Super Tutorial – funktioniert wunderbar! Vielen Dank!
Schon macht’s der Webserver wieder und die SD-Karte wird’s danken…