Nov 3, 2023

Upravljanje SWAP memorijom

Šta je SWAP?

 SWAP predstavlja zamenski prostor ili virtuelnu memoriju koju operativni sistem koristi kako bi upravljao nedostatkom fizičke RAM memorije. SWAP omogućava Linux sistemu da efikasno rukuje velikim količinama podataka i aplikacija čak i kada fizička RAM memorija postane iscrpljena. Evo nekoliko ključnih informacija o SWAP-u na Linuxu:

  1. Šta je SWAP?: SWAP je particija ili datoteka na disku koju Linux koristi za smeštanje podataka koji trenutno nisu u upotrebi. Ovi podaci mogu biti premešteni iz fizičke RAM memorije u SWAP kako bi oslobodili mesto za trenutno aktivne zadatke.

  2. Tipovi SWAP-a: SWAP može biti konfigurisan na dva načina:

    • SWAP particija: To je posebna particija na disku rezervisana za SWAP prostor. Ovo je uobičajeniji pristup i obično se konfiguriše tokom instalacije Linux sistema.
    • SWAP datoteka: SWAP datoteka je obična datoteka na fizičkom disku koja se koristi kao SWAP prostor. Može se kreirati i konfigurisati kasnije ako je potrebno.
  3. Veličina SWAP prostora: Veličina SWAP prostora zavisi od potreba sistema. U prošlosti se preporučivalo da veličina SWAP-a bude dva puta veća od fizičke RAM memorije, ali to pravilo više nije strogo primenjivano. Obično je dovoljno da SWAP bude jednako veličini RAM-a, a za sisteme sa velikom količinom RAM-a može biti manja.

  4. Podešavanje SWAP-a: Podešavanje SWAP prostora može se obaviti tokom instalacije Linux sistema ili naknadno. SWAP particija se može kreirati i formatirati kao SWAP prostor, dok SWAP datoteka može biti kreirana pomoću alatke kao što je dd ili fallocate.

  5. Aktiviranje SWAP-a: SWAP particija se obično automatski aktivira tokom pokretanja sistema. SWAP datoteka mora biti ručno aktivirana, na primer, koristeći komandu swapon.

  6. Provera SWAP-a: Možete proveriti SWAP prostor koristeći komandu swapon -s ili free -h. Ovo će vam dati informacije o trenutnom SWAP prostoru.

  7. Hibernacija: SWAP je takođe neophodan za funkciju hibernacije na Linuxu. Prilikom hibernacije, trenutno stanje sistema se čuva u SWAP prostoru kako bi se kasnije obnovilo.

Korišćenje SWAP-a na Linuxu može poboljšati performanse sistema i omogućiti mu da efikasno rukuje sa velikim količinama podataka. Ipak, optimalno je imati dovoljno fizičke RAM memorije kako bi se izbeglo korišćenje SWAP prostora, jer je pristup diskovima obično sporiji od pristupa RAM-u.


Kreiranje SWAP particije i datoteke

Kreiranje SWAP particije ili SWAP datoteke na Linuxu može se obaviti na nekoliko načina, zavisno o vašim potrebama. Evo koraka za oba pristupa:

  1. Kreiranje SWAP particije:

    Ako želite kreirati posebnu SWAP particiju, sledite ove korake:

    a. Otvorite terminal na vašem Linux sistemu.

    b. Prvo, možete proveriti postojeće particije na disku komandom fdisk -l ili lsblk. Pronađite particiju na kojoj želite kreirati SWAP.

    c. Nakon što odaberete particiju, koristite fdisk ili parted da biste kreirali novu particiju i postavili njen tip na "Linux swap." Na primer:

    sudo fdisk /dev/sdX

    Gde /dev/sdX označava vašu odabranu particiju.

    d. Kreirajte SWAP sistem na novoj particiji komandom mkswap:

    sudo mkswap /dev/sdX1

    e. Aktivirajte SWAP particiju komandom:

    sudo swapon /dev/sdX1

    f. Dodajte SWAP particiju u /etc/fstab kako bi se automatski aktivirala pri svakom pokretanju sistema. Otvorite /etc/fstab u tekstualnom uređivaču i dodajte liniju:

    /dev/sdX1 none swap sw 0 0
  2. Kreiranje SWAP datoteke:

    Ako želite kreirati SWAP datoteku, sledite ove korake:

    a. Otvorite terminal.

    b. Kreirajte praznu datoteku komandom fallocate ili dd. Na primer, za kreiranje SWAP datoteke veličine 2 GB koristite:

    sudo fallocate -l 2G /swapfile

    c. Formatirajte datoteku kao SWAP:

    sudo mkswap /swapfile

    d. Aktivirajte SWAP datoteku:

    sudo swapon /swapfile

    e. Dodajte SWAP datoteku u /etc/fstab kako bi se automatski aktivirala pri svakom pokretanju sistema. Otvorite /etc/fstab i dodajte liniju:

    /swapfile none swap sw 0 0

Nakon što završite ove korake, SWAP prostor će biti kreiran i aktivan na vašem Linux sistemu. SWAP pomaže da se bolje upravlja memorijom, posebno u slučaju kada je fizička RAM memorija iscrpljena.

Prioriteti

Swap prioriteti su korisna svojstva koja vam omogućavaju da kontrolišete redosled korišćenja različitih swap particija ili datoteka. Ovo vam omogućava da odredite koja će swap particija biti korišćena pre nego druge ako imate više swap resursa na raspolaganju. Prioriteti vam omogućavaju da optimizujete performanse sistema i upravljate resursima SWAP-a.

Evo kako možete postaviti prioritete za swap particije ili datoteke:

  1. Prikazivanje trenutnih swap particija i njihovih prioriteta:

    Možete upotrebiti komandu swapon -s da biste videli trenutne swap particije i njihove prioritete.

    swapon -s
  2. Postavljanje prioriteta:

    Swap particijama i datotekama možete dodeliti prioritete prilikom njihovog aktiviranja. Na primer, ako želite postaviti prioritet swap particije na 10, možete koristiti komandu:

    sudo swapon -p 10 /dev/sdX1

    Gde /dev/sdX1 označava vašu swap particiju.

    Što je niži broj, to je viši prioritet. Prioriteti su obično u opsegu od -1 do 32767, sa negativnim brojevima dajući viši prioritet.

  3. Provera prioriteta:

    Da biste proverili da li je prioritet postavljen, možete ponovo koristiti komandu swapon -s. Prioritet će biti vidljiv pored svake swap particije.

  4. Ažuriranje prioriteta pri pokretanju sistema (opciono):

    Da biste postavili prioritet pri svakom pokretanju sistema, možete ažurirati /etc/fstab datoteku sa odgovarajućim prioritetom. Dodajte pri opciju u fstab unos za swap particiju. Na primer:

    /dev/sdX1 none swap sw,pri=10 0 0

Ovo će postaviti prioritet na 10 za tu swap particiju prilikom svakog pokretanja sistema. Opet, obratite pažnju na tačne putanje i nazive particija na vašem sistemu.

Swap prioriteti su korisni za optimizaciju performansi sistema i upravljanje resursima SWAP-a, posebno ako koristite više swap resursa na jednom sistemu.

Uključivanje i isključivanje swap-a

Uključivanje i isključivanje swap particija na Linux sistemu možete postići korišćenjem nekoliko komandi. Evo kako to možete učiniti:

  1. Uključivanje SWAP-a:

    Da biste uključili swap particiju, koristite komandu swapon:

    sudo swapon /dev/sdX1

    Gde /dev/sdX1 označava putanju do vaše swap particije. Ova komanda će momentalno omogućiti swap particiju.

  2. Isključivanje SWAP-a:

    Da biste isključili swap particiju, koristite komandu swapoff:

    sudo swapoff /dev/sdX1

    Ova komanda će onemogućiti swap particiju.

  3. Provera statusa SWAP-a:

    Možete proveriti trenutni status swap particija koristeći komandu swapon:

    swapon -s

    Ova komanda će vam prikazati listu trenutno aktiviranih swap particija.

Nakon što ste uključili ili isključili swap particiju, možete koristiti komandu free ili swapon -s da biste proverili kako se promenio ukupni dostupni swap prostor.

Napomena: Promene u vezi SWAP particija će biti privremene i važiće samo tokom trenutne sesije. Ako želite da trajno konfigurišete SWAP particije, trebalo bi da ažurirate /etc/fstab datoteku sa odgovarajućim unosima za swap particije kako bi se aktivirale prilikom svakog pokretanja sistema.

SWAP file ili SWAP particija

Swap datoteka (swap file) i swap particija (swap partition) su dva različita pristupa za upravljanje SWAP memorijom na Linux sistemu. Svaka ima svoje prednosti i mane, a izbor između njih zavisi od vaših specifičnih potreba. Evo kratkog pregleda oba pristupa:

  1. Swap Particija:

    • Swap particija je rezervisani deo vašeg hard diska koji se koristi za SWAP memoriju.
    • Prednosti:
      • Brža performansa: Swap particija može ponuditi brži pristup SWAP memoriji jer je direktno vezana za fizički disk.
      • Pouzdanost: Oštećenje swap particije neće uticati na druge delove sistema.
    • Mane:
      • Fiksna veličina: Swap particija zahteva da unapred odredite veličinu prilikom kreiranja i ne može se lako proširiti bez prepravke particije.
  2. Swap Datoteka:

    • Swap datoteka je posebna datoteka na disku koja se koristi za SWAP memoriju.
    • Prednosti:
      • Fleksibilnost: Možete dinamički kreirati i promeniti veličinu swap datoteke bez potrebe za izmenama particija.
      • Jednostavnost: Ne zahteva posebnu particiju i može se lako kreirati na već postojećem disku.
    • Mane:
      • Potencijalno sporija performansa: Pristup SWAP memoriji putem datoteke može biti sporiji u poređenju sa swap particijom jer se datoteka nalazi unutar fajl sistema.

Izbor između swap datoteke i swap particije zavisi od vaših potreba. Ako imate dovoljno prostora na disku i želite optimalne performanse, swap particija može biti dobar izbor. Ako vam je potrebna fleksibilnost i ne želite menjati particije, swap datoteka je praktičnija opcija. Možete čak koristiti i kombinaciju oba pristupa na istom sistemu.

mkfs

 Komande mkfs (Make File System) se koriste za kreiranje fajl sistema na diskovima i particijama. Ovde su neki od najčešće korišćenih fajl sistema i odgovarajuće komande mkfs, zajedno sa primerima:

  1. Kreiranje ext4 fajl sistema:

    mkfs.ext4 /dev/sdX

    Gde /dev/sdX predstavlja uređaj (na primer, /dev/sda1).

    Primer:

    mkfs.ext4 /dev/sdb1
  2. Kreiranje XFS fajl sistema:

    mkfs.xfs /dev/sdX

    Primer:

    mkfs.xfs /dev/sdc1
  3. Kreiranje NTFS fajl sistema (za upotrebu sa Windows sistemima):

    Koristite mkfs.ntfs da biste formatirali particiju kao NTFS fajl sistem. Ovo se obično radi pomoću alata kao što je mkntfs.

  4. Kreiranje FAT32 fajl sistema:

    FAT32 fajl sistem se takođe može kreirati pomoću alata kao što su mkdosfs ili mkfs.fat.

    mkdosfs -F 32 /dev/sdX

    Primer:

    mkdosfs -F 32 /dev/sdd1
  5. Kreiranje Btrfs fajl sistema:

    Btrfs je noviji fajl sistem koji se koristi za Linux distribucije. Da biste kreirali Btrfs fajl sistem, koristite mkfs.btrfs komandu.

    mkfs.btrfs /dev/sdX

    Primer:

    mkfs.btrfs /dev/sde1

Napomena: Pre nego što izvršite komande mkfs, budite sigurni da ste pažljivo izabrali uređaj ili particiju, jer će ova operacija izbrisati sve podatke na njima. Veoma je važno da budete oprezni prilikom korišćenja ovih komandi.

Takođe, napomena je da neki od ovih fajl sistema zahtevaju instalaciju dodatnih paketa i alata, tako da biste želeli da se pobrinite da imate odgovarajuće alate instalirane na svom sistemu pre nego što pokušate da kreirate odgovarajući fajl sistem.

fstab

 Da biste automatski montirali fajl sistem prilikom pokretanja sistema (na startup), trebate dodati odgovarajući unos u konfiguracione fajlove sistema. Evo kako to možete postići na Linux sistemu, koristeći fajl /etc/fstab:

  1. Otvorite terminal na vašem Linux sistemu.

  2. Editujte fajl /etc/fstab. Ovo se obično radi kao superkorisnik (root) korisnik. Na primer:

    sudo nano /etc/fstab

    Možete koristiti bilo koji tekstualni uređivač po vašem izboru umesto nano, kao što su vi, vim, gedit, itd.

  3. Dodajte unos za montiranje vašeg fajl sistema. Unos bi trebalo da izgleda otprilike ovako:

    /putanja/do/uredjaja /mnt/tačka/montiranja tip_fajl_sistema opcije 0 0
    • /putanja/do/uredjaja: Ovo je putanja do uređaja (na primer, /dev/sdb1) ili particije koju želite montirati.

    • /mnt/tačka/montiranja: Ovo je putanja do direktorijuma gde želite da montirate uređaj.

    • tip_fajl_sistema: Ovde navedite tip fajl sistema na uređaju (na primer, ext4, ntfs, xfs, itd).

    • opcije: Definišite opcije montiranja fajl sistema. Na primer, ako želite omogućiti pisanje, koristite rw. Ako želite da zabranite izvršavanje, koristite noexec. Postavke zavise od vaših potreba.

    • Prva 0: Ovo označava redni broj za sistemske dump operacije. Obično se postavlja na 0 ako ne koristite sistemske kopije.

    • Druga 0: Ovo označava redni broj za proveru fajl sistema. Obično se postavlja na 0 jer se provera fajl sistema može izvesti na zahtev.

  4. Sačuvajte izmene i zatvorite fajl.

  5. Da biste testirali unos bez ponovnog pokretanja sistema, možete koristiti komandu sudo mount -a. Ako se sve konfiguracije fajlova u /etc/fstab pravilno postave, uređaj će biti montiran bez problema.

  6. Ponovo pokrenite sistem kako biste bili sigurni da se uređaj automatski montira pri svakom pokretanju sistema.

Nakon ovih koraka, vaš fajl sistem će biti montiran prilikom svakog pokretanja sistema. Ovo je korisno za automatsko montiranje particija, spoljnih uređaja ili mrežnih deljenih foldera.