13. November 2005
Ihr Anliegen
Sie brauchen permanent oder verübergehend mehr Arbeitsspeicher, z.B.
für einen komplexen Vorgang. Sie können oder wollen aber keine neue Swappartition
anlegen.
Die Lösung
Linux kann auch in Dateien swappen. Swapdateien können im laufenden System
hinzugefügt und entfernt werden.
Das Vorgehen
Zunächst legen Sie eine Datei an, in die geswappt werden soll. Deren Größe
bestimmt, wieviel Swapspace Sie dazugewinnen. Die Datei wird von Linux nicht
automatisch vergrößert oder verkleinert. Das Anlegen geht z.B. durch Kopieren
von Nullbytes aus der Datei /dev/zero mit dem Befehl dd.
bs steht für Blocksize. Das M steht für Megabyte. Folgender
Befehl legt eine Datei /tmp/swap.img der Größe 512 MB an:
root@linux# dd if=/dev/zero of=/tmp/swap.img bs=1M count=512
Nun müssen Sie in dieser Datei eine Swapsignatur anlegen. Dazu dient der
Befehl mkswap:
root@linux# mkswap /tmp/swap.img
Swapbereich Version 1 wird angelegt, Größe 536866 KBytes
Der neue Swapspace wird eingebunden mit swapon und wird sofort
aktiv:
root@linux# swapon /tmp/swap.img
Der Befehl free -m zeigt Speicher und Swapspace in Megabytes:
root@linux# free -m
total used free shared buffers cached
Mem: 1977 1255 721 0 79 957
-/+ buffers/cache: 219 1758
Swap: 511 0 511
Alle aktiven Swapbereiche listet swapon -s auf:
root@linux# swapon -s
Filename Type Size Used Priority
/tmp/swap.img file 524280 0 -1
Der Befehl swapoff deaktiviert die Swapdatei:
root@linux# swapoff /tmp/swap.img
Danach können Sie die Datei wieder löschen:
root@linux# rm /tmp/swap.img
Hinweis: Mit swapon aktivierte Swapdateien werden nach
einem Reboot nicht automatisch neu aktiviert. Dazu müssen
diese in /etc/fstab eingetragen werden.
|