Swap

Aus wiki.archlinux.de
Version vom 22. Juni 2012, 15:50 Uhr von Malte (Diskussion | Beiträge) (Hinweise zur Größe nach Anmerkung von Creshal hinzugefügt.)

Der Swap (oder Auslagerungsspeicher) ist eine Datei oder eine Partition, die die Kapazität des Arbeitsspeichers erweitern kann.

Zudem ermöglicht er es bei außreichend großer Kapazität, in den Suspend to Disk-Modus zu wechseln.

Größe des Swaps

Die meisten mit Arch betriebenen Rechner dürften mehr als 1 GiB Arbeitsspeicher haben, und damit meist keinen Swap benötigen. Die wichtigste Ausnahme dürfte die Verwendung des Ruhezustandes sein. Hierbei sollte der Swap die 1,5-fache Größe des Arbeitsspeichers haben.

Swappartition

Die meistgenutzte Art eines Swapspeichers ist eine dedizierte Swappartition. Um nachträglich eine Swappartition anzulegen, muss als erstes eine neue Partition des Typs 82 bzw. „Linux Swap“ angelegt werden.

Die Formattierung wird mittels mkswap durchgeführt:

mkswap -L MeinSwapLabel /dev/partition

Hierbei wird ein Swap in /dev/partition mit dem Label „MeinSwapLabel“ angelegt. Das Label erlaubt eine einfachere und ästhetischere Einbindung in der /etc/fstab als mithilfe der UUID.

Swapdatei

Statt einer Swappartition kann auch eine Datei als Swapspeicher verwendet werden. Da die Datei zusätzlich als Teil eines anderen Dateisystems existiert, ist diese Variante langsamer als die dedizierte Partition.

Falls noch keine Datei vorhanden ist, kann sie mit dd angelegt werden (in diesem Fall 12 GB, um auf einem System mit 8 GB Arbeitspeicher Suspend to Disk zu ermöglichen):

dd if=/dev/zero of=/pfad/zur/swap-datei bs=1G count=12 && sync

Durch einen anschließenden sync wird sichergestellt, dass die Swapdatei an einem Stück auf der Festplatte liegt.

Swap aktivieren

Aktiviert wird der Swap durch einen beim nächsten Neustart oder durch swapon:

swapon /dev/partition

bzw.

swapon /pfad/zur/swap-datei

Um die Swappartition automatisch einzubinden, muss ein Eintrag in die /etc/fstab geschrieben werden:

LABEL=MeinSwapLabel  none swap sw 0 0
# bzw.
/pfad/zur/swap-datei none swap sw 0 0