Voraussetzungen:
- Ich habe das [HowTo] Telnetgelesen und halbwegs verstanden
- ein USB Stick oder anderweitigen Flashspeicher
- mit einem gängigen Dateisystem (FAT32,ext2,ext3,ext4 oder XFS)
- und mind. 512MB freien Speicher
In meinem Beispiel ist der Sick als HDD nach /media/hdd gemountet. Wenn ihr euer Gerät beispielsweise als USB mountet muss der Pfad /hdd/swapfile dann in /media/USB/swapfile geändert werden.
Code: Alles auswählen
# Auslagerungsdatei anlegen - of=<Pfad zur Auslagerungsdatei> count=<Größe der Auslagerungsdatei in MB>
# Keine Angst, das dauert eine Weile
dd if=/dev/zero of=/hdd/swapfile bs=1M count=512
# die nötigsten Rechte verteilen
chmod 600 /hdd/swapfile
# Datei als swap formatieren
mkswap /hdd/swapfile
# swap aktivieren
swapon /hdd/swapfile
# Nun muss die Box das swap nur noch automatisch einbinden. Das geht wunderbar über die /etc/fstab Einträge
echo -e "/hdd/swapfile \tswap \tswap \tdefaults \t0 \t0" >> /etc/fstab
Tuning des Swaps:
Man kann dem System noch mitteilen wie der swap gehandhabt werden soll. Dazu kann man die sogenannte swappiness einstellen. Diese beschreibt die Neigung des Kernels selten genutzte Daten aus dem RAM auszulagern.
Dazu kann man Werte von 0 bis 100 vergeben.
- 0: Der Kernel versucht es zu vermeiden, Daten in den Swap auszulagern.
- 100: Der Kernel lagert sehr schnell Speicher in den Swap-Bereich aus
Code: Alles auswählen
# aktuelle swappines auslesen
sysctl vm.swappiness
# swappiness temporär bis zum reboot ändern (zum testen)
sysctl -w vm.swappiness=30
# eine neue swappiness dauerhaft ändern wird nur durch den entsprechenden Eintrag in die Datei /etc/sysctl.conf erreicht
mcedit /etc/sysctl.conf
# dann die Zeile hinzufügen oder editieren ... Die Datei sollte mit einer leeren Zeile aufhören!!
vm.swappiness = 60
Viel Erfolg
Niki