Problem:

Du hast Linux auf einer 2-Gigabyte-Festplatte installiert. Da der Rechner 128 Megabyte Hauptspeicher besitzt, hast Du keine Swap-Partition eingerichtet. Nun verlangen aber bestimmte Anwendungen doch eine Auslagerungsdatei, wenn auch nur vorübergehend. Musst Du Deine Festplatte neu partitionieren, um zu einer Auslagerungsdatei zu kommen?

Lösung:

Linux benötigt nicht zwingend eine separate Swap-Partition. Du kannst eine Auslagerungsdatei auch auf der Systempartition anlegen. Der Nachteil einer so erstellten Auslagerungsdatei: Der Zugriff ist langsamer als bei einer gesonderten Swap-Partition. Um nachträglich eine Swap-Datei zu erstellen, führst Du als Benutzer "root" folgende Schitte aus:

1. Erstelle mit

dd if=/dev/zero of=/tmp/ swap bs=1024k count=32

eine leere Datei. Die Größe der künftigen Swap-Datei wird mit dem Parameter "count" in Megabyte festgelegt, in unserem Beispiel also mit 32 Megabyte.

2. Führe anschließend den Befehl

chmod 600 /tmp/swap

aus. Damit stellst Du sicher, dass nur der Benutzer "root" diese Datei öffnen und verändern darf.

3. Nun wandelst Du die leere Datei mit

mkswap /tmp/swap

in eine Auslagerungsdatei um. Mit dem Befehl "sync" stellst Du anschließend sicher, dass die Datei auf die Festplatte und nicht in den Platten- Cache geschrieben wird.

4. Im letzten Schritt bindest Du mit

swapon /tmp/swap

die neue Auslagerungsdatei in das System ein. Mit "swapoff" kannst Du diesen Vorgang jederzeit wieder rückgängig machen.

Wichtig:

Nach einem Neustart ist zwar die erstellte Datei noch vorhanden, muss aber mit "swapon" wieder als Auslagerungsdatei definiert werden.

Du kannst in der Ausgabe des Befehls "free" erfahren, ob Du alles richtig gemacht hast und die Auslagerungsdatei vom System erkannt wurde. Größe und momentane Ausnutzung der Auslagerungsdatei stehen in der Zeile "swap".

Übrigens - die beschriebene Möglichkeit besteht auch, wenn Du schon eine Swap-Partition besitzt. Die neue Auslagerungsdatei wird dann dem bestehenden Auslagerungsspeicher hinzugerechnet.