Linux és a Swap memória

Mi az a swap memória?

Swap, amelyet lapozófájlként ismerhetünk Windows rendszereken, az operációs rendszer által elkülönített hely az ideiglenes olyan információk tárolására, amelyeket nem tud a RAM-ban tárolni. Ahelyett, hogy hibákat dobna mert nincs egy szolgáltatásnak elegendő RAM inkább a Swap memóriába tölti azokat.

Ez nem teljesen ideális, oka van, hogy a Számitógépek és Szerverek RAM memóriával is rendelkeznek, nem csak a szokásos merevlemezzel vagy SSD-vel. Bár a merevlemezek és SSD-k előnye az, hogy nem felejtő tárhelyet kínálnak, viszont sokkal lassabbak mint egy RAM. Ennek eredményeként az általános élmény valószínűleg romlik, ha egy olyan rendszert használunk ahol gyakran elfogy a memória. Lényegében mindig jobb, ha több RAM-mal rendelkezünk, mint amire szükségünk van.

Hogyan nézzük meg mennyi swap memóriánk van?

Mindig érdemes ellenőrizni, hogy a rendszerünk mennyi Swap Memóriát tartalmaz (ha van). Ezt a következő paranccsal tehetjük meg: sudo swapon --show
Ha a parancs nem ad vissza semmit, az azt jelenti, hogy jelenleg nincs konfigurálva semennyi swap memória.

Nézzük meg mennyi szabad tárhelyünk van.

Most áttérhetünk a következő lépésre, ügyelve arra, hogy a merevlemezen legyen elég hely egy swap file létrehozásához.  A következő módon nézzük meg mennyi szabad tárhelyünk van: df -h /

Mint látható nekem 13GB szabad tárhelyem van.

Mekkora swap memóriát kell létrehozzak?

Nincsenek szabályok, minden egyes beállítás és konfiguráció egyedi. Állítsuk be az értékeket a saját igényeink szerint. Viszont a valóság az, hogy a rendszerünknek valóban szüksége van-e a Swap memóriára. Sokan követnek egy régi íratlan szabályt, miszerint a Swap memóriának kétszer akkorának kell lennie, mint amennyi RAM áll rendelkezésünkre.
Ez viszont nem teljesen igaz. Ahogy fejlődik a számitógépes világ egyre gyakoribbak a több RAM-al rendelkező számitógépek.

1GB Ram esetén érdemes minimum 512MB, maximum 2GB swap memóriát létrehozni.

2GB Ram esetén érdemes minimum 1 maximux 4GB swap memóriát létrehozni.

4gb Ram esetén érdemes minimum 2 maximum 4GB swap memóriát létrehozni.

6 vagy annál több memóriával rendelkező gépeken nem érdemes swap memóriát létrehozni, ha nem futtatunk nagyon RAM igényes szolgáltatásokat mint Pl: Játékszerverekvagy Google Chrome.(Amennyiben mégis szeretnél létrehozni swap memóriát követhetd a 4GB-nál leírtakat.)

Hogyan hozzunk létre, vagy növeljünk swap memóriát?

Most, hogy megbizonyosodtunk arról, hogy biztonságos a folytatás, elkészíthetjük a swap-fájlunkat. Ennek több módja van, de szerintem a legegyszerűbb a(z) fallocate program használta, amely lehetővé teszi számunkra, hogy pontosan meghatározzuk a swap-fájl méretét.

Jelen esetben a szerverünk 1 GB RAM-mal rendelkezik, ezért én a swap-fájlt 2 GB-ra állítom be.
Az első teendőnk a swap-fájl létrehozása. Nem kell megijedni egy nagyon egyszerű folyamatról van szó: sudo fallocate -l 2G /swapfile

Mivel nem adtunk meg mappát, a swap-fájlunk a gyökérkönyvtárunkba került. Ellenőrizzük le, hogy valóban ottvan-e: ls -lh /swapfile

Bár már van swap-fájlunk, a rendszerünk még nem tudja, hogy itt akarjuk tárolni az ideglenes információkat, ha nincs memória. Mielőtt ezt beállítanánk, győződjünk meg arról, hogy a root felhasználón kívül senki nem módosíthatja a fájlt. Ellenkező esetben egy támadó potenciálisan felhasználhatja a fájlt támadás végrehajtására. Állítsuk be a jogosultságokat a következő parancsal: chmod 600 /swapfile

Miután ezt megtettük kezdjük el beállítani a swap-fájl használatát: sudo mkswap /swapfile
Kapcsoljuk be a swap-fájl használatát: sudo swapon /swapfile
Nézzük meg, hogy sikerrel jártunk-e: sudo swapon --show

Ha mindent jól csináltunk ehhez hasonló kimenetet kell kapjunk:

NAME      TYPE SIZE USED PRIO
/swapfile file 1.9G 24.3M -2

Hogyan tegyük a swap-fájlt állandóvá?

Noha technikailag létrehoztuk a swap-fájlt, a változások nem fognak fennmaradni az újraindítás során, hacsak nem teszünk további lépéseket. Ezt könnyedén orvosolhatjuk úgy, hogy a swap-fájlt hozzádjuk a(z) /etc/fstab-hoz.

Készítsünk egy visszaállítás fájlt. Erre azért van szükség, hogy ha véletlen hibázunk vissza tudjunk állni a régi fájlra.
A visszaállítási fájl létrehozása nagyon könnyű művelet: sudo cp /etc/fstab /etc/fstab.bckp

Most adjuk hozzá a swap-fájlunkat a(z) fstab-hoz: echo '/swapfile none swap sw 0 0' | sudo tee -a /etc/fstab

Végszó

Készen vagyunk! Remélem tudtam segíteni és hasznosnak találod ezt a cikkemet!