How To Add Swap Space on Ubuntu 20.04

Ez a bemutató arra összpontosít, hogyan hozzunk létre swap helyet az Ubuntu 20.04-en egy swap partíció vagy egy swap fájl segítségével.

A rendszergazdák számára elég gyakori, hogy a szerverek kifogynak a RAM-ból.

Ebben az esetben előfordulhat, hogy túl sok programot indított el, vagy néhány program már túl sok erőforrást használ.

Ebben az esetben nincs sok lehetősége.

Vagy leállíthat néhány folyamatot, hogy nyerjen egy kis RAM-ot, de lehet, hogy ezt nem tudja megtenni.

Szerencsére van egy másik megoldás : némi swap-tér hozzáadása.

Ebben a bemutatóban megtudhatja, hogyan adhat hozzá swap-térséget az Ubuntu 20-on.04 : egy swap partíció vagy egy swap fájl segítségével.

Tartalomjegyzék

Előfeltételek

A kezdés előtt győződjön meg róla, hogy rendelkezik sudo jogosultságokkal az Ubuntu 20.04 rendszeren.

$ groups

Ha látja a “sudo” csoportokat a csoportlistában, akkor képesnek kell lennie swap partíció létrehozására.

Létező swap partíciók ellenőrzése

A rendszerében meglévő swap partíciók ellenőrzéséhez a “swapon” parancsot kell használnia.

$ sudo swapon --show

Az Ubuntu telepítése során alapértelmezés szerint nagyon gyakori, hogy egy swap partíció már létrejön.

Ezek következtében a következő kimenetet kell látnia a konzolon.

Mint láthatod, van egy 980 Mb méretű “dm-1” nevű swap partícióm.

A jelenlegi RAM-om azonban elegendő a szerveremhez, így egyáltalán nem használom.

Ha a szerverén nincs swap-tárhely konfigurálva, akkor a következő kimenetet kell látnia.

Swap-tárhely hozzáadása Ubuntu 20.04-en swap-partíció használatával

A swap-tárhely hozzáadásának első módja az Ubuntun egy swap-partíció hozzáadása.

Egy ilyen partíció hozzáadásához a :

  • az “lvcreate” parancsot fogjuk használni, ha LVM eszközön vagyunk (vagyis LVM-ként formázott lemezpartíción)
  • az “fdisk” parancsot, ha “normál” lemezen.

a – Swap partíció létrehozása LVM eszközön

Először is meg kell vizsgálnia a meglévő partíciókat a gépén.

$ sudo fdisk -l

Amint itt látható, már van három partícióm :

  • /dev/sda1 : a bootolható partícióm, mivel itt egy MBR lemezzel van dolgom;
  • /dev/sda2 : egy 14,5 GB méretű kiterjesztett partíció;
  • /dev/sda5 : az elsődleges LVM partícióm.

Ezek ismeretében vagy a kiterjesztett partícióra, vagy az elsődleges LVM partícióra hozhatunk létre egy swap partíciót.

Ebben az esetben úgy döntünk, hogy az LVM partícióra hozzuk létre ezt a partíciót.

Ez azt eredményezi, hogy ellenőriznünk kell, hogy van-e még helyünk hozzá.

Emlékeztetőül, a /dev/sda5 egy lemezpartíció, más néven fizikai kötet, amely egy kötetcsoporthoz kapcsolódik.

Azért, hogy ellenőrizzük, van-e még helyünk, a “vgs” parancsot kell használnunk.

Ha nem ismeri az LVM-et, javaslom, hogy először olvassa el a témával foglalkozó külön cikkünket.

$ sudo vgs

Ebben az esetben körülbelül 980 Mb maradék helyünk van, aminek elegendőnek kell lennie a swap partíciónk számára.

Az új logikai kötet létrehozásához ezen a kötetcsoporton az “lvcreate” parancsot fogjuk használni.

$ sudo lvcreate -L 500M -n lvswap vgubuntu

Megjegyzés : előfordulhat, hogy az adott logikai köteten lévő swap aláírás törlését kérik. Nyomja meg az “y” gombot, ezt az információt azért kérdezi, mert korábban már létezett egy ugyanilyen nevű partíció.

Az “lvs” parancs segítségével ellenőrizheti, hogy a logikai kötet helyesen lett-e létrehozva.

$ sudo lvs

b – Swap partíció létrehozása egy normál partíción

Hagyja ki ezt a részt és lépjen a következőre, ha már létrehozta a partíciót egy LVM eszközön.

Ha “normál” Linux partícióval van dolgunk, akkor az fdisk parancsot kell használnunk.

Egy “normál” (Linux típusú) partíciónk neve esetünkben “/dev/sda2”.

$ sudo fdisk /dev/sdaWelcome to fdisk (util-linux 2.34).Changes will remain in memory only, until you decide to write them.Be careful before using the write command.Command (m for help): n

Új partíció létrehozásához az “n” opciót kell használnunk.

Command (m for help): nPartition type p primary (1 primary, 0 extended, 3 free) e extended (container for logical partitions)Select (default p) :

Egy “elsődleges” partíció létrehozását választhatjuk. Ha négynél több elsődleges partíciója van, akkor létrehozhat egy logikai partíciót.

Select (default p) : pPartition number (2-4, default 2):

Az alapértelmezetteket ebben az esetben meghagyhatja.

A következő kérésnél az első szektor megadása következik, ezt is hagyhatja az alapértelmezett értéken.

All space for primary partitions is in useAdding logical partition 5First sector (48291898-65062911, default 48291840):

Végül a létrehozandó partíció teljes méretének megadása következik. Esetünkben 1 GB-os swap helyet fogunk választani (vagy “+1G”).

Last sector, +/-sectors or +/-size{K,M,G,T,P} : +1GCreated a new partition 5 of type 'Linux' and of size 1 GiB.

A partíció alapértelmezés szerint “Linux” típusú lesz.

Ezt swap partíció típusra kell változtatni.

Ezért írja be a “t” billentyűt a “type” helyett, és változtassa meg “82”-re (a swap számára)

Command (m for help): tPartition number (1,2,5, default 5): 1Hex code (type L to list all codes): 82

Nyomja le az Entert, és győződjön meg róla, hogy a partíció típusa helyesen lett megváltoztatva.

Changed type of partition 'Linux' to 'Linux swap / Solaris'

Ne felejtsd el a “w” paranccsal kiírni a változtatásokat a lemezre.

Command (m for help): wThe partition table has been alteredSyncing disks.

c – A swap partíció engedélyezése

Először is győződj meg róla, hogy lefuttatod az mkswap-ot, hogy a swap fejlécek helyesen legyenek beállítva a partícióhoz.

# For a regular partition$ sudo mkswap /dev/sda5# For a LVM partition$ sudo mkswap /dev/vgubuntu/lvswap

Most, hogy a fejlécek be vannak állítva, már csak annyi a dolgod, hogy a “swapon” segítségével aktiváld a swap-tárhelyedet.

# For a regular partition$ sudo swapon /dev/sda5# For a LVM partition$ sudo swapon /dev/vgubuntu/lvswap

Most, hogy a swap be van kapcsolva, győződj meg róla, hogy a “-show” opcióval újra listázod a swap partícióidat.

$ sudo swapon --show

Félelmetes, sikeresen létrehoztál egy swap partíciót Linuxon!

d – Állandósítsd a swap tárhelyedet

Mint minden más partíciót, a partícióidat is állandóvá kell tenned.

Ha most újraindítanád a szerveredet, a változások nem maradnának meg.

Először is meg kell szerezned az UUID-t az újonnan létrehozott partícióhoz.

$ sudo blkid | grep "swap"

Másolja ki az UUID értékét, és szerkessze az fstab fájlt, hogy a következő módosításokat illessze hozzá.

$ sudo nano /etc/fstabUUID=<copied value> none swap defaults 0 0

Mentse a fájlt, és indítsa újra a rendszert, hogy meggyőződjön arról, hogy a módosításai véglegesek.

$ sudo reboot$ sudo swapon --show

Félelmetes, a módosításai most már véglegesek!

Swap tárhely hozzáadása Ubuntu 20.04 rendszeren swap fájl használatával

A tárhely hozzáadásának másik gyakori módja, hogy létrehoz egy erre szánt fájlt.

Néhány oktatóanyag nem adja meg ezt a részletet, de a swap fájlok egyáltalán nem tartalmazhatnak lyukakat.

Ez azt jelenti, hogy nem szabad a cp parancsot használni a hoszton a swap fájl létrehozásához.

Ezért a “dd” parancsot fogod használni, amely biztosítja, hogy ne legyenek lyukak a fájlban.

a – Swapfile létrehozása a dd használatával

A swaphely hozzáadásához futtasd a következő parancsot

$ sudo dd if=/dev/zero of=swapfile bs=1MB count=$((1*2014))

Ez esetben egy 2 GB-os swaphelyet fogsz létrehozni.

Győződjön meg róla, hogy a swapfájl létrehozása megtörtént a következő parancs kiadásával.

$ ls -l swapfile

b – Biztosítsa a swapfájlját jogosultságokkal

A swapfájlok memóriaoptimalizálási célokra szolgálnak.

Ezek következtében semmilyen módon nem szabad szerkeszteni vagy módosítani őket.

Ezek következtében megváltoztatjuk a jogosultságait.

$ sudo chmod 600 swapfile

Ebben az esetben a fájl csak a root fiók számára írható és olvasható.

c – Engedélyezzük a swapfile-t

A swapfile engedélyezéséhez használhatjuk az “mkswap” parancsot, amelyet a “swapon” követ.

$ sudo mkswap swapfile$ sudo swapon swapfile

Félelmetes, sikeresen létrehoztuk a swapfile-t!

Az utolsó dolog, amit meg kell tenned, hogy állandóvá teszed az fstab segítségével.

d – Állandóvá teszed a swap fájlt

Hogy állandóvá tedd a swap helyet, szerkeszd az /etc/fstab fájlt és illeszd be a következő módosításokat.

$ sudo nano fstab<path_to_file>/swapfile none swap defaults 0 0

Mentsd el a fájlt és indítsd újra, hogy meggyőződj arról, hogy a swap hely továbbra is fel van csatolva.

$ sudo reboot$ sudo swapon --show

Sikeresen hozzáadott némi swap helyet az Ubuntu 20.04 rendszerén!

Hibaelhárítás

A swap hely hozzáadásakor az Ubuntu 20.04 rendszeren a következő hibába ütközhet.

  • swapon: /swapfile: read swap header failed.

Ez a hiba akkor fordul elő, ha a swapon parancs futtatása előtt nem futtatja az mkswap parancsot.

Emlékeztetőül, az mkswap beállítja a swap-tárhelyként használandó fájl vagy partíció fejlécét.

Ha elfelejti lefuttatni az mkswap parancsot, a Linux nem fogja tudni swap-tárhelyként kijelölni a gépen.

  • Nem sikerült megtalálni a “vg/lv” logikai kötetet

Ez a hiba akkor fordul elő, ha törölt egy olyan logikai kötetet, amelyet az initramfs konfigurációjában betöltöttként definiált.

A javításhoz két lehetőséged van :

  • Futtasd az “update-initramfs -u”
  • Győződj meg róla, hogy az initramfs “resume” fájljában eredetileg nem volt logikai kötet említve.

Az ikonokat a Freepik készítette a FlatIconból.

Vélemény, hozzászólás?

Az e-mail-címet nem tesszük közzé.