• Blog
  • Raspberry Pi
  • Über mich
  • Projekte
  • devowl.io

Raspberry Pi: SWAP erweitern

20. November 2012
Raspberry Pi
32 Kommentare

Ein bekanntes Problem des Raspberry Pis ist der bis Model B+ sehr begrenzte RAM. Von 256 MB in Model B Rev 1.0, über 512 MB ab Model B Rev 2.0 ging es bei dem Raspberry Pi 2 Model B auf 1 GB RAM und damit auf eine ordentliche Größe. Jedoch gibt es noch den SWAP, den man unter Debian leicht erweitern kann. Einfach gesagt ist der SWAP ein Zwischenspeicher, der ähnlich dem RAM behandelt wird, jedoch auf einem permanenten Speichermedium (im Falle des Raspberry Pis der SD-Karte) abgelegt wird. Der Vorteil ist, dass diese Erweiterung allgemein kostengünstig ist, jedoch ist sie um weiten nicht so Reaktionsschnell wie der RAM. Wie man den SWAP unter Raspbian auf eine vernünftige Größe erweitert, erkläre ich im Folgenden.

Voraussetzung: Raspbian oder vergleichbare Distribution installiert

Step 1

Zuerst müssen wir das SWAP-File erzeugen. Als Faustregel könnte man RAM * 2 = SWAP sagen, jedoch reicht es für die meisten Anwendungen auf dem Raspberry Pi der RAM plus, falls überhaupt benötigt, max. 1024 MB SWAP. Folglich würde ich auch bei dem Raspberry Pi 2 Model B nicht mehr als 1024 MB auf der SD-Karte für den SWAP reservieren. Im Beispiel lege ich de SWAP mit 1024 MB an.

sudo su -c 'echo "CONF_SWAPSIZE=1024" > /etc/dphys-swapfile'
sudo dphys-swapfile setup

Step 2

Nachdem wir das SWAP-File erzeugt haben, müssen wir dieses einmalig aktivieren.

sudo dphys-swapfile swapon

Fertig! Jetzt hat dein Raspberry Pi für den Fall der Fälle genug SWAP und wird wegen einer Überladung des RAMs nicht in die Knie gehen.

Dieses Tutorial wurde am 22. Februar 2015 überarbeitet.

32 Kommentare. Hinterlasse eine Antwort

  • isengdoang
    Januar 20, 2013 10:59 pm

    Hallo, ich benutze xbian und dort gibt es das Kommando dphys-swapfile nicht. Was ist zu tun?

    Antworten
    • Jan Karres
      Januar 21, 2013 11:19 am

      Ich denke, du musst mit GParted an das Ende der SD-Karte ein SWAP-Part stellen. Ein einfaches Kommando für xbian ist mir nicht bekannt.

      Antworten
      • thorstenv
        April 28, 2015 8:59 pm

        Danke für die Anleitungen zur rasbian-Installation und zum Swap-File-Einrichten, aber der Hinweis auf eine Swap-Partition macht hier IMHO keinen Sinn. Die ist keine Voraussetzung für ein Swap-File, sondern eine Alternative dazu. Der Zugriff auf den Swap geht dann direkt auf den Speicher dieser Parition, die überhaupt kein gewöhnliches Filesystem hat. Ob das auf SD-Karten wegen des wear-levelings von Vorteil oder Nachteil ist, weiß ich nicht.

        Die Einrichtung einer swap-Partition ist hier erklärt http://wiki.ubuntuusers.de/Swap

        Antworten
    • Pixelbash (@pixelbash)
      Januar 13, 2014 1:13 am

      als root:
      apt-get install dphys-swapfile

      Antworten
    • JT2000
      August 23, 2014 5:53 pm

      Hallo! Hab auch grade versucht den SWAP zu erweitern auf 1024 MB. Dauert das lange? Der Raspy rödelt nun schon seit einer viertel Stunde rum…

      Antworten
  • Raspberry Pi: Minecraft Server Bukkit/Spigot installieren » Jan Karres
    April 20, 2013 2:12 pm

    […] bereits vorab geschehen, den RAM auf mindestens 512 MB erweitern. Wie das geht beschrieb ich unter https://jankarres.de/2012/11/raspberry-pi-swap-erweitern/. Step […]

    Antworten
  • Markus
    Januar 24, 2014 10:02 pm

    Beim cubietruck funktioniert das nicht. Hast du das schonmal bei deinem cubieboard gemacht oder braucht man das hier nicht?

    Antworten
    • Tobias
      September 3, 2014 4:18 pm

      sudo apt-get install dphys-swapfile

      … und fertig 🙂

      Antworten
  • Daniel
    Februar 6, 2014 8:16 pm

    Wie kann man das Swapfile wieder entfernen? Also dass man dies nichtmehr nutzt

    Antworten
    • Jan Karres
      Februar 8, 2014 6:19 pm

      Ausschalten kannst du es mittels folgenden Befehles:

      dphys-swapfile swapoff

      Antworten
  • Matthias
    Februar 28, 2014 3:30 pm

    Kann man die SWAP Partituren auch größer als das doppelte vom Ram machen oder hat das irgendwelche Nachteile?

    Antworten
    • Jan Karres
      März 1, 2014 1:46 pm

      Logo. Die oben angegebene Zahl ist nur eine Faustregel. Jedoch sollte dir bewusst sein, dass SWAP wesentlich langsamer als RAM ist und dessen Verwendung daher nur temporär sinnvoll ist. Daher reicht RAM * 2 im Normalfall dicke.

      Antworten
      • Matthias
        März 1, 2014 3:58 pm

        Ok. Ich bin am überlegen ob ich mir einen zulege um ihn als Minecraft Server zu benutzen.

        Antworten
        • Jan Karres
          März 1, 2014 4:24 pm

          Das Problem im Bezug auf einen Minecraft Server liegt beim Raspberry Pi viel mehr an der Leistung des Prozessors. Siehe meine drei Artikel über Minecraft im Bezug auf den Raspberry Pi.

          Antworten
          • Matthias
            März 1, 2014 4:28 pm

            Könnte man das Problem mit der Prozessor Leistung via Cluster lösen?

          • Jan Karres
            März 1, 2014 6:03 pm

            Habe ich noch nicht ausprobiert ob das überhaupt geht, aber sollte definitiv ineffizient sein. Lieber ein leistungsstärkeres Board kaufen oder direkt in einem Rechenzentrum mieten.

  • [HOW-TO] DVB-T/C/S-Streaming auf Androiden mit Tvheadend und einem Raspberry Pi thema | th4hd
    März 25, 2014 3:08 am

    […] dreamshader@Raspberry_Pi_Forum für die Infos zur Stromversorgung eines Pis. Jan Karres für die Tipps zur SWAP-Einrichtung aus Abschnitt 2 meigrafd@Raspberry_Pi_Forum für die Befehle zur Installation von TVHeadend aus […]

    Antworten
  • Jan
    Mai 11, 2014 6:57 pm

    Ich greife über SSH auf den Raspberry zu und nach dem swapon-Befehl, der ge-„killed“ wurde, komme ich über SSH gerade mal bis zum login, dann wird die Verbindung getrennt.

    Antworten
    • Jan Karres
      Mai 16, 2014 1:08 pm

      Vielleicht wird dieser Datenbestand im SWAP gelagert, der, da du ihn gekillt hast, nicht ordentlich funktioniert. Ich würde über Bildschirm und Tastatur den SWAP mittels folgendem Befehl mal deaktivieren:

      dphys-swapfile swapon

      Antworten
      • Levin
        Februar 18, 2015 12:06 am

        habe wohl dasselbe problem….komme allerdings auch nicht mehr mit Tastatur und Bildschirm ran. Im Bootprozess nach starting nginx kommt starting dphys-swapfile swapfile setup …dann lange nichts und irgendwann in roter Caps-Schrift fail. Hatte beim Anlegen der SWAP-Datei die Faustregel beachtet. Da ich einen Raspberry Pi 2 habe mit 1GB RAM, also 2048 eingegeben. Dann kam lange nix, ich zog den Stecker und seitdem „nix mehr Lischd“ 🙂 🙁
        Was tun?

        Antworten
  • Klaus
    Mai 15, 2014 8:36 am

    Führt die Verwendung von Swap nicht zu mehr Write-Actions auf der SD-Karte? Wie sind deine Erfahrungen mit der Haltbarkeit von SD-Karten bei vielen Write-Actions?

    Antworten
    • Jan Karres
      Mai 16, 2014 4:05 pm

      Im Raspberry Pi ist mir noch keine einzige SD-Karte flöten gegangen. Folglich denke ich ist das unbedenklich.

      Antworten
  • Libby
    September 3, 2014 4:34 pm

    Bei Step 3 bekomme ich den Fehler: swapon: /var/swap: read swap header failed: Invalid argument , woran könnte das liegen?

    Antworten
    • Jan Karres
      September 7, 2014 8:10 pm

      Vorstellen könnte ich mir, dass die Partition, auf der das SWAP-File erzeugt werden sollte, bereits voll ist.

      Antworten
  • Rainer Weinberger
    September 17, 2014 12:18 pm

    funktioniert perfekt danke

    Antworten
  • tdahh
    März 12, 2015 12:26 pm

    Hiermit habe ich mein 8GB Swapfile auf RPI2B erzeugt:

    sudo vi /etc/dphys-swapfile:
    CONF_SWAPFACTOR=8
    CONF_MAXSWAP=8192
    CONF_SWAPSIZE=8192

    sudo dphys-swapfile setup
    sudo dphys-swapfile swapon

    Antworten
  • Norbert
    September 19, 2015 5:24 pm

    Super, hat mit sehr geholfen.

    Antworten
  • Arano
    November 22, 2017 12:30 pm

    Ein simples Danke von meiner Seite: Dankeschön !
    Ich kannte bis jetzt nur die SWAP-Partition und wollte diese eigentlich vergrößern. Aber scheinbar ist es auf dem RasPi/PiDrive ein SWAP-File.
    Mein Problem war das ich MySQL-5.7.20 kompilieren wollte und beim bauen von „item_geofunc“ kam es zum „out of memory“ bzw. alles hängte sich auf und reagierte nicht mehr.
    Mit diem SWAP-File lässt sich das super temporär „anheben“, kompilieren und zurücksetzen.
    So… läuft ! Zusätzlich zu den 1GB des RasPi3 habe ich 247MB(Peak) beanspruchung des SWAP-Files(2GB) beobachtet. (bei „make -j1“ ..mit „make -j5“ flog es mir leider auch um die Ohren, aber das hätte ich vorrausahnen können)

    Danke.

    Antworten
    • Maik
      Dezember 20, 2019 8:22 am

      Hallo
      Bin noch ein neuling aber von anfang an begeistert. Hab den b+ hier und heute kommt der 3er b. Meine frage kann man die swapfile auch auslagern auf externefestplatte oder extra usb stick? Würde doch mehr sinn machen als auf der sd karte oder nicht?

      Antworten
  • How to prevent Raspberry Pi memory allocation failure? – Config9.com
    Februar 29, 2020 7:07 am

    […] http://jankarres.de/2012/11/raspberry-pi-swap-erweitern/ […]

    Antworten
  • How to prevent Raspberry Pi memory allocation failure? – Config9.com
    Februar 29, 2020 7:07 am

    […] http://jankarres.de/2012/11/raspberry-pi-swap-erweitern/ […]

    Antworten
  • André
    November 9, 2020 12:43 pm

    Hallo!

    Warum ein Swapfile und keine Swap-Partition, dies ist (zumindest bei mechanischen Festplatten) schneller?
    Ich weiß, das wird schwierig zu bewerkstelligen sein, da man die SD-Karte umpartitionieren müsste.

    Trotz-alledem hast Du hier eine Sammlung wirklich hilfreicher RPI-Anleitungen! *Daumen hoch*

    Antworten

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Bitte füllen Sie dieses Feld aus.
Bitte füllen Sie dieses Feld aus.
Bitte gib eine gültige E-Mail-Adresse ein.
Sie müssen den Bedingungen zustimmen, um fortzufahren.

Jan Karres
Jan Karres
Wirtschaftsinformatiker
Facebook
Twitter
YouTube
LinkedIn
Xing
GitHub

Themen

  • Blogging
  • Debian (Linux)
  • Eine Geschichte aus dem Leben des Jan
  • Fotos
  • Gaming
  • Gedanken
  • Linksammlungen
  • Privates
  • Projekte
  • Raspberry Pi
    • Einplatinencomputer (außer Raspberry Pi)
  • Schule und Studium
  • Tipps und Tricks
  • Videos
  • Vorgestellt
  • WordPress

Projekte

Dieser Blog ist meine kleine Base im Internet, in der ich über Themen schreibe, die mich persönlich beschäftigen. Abseits davon habe ich weitere Projekte im Netz, die teils aus Spaß entstanden, jedoch zum Teil auch meinen Kühlschrank füllen.

Alle Projekte

JanKarres.de © 2007-2022

Neueste Beiträge

  • Raspberry Pi: WLAN Access Point mit NordVPN (VPN Router) einrichten Dezember 5, 2020
  • Real Cookie Banner: Wie das Opt-in Cookie Banner für WordPress entstand November 18, 2020
  • Blog Setup erneut: Aufräumen einer kleinen Historie Oktober 13, 2020
  • devowl.io: Auf geht’s in das WordPress Business! März 10, 2020
  • Kuschelpartys: Nähe und Geborgenheit einfach erleben September 30, 2018

devowl.io

Meine Brötchen verdiene ich im Internet. Dazu habe ich gemeinsam mit meinem Kollegen Matze die devowl.io GmbH gegründet. Gemeinsam entwickeln und vertreiben wir in unser Plugins und Entwickler-Tools im WordPress Umfeld.

Mehr erfahren
  • Datenschutzerklärung
  • Impressum