Home · Kontakt · Impressum
contents index previous up next
Next: 10.5.2 mkswap Up: 10.5 Swap: Der Auslagerungsspeicher Previous: 10.5 Swap: Der Auslagerungsspeicher

Unterabschnitte



10.5.1 Swap-Space einrichten

Der Auslagerungsspeicher kann als Swap-Partition oder als Swap-Datei angelegt werden.

10.5.1.1 Anlegen der Swap-Partition

Um eine zusätzliche Swap-Partition einzurichten müssen Sie auf der Festplatte eine neue Partition anlegen. Dies können Sie mit dem Befehl fdisk (10.1.1) erledigen.

Nehmen wir einfach mal an, daß Sie eine zweite Festplatte (/dev/hdb) in Ihren Rechner eingebaut haben. Um die Swap-Performance zu verbessern, sollten Sie auf dieser zweiten Platte auch eine Swap-Partition einrichten. Starten Sie also das Programm fdisk.

enterprise:~ # fdisk /dev/hdb

The number of cylinders for this disk is set to 5005.
There is nothing wrong with that, but this is larger than 1024,
and could in certain setups cause problems with:
1) software that runs at boot time (e.g., old versions of LILO)
2) booting and partitioning software from other OSs
   (e.g., DOS FDISK, OS/2 FDISK)

Befehl (m für Hilfe):

Mit dem Befehl n legen wir nun eine neue Partition an. Und zwar eine primäre Partition mit der Größe von 256 MB.

Befehl (m für Hilfe): n
Befehl  Aktion
   l      Logische Partition (5 oder größer)
   p      Primäre Partition (1-4)
p
Erster Zylinder (1-5005) [Standardwert: 1]:
Benutze den Standardwert 1
Letzter Zylinder oder +Größe, +GrößeK oder +GrößeM (1-5005) [Standardwert: 5005]: +256M

Mit dem Befehl p überprüfen wir den Eintrag in der Partitionstabelle und notieren uns die Werte.

Befehl (m für Hilfe): p

Festplatte /dev/hdb: 255 Köpfe, 63 Sektoren, 5005 Zylinder
Einheiten: Zylinder mit 16064 * 512 Bytes

    Gerät boot.  Anfang      Ende    Blöcke   Id  Dateisystemtyp
/dev/hdb1             1        34    273088   82  Linux Swap

Nun brauchen wir nur noch mit w die Partitionstabelle zu schreiben und das Programm zu verlassen. Danach muß der Rechner neu gestartet werden, damit die neue Partitionstabelle übernommen wird.

10.5.1.2 Anlegen einer Swap-Datei

Um eine Swap-Datei zu erstellen, müssen Sie eine Datei öffnen und soviele Bytes hineinschreiben, wie die Swap-Datei groß sein soll. Hierfür können Sie gut den Befehl dd (4.5.4) verwenden.

enterprise:~ # dd if=/dev/zero of=/swap bs=1024 count=16384
16384+0 Records ein
16384+0 Records aus
enterprise:~ # ls -l /swap
-rw-r--r--    1 root     root     16777216 Nov 17 12:15 /swap

Das Gerät /dev/zero ist praktisch das Gegenteil von /dev/null. Während /dev/null praktisch ein WOM (Write Only Memory) ist, der alle Informationen schluckt und Sie nicht wieder hergibt, ist /dev/null ein unendlich großer Datenträger, auf dem aber nur Nullen stehen. Der obige Befehl liest praktisch 16384 Blöcke mit 1024 Bytes von diesem Gerät und schreibt Sie in die Datei /swap.

Nach dem Anlegen der Datei sollten Sie sicherheitshalber mit dem Befehl sync (10.3.4) die Dateisysteme wieder synchronisieren.

Auf keinen Fall darf die Swap-Datei eine Lücke besitzen. Die Blöcke der Datei müssen sich hintereinander auf der Platte befinden.

10.5.1.3 Swap-Bereich formatieren

Nach dem Anlegen der Partition bzw. der Datei muß diese für den Einsatz als Auslagerungsspeicher vorbereitet werden, d. h. formatiert werden. Hier kommt der Befehl mkswap zum Einsatz.

mkswap -c GERÄTENAME

GERÄTENAME steht für den Namen der Partition bzw. der Datei. Der Schalter -c ist optional und bewirkt, daß der Swap-Bereich bei der Formatierung auf fehlerhafte Blöcke untersucht wird.

Nehmen wir als Beispiel mal die oben angelegte Swap-Partition. Mit dem folgenden Befehl wird sie als Swap-Bereich formatiert.

enterprise:~ # mkswap -c /dev/hdb1 
Swapbereich Version 1 mit der Größe 279642112 Bytes wird angelegt

Die Swap-Datei wird analog angelegt. Nur daß anstatt des Gerätenamens, der Dateiname angegeben wird.

enterprise:~ # mkswap -c /swap 
Swapbereich Version 1 mit der Größe 16773120 Bytes wird angelegt
enterprise:~ # sync

Nach dem Einrichten einer Swap-Datei sollten Sie immer das Dateisystem mit sync synchronisieren um sicherzugehen, daß die Informationen auch physikalisch auf die Platte übertragen worden sind. Dies ist bei der Swap-Partition natürlich nicht nötig.

10.5.1.4 Swap-Bereich aktivieren und deaktivieren

Damit der neue Swap-Bereich auch vom System benutzt wird, muß er aktiviert werden. Dafür ist der Befehl swapon verantwortlich. Analog dazu können Sie natürlich mit dem Befehl swapoff einen Swap-Bereich auch deaktivieren. Anhand des Befehls free (12.8.5) kann die Veränderung des Swap-Bereichs beobachtet werden.

Als Beispiel schauen wir uns doch mal die Einbindung unserer Swap-Datei ins System an.

enterprise:~ # free
             total       used       free     shared    buffers     cached
Mem:        513448     466992      46456          0      63500     258672
-/+ buffers/cache:     144820     368628
Swap:      1028120          0    1028120
enterprise:~ # swapon /swap
enterprise:~ # free
             total       used       free     shared    buffers     cached
Mem:        513448     467032      46416          0      63528     258672
-/+ buffers/cache:     144832     368616
Swap:      1044496          0    1044496
enterprise:~ # swapoff /swap
enterprise:~ # free
             total       used       free     shared    buffers     cached
Mem:        513448     467036      46412          0      63536     258672
-/+ buffers/cache:     144828     368620
Swap:      1028120          0    1028120

Auf jeden Fall sollten Sie eine Swap-Datei nur dann löschen, wenn Sie sie vorher mit swapoff deaktiviert haben.

Wie üblich ist dieser Befehl nicht von Dauer. Nach einem Reboot ist der Swap-Bereich wieder inaktiv. Die Swap-Bereich müssen also bei jedem Start initalisiert werden. Dies geschieht mit dem Befehl swapon -a in einer der Startdateien.

swapon -a liest die Informationen aus der Datei /etc/fstab aus. Wenn dort Informationen des Typs

/dev/hda6       swap    swap    sw 0 0

bzw.

/dev/hdb1       swap    swap    pr=42 0 0

dann werden die jeweiligen Swap-Bereiche beim Booten initialisiert. Sie sollten für jeden neu angelegten Swap-Bereich einen Eintrag zur /etc/fstab hinzufügen.


contents index previous up next
Next: 10.5.2 mkswap Up: 10.5 Swap: Der Auslagerungsspeicher Previous: 10.5 Swap: Der Auslagerungsspeicher
  © 2004 by IT-Dozent Ole Vanhoefer · Zum Seitenanfang