RAM-Disk am Raspberry Pi erstellen

Kategorien:

Eine RAM-Disk ist ein virtuelles Laufwerk das im Hauptspeicher eines Computers erstellt wird. Es lässt sich wie eine Festplatte oder eine SSD nutzen, die Daten werden jedoch im RAM gespeichert. Dies bringt Vor- sowie Nachteile.

  • Geschwindigkeit: Lese- und Schreibvorgänge in den RAM sind sehr viel schneller als auf einer Festplatte oder SSD.
  • Reduziert Verschleiß der SD-Karte: Die Micro-SD-Karten die im Raspberry Pi verwendet werden haben eine deutlich kürzere Lebensdauer als Festplatten oder SSD. Mit einem RAM-Drive lassen sich Lese- und Schreibzugriffe auf die SD-Karte reduzieren und die Lebensdauer verlängern.
  • Flüchtigkeit: RAM ist ein flüchtiger Speicher. Das bedeutet, dass alle darin gespeicherten Daten bei einem Stromausfall oder einem Neustart des Computers gelöscht werden. Für die meisten Anwendungsfälle ist das in Zusammenhang mit einer RAM-Disk ein Nachteil. Es kann jedoch auch ein Vorteil sein, wenn ein System nach dem Neustart immer in demselben definierten Zustand sein soll.
  • RAM-Disk-Speicherplatz steht nicht mehr als RAM zur Verfügung. Der Speicherplatz der für die RAM-Disk vom Hauptspeicher abgezwackt wird, steht nicht mehr für die normale Verwendung als Hauptspeicher zur Verfügung, sondern ist für die RAM-Disk reserviert.

Tmpfs oder ramfs zur Erstellung einer RAM-Disk verwenden?

Die Erstellung einer RAM-Disk am Raspberry Pi geht schnell und einfach. Hierfür bieten sich zwei Tools an, die beide wiederum Vor- und Nachteile haben. Tmpfs und ramfs.

Die Größe der RAM-Disk lässt sich mit tmpfs relativ oder absolut zum verbauten Arbeitsspeicher einstellen. Also beispielsweise 20% oder 2 Gigabyte.
Mit ramfs lässt sich die Größe nicht festlegen. Es wird so viel Speicherplatz verwendet wie benötigt wird. Im Extremfall kann der komplette RAM von ramfs für die RAM-Disk beansprucht werden.

Dafür ist tmpfs kein reines RAM-Dateisystem. Wenn der Speicherplatz im RAM-Drive bei verwendung von tmpfs knapp wird, schreibt tmpfs Daten in den Swap-Speicher des Raspberry Pi. Dieser liegt standardmäßig auf der SD-Karte, was bedeutet, dass die Geschwindigkeit leidet und die SD-Karte wieder mit Schreibzugriffen belastet wird.

Dieser Nachteil kann in den meisten Fällen umgangen werden, indem der RAM-Disk genug Speicherplatz zugewiesen wird. Auf einem modernen Raspberry Pi mit bis zu 8 GB RAM kann der SWAP-Speicher in den meisten Fällen ohne Probleme komplett deaktiviert werden. Wenn es nur darum geht, die SD-Karte nicht zu belasten, kann der Auslagerungsspeicher auch auf einen USB-Stick ausgelagert werden, was allerdings zulasten der Geschwindigkeit geht. Siehe Beitrag [Raspberry Pi Auslagerungsdatei auf USB-Stick verschieben].

Wenn es keinen konkreten Grund gibt ramfs zu nutzen, ist die Verwendung von tmpfs wahrscheinlich die beste Wahl. Meiner Meinung nach überwiegen die Vorteile die Nachteile deutlich, zumal sich die Nachteile umgehen lassen. Daher wird in diesem Beitrag das Erstellen einer RAM-Disk mit tmpfs beschrieben.

RAM-Disk mit tmpfs erstellen

Zuerst muss das Verzeichnis für die RAM-Disk erstellt werden. Alle Daten die später in diesem Ordner gespeichert werden, werden nicht auf die SD-Karte sondern in den RAM geschrieben.

Dann werden die Lese- und Schreibrechte angepasst, sodass alle Benutzer und Programme Zugriff erhalten.

sudo mkdir /mnt/ramdrive
sudo chmod 777 /mnt/ramdrive 

Anschließend kann die RAM-Disk über einen Eintrag in der Datei /etc/fstab eingerichtet werden. Hierzu muss eine der folgenden Zeilen in die Datei eingetragen werden. Je nachdem, ob die Größe der RAM-Disk absolut oder relativ festgelegt werden soll.

Mit folgendem Befehl öffnest du die Datei im Texteditor.

sudo nano /etc/fstab

Mit der Tastenkombination STRG+O speicherst du Änderungen. Mit STRG+X beendest du den Texteditor.

20% des Arbeitsspeichers sollen für die RAM-Disk verwendet werden (relativ).

tmpfs    /mnt/ramdrive    tmpfs    defaults,size=20%      0       0

512 MB des Arbeitsspeichers soll für die RAM-Disk verwendet werden (absolut).

tmpfs    /mnt/ramdrive    tmpfs    defaults,size=512M      0       0
RAM-Drive mit tmpfs erstellen

Anschließend kann die RAM-Disk mit dem Befehl „sudo mount tmpfs“ oder durch einen Neustart aktiviert werden.

mit dem Befehl „df -h“ erhält man wie bei einem normalen Datenträger Informationen zur Auslastung der RAM-Disk.

Verfügbarer Speicherplatz in der RAM-Disk
Niko
Ich bin Niko, betreibe BitReporter und interessiere mich für jede Form von Technologie, die in unseren Alltag Einzug hält. Ich schreibe hier über Software und Hardware die ich verwende, sowie Probleme mit meiner Technik und Lösungen. Schließlich soll Technik nützlich sein und Spaß machen und nicht zusätzliche Arbeit verursachen.

Hinterlasse einen Kommentar

Bitte geben Sie Ihren Kommentar ein!
Die Angabe von Name oder Webseite ist optional. Weitere Informationen: siehe Datenschutzerklärung

Bitte geben Sie hier Ihren Namen ein