oom und swapfile erstellen

Do, 4. November 2021, Lioh Möller

Einige von euch haben bereits festgestellt, dass GNU/Linux.ch heute für einen kurzen Moment nicht erreichbar war. Grund dafür war ein oom (Out of memory) killer welcher den Apache und einige andere Prozesse abgeschossen hat.

Dies geschieht, wenn der Kernel nicht genug freien Speicher zur Verfügung hat und als Selbsterhaltungsmassnahme anfängt, Prozesse zu beenden. Unsere VM bei dem Schweizer Hoster ungleich ist mit 1 CPU Core, 1 GB RAM und mittlerweile 20 GB Diskspace relativ schwach ausgestattet. Das hat in erster Linie ökonomische Gründe, denn unser Projekt wird ausschliesslich durch eure Spenden finanziert.

Da wir mit dem Diskspace gut haushalten müssen, insbesondere weil das Hosting der Podcast-Folgen viel Speicherplatz in Anspruch nimmt, haben wir bisher kein Swapfile erstellt. Übergangsweise haben wir dies nun nachgeholt. Der Vorgang ist in wenigen Schritten erledigt und wird im Folgenden beschrieben.

Zunächst wird eine Datei erstellt, welche später als Swapfile genutzt werden soll. In unserem Falle haben wir uns für /swapfile entschieden:

dd if=/dev/zero of=swapfile bs=1MiB count=$((1*1024))

Damit nur der Root Benutzer Zugriff auf die Datei erhält müssen die Rechte entsprechend angepasst werden:

sudo chmod 600 /swapfile

Mit mkswap wird die zuvor erstellte Datei als Swapspace deklariert:

sudo mkswap /swapfile

Um diesen zu aktivieren, lässt sich der Befehl swapon nutzen:

sudo swapon /swapfile

Um die Änderung dauerhaft einzubinden, kann ein entsprechender Eintrag in der Datei /etc/fstab hinterlegt werden:

/swapfile swap swap defaults 0 0

Prüfen lässt sich die Änderung beispielsweise mittels top oder mithilfe von sudo swapon --show

Damit wäre die Einrichtung bereits abgeschlossen.

Ein Swapfile ersetzt natürlich kein echtes Memory, daher freuen wir uns über eure Unterstützung zur Erweiterung unseres Servers. Ihr könnt uns wahlweise einen Betrag überweisen oder beispielsweise das einzigartige GNU/Linux.ch T-Shirt erwerben, denn mit jedem Shirt-Verkauf unterstützt ihr unser Projekt.