Inhaltsverzeichnis

Server in Ramdisk (tmpfs) laufen lassen

Seit Version 0.0.14 von mcontrol ist es auch möglich, den Minecraft-Server in einer Ramdisk (tmpfs) laufen zu lassen.

Dafür gibt es eine neue Variable SERVERDIR_PRERUN. In diesem Verzeichnis liegt der eigentliche Server.

SERVERDIR wird vom Administrator des Servers als tmpfs gemountet.

mcontrol kümmert sich darum, bei einem entsprechenden Aufruf (s-to-ramd) die Daten von SERVERDIR_PRERUN nach SERVERDIR in die Ramdisk zu kopieren (mittels rsync).
Dabei wird folgendes überprüft:

Ein weiteres Kommando (s-from-ramd) kopiert die Daten von der Ramdisk wieder zurück ins Verzeichnis von SERVERDIR_PRERUN.

Danach kann die RAMDisk in SERVERDIR deaktiviert werden.

Die Verzeichnisse in den Variablen SERVERDIR und SERVERDIR_PRERUN dürfen NICHT mit einem / enden; sonst reagiert rsync beim Kopieren in die/von der Ramdisk anders als gewollt.

Anmerkungen

Man muss sich manuell darum kümmern, zu welchem Zeitpunkt gesynct wird; das bei jedem Start/Stop eines Server automatisch zu tun, wäre vermutlich sinnlos.

Im Idealfall braucht man das s-to-ramd nur nach dem Starten des gesamten Linux-Servers und s-from-ramd nur vor dem Herunterfahren.

In der neuen Version von mcontrol wird per Voreinstellung nach einem stop automatisch von der Ramdisk auf die Harddisk synchronisiert. Wer dies nicht möchte, muss DO_SYNC_ON_STOP in der Serverkonfiguration auf false stellen.

Kompatibilität

Generell

Da sich das Verzeichnis, in dem der Server dann letztlich läuft, nicht ändert, funktioniert alles Weitere ohne Änderungen.

Backup

Das in mcontrol integrierte Backup verwendet weiterhin das Verzeichnis SERVERDIR für Backups, allerdings prüft es vor dem Backup, ob das Verzeichnis leer ist.

Ist es leer, so läuft entweder der Server nicht oder es gab einen Fehler. Gerade bei inkrementellen Backups wäre es schädlich, ein Backup zu machen, da dies das Backupverzeichnis jedes Mal aufblähen würde.