Linux és a Swap memória

Linux 2021. okt 8.

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ész is vagyunk! Remélem tudtam segíteni és hasznosnak találod ezt a cikkemet!

Tagek

Great! You've successfully subscribed.
Great! Next, complete checkout for full access.
Welcome back! You've successfully signed in.
Success! Your account is fully activated, you now have access to all content.