Die 100Mb-Swap-Partition
In diesem Beitrag zeige ich euch, wie schnell man eine externe Swap-Partition auf einem USB-Stick erstellen kann.
Standardmäßig liegt die Swap-Partition eures Raspberry Pi’s auf der SD-Karte und hat eine Größe von ca. 100Mb. Die Daumen-Regel besagt, dass die Speichergröße der Swap-Partition mindestens doppelt so groß sein sollte wie Arbeitsspeicher dem System zur Verfügung steht. Wieso ist ist die Swap-Partition aber nur 100Mb groß? Dies liegt schlicht und ergreifend daran, dass eine SD-Karte nur eine begrenzte Anzahl von Schreibzyklen erlaubt, bevor inkonsistente Datensätze entstehen.
Da sich auf der SD-Karte meistens – bzw. sehr wahrscheinlich – wichtige Daten befinden, sollte man diese schützen. Aus diesem Grund habe ich mich dazu entschlossen, die Swap-Partition auf einen USB-Stick auszulagern und das aus dem einfachen Grund: Wenn der USB-Stick kaputt geht, schließe ich einfach einen neuen 2GB-USB-Stick an und der Raspberry Pi kann weiter arbeiten.
Wie immer gilt! Legt eine Sicherung eures Systems an, bevor ihr solche Änderungen macht. Ich nutze dafür raspiBackup und das “Festplattendienstprogramm” unter Mac.
Externen USB-Stick als Swap Partitionieren
Falls ihr keinen USB-Stick zur Hand habt, findet ihr beispielsweise auf Amazon einen Passenden. Ich nutze gerne solche kleinen USB-Sticks, da diese nicht so viel Platz weg nehmen.
Mein Raspberry Pi ist ein Model 3B+ und besitzt 1GB Ram, weshalb ich einen 2GB-Stick verwende. Ein Raspberry Pi 4 hingegen hat 4GB Ram und man sollte dementsprechend einen größeren USB-Stick verwenden.
Verbindung via SSH
ssh benutzer@ip
USB-Stick vorbereiten
Führt den folgenden Befehl aus und steck danach den USB-Stick ein und führ diesen Befehl erneut aus.
lsblk
Notiert euch nun den Pfad zum USB-Stick. Beispielsweise: /dev/sdd
Nun werden wir den USB-Stick Formatieren und Partitionieren. Achtung! Bei diesem Vorgang werden alle Daten auf dem USB-Stick gelöscht.
fdisk /dev/xxx O N P 1 --> 2x Enter t 82 (Linux Swap auswählen)
Sofern ihr nun alles richtig gemacht habt, könnt ihr im letzten Schritt “w” eintippen und fdisk schreibt nun das Partitionsschema auf den USB-Stick.
Swap-file deaktivieren
Deaktiviert nun die aktuelle Verwendung der Swap-Parition. Dieser Befehl kann ein bisschen dauern.
dphys-swapfile swapoff
Swap auf neuer Partition erstellen und einbinden
Nun müsst ihr zuerst die zu vor erstellte Partition auf dem USB-Stick noch als Swap definieren. Anschließen könnt ihr Swap wieder aktivieren. Ersetzt ‘xxx’ durch den mit lsblk
ermittelten Pfad.
sudo mkswap /dev/xxx sudo swapon /dev/xxx
USB-Stick dauerhaft automatisch einbinden
Zuerst müsst ihr die UUID des USB-Sticks herausfinden, danach speichert ihr euch diesen Wert und fügt ihn in die /etc/fstab Datei ein.
sudo blkid sudo nano /etc/fstab
In der Datei fügt ihr folgende Zeile ein – Zur Orientierung habe ich den Kommentar drin gelassen. Ersetzt “xxxxxxxx-xxxxxx-xxx-xxxx-xxxxxxxxx” durch eure UUID.
# a swapfile is not a swap partition, no line here # use dphys-swapfile swap[on|off] for that UUID=xxxxxxxx-xxxxxx-xxx-xxxx-xxxxxxxxx none swap sw 0 0
Zu guter letzt könnt ihr mittels sudo reboot
verifizieren, dass alles geklappt hat. Wenn das System anschließend hoch fährt, prüft ihr die Swap-Größe mit folgendem Befehl htop
und erhalten das folgende Bild, welches ihr mit der Taste ‘q’ wieder verlassen könnt.