Alocarea memoriei swap este o funcție fundamentală în Linux și un element esențial în modul în care sistemul gestionează programele. Aceasta permite utilizatorilor să suspende procesele în memoria RAM și să extindă capacitatea de memorie disponibilă programelor atunci când RAM-ul fizic este insuficient. Pe scurt, este o practică recomandată ca toți utilizatorii să implementeze swap. În configurațiile Linux tradiționale, se aloca o partiție dedicată în mod special pentru acest scop. Acesta a fost modul standard de operare pentru mult timp. Însă, din 2017, fișierele swap au câștigat popularitate. Ubuntu, de exemplu, a renunțat recent la partițiile swap în favoarea unui fișier swap, iar este probabil ca multe alte distribuții să urmeze această tendință. Motivul? Conveniența. Este cu o partiție mai puțin de gestionat în procesul de instalare, ceea ce duce la instalări mai rapide ale sistemului. În plus, un fișier swap poate fi mărit fără a fi necesară repartiționarea discului, și poate fi dezactivat simplu și rapid. Iată cum se configurează un fișier swap în Linux.
Atenție: Fișierul swap poate fi configurat pe orice distribuție Linux. Pentru a proceda, este necesar să instalați distribuția Linux fără a aloca o partiție de swap în prealabil! Acest lucru înseamnă că trebuie să efectuați o instalare manuală și nu una automată, utilizând un program de instalare tradițional.
De multe ori, pentru a realiza o instalare „fără swap”, este necesară o configurare „personalizată”. Aceasta presupune partiționarea manuală a discului, care include: configurarea partițiilor, alocarea punctelor de montare și (în cazul sistemelor UEFI) configurarea partiției de boot.
De exemplu: în programul de instalare Ubuntu, pentru a realiza o instalare personalizată, va trebui să bifați opțiunea „altceva”. În alte distribuții Linux, această opțiune ar putea fi denumită „configurație personalizată” sau similar.
Dacă folosiți sistemul de fișiere BtrFS, acest ghid nu se aplică. BtrFS nu oferă suport pentru fișierele swap.
Configurarea fișierului de swap
Crearea unui fișier swap presupune generarea unui fișier folosind comanda DD. Vom folosi instrumentul DD pentru a crea fișierul. Dimensiunea fișierului de swap ar trebui să fie egală cu cantitatea de memorie RAM fizică a sistemului dumneavoastră. Introduceți următoarele comenzi exact așa cum sunt afișate. Toată această secvență de comandă trebuie introdusă simultan și executată ca o singură operație.
Dacă operațiunea a fost realizată cu succes, vi se va solicita să introduceți dimensiunea dorită a fișierului în gigaocteți (GB), iar aceasta va fi convertită automat în megabytes (MB). Nu este nevoie de calcule manuale.
Notă: Dacă aveți mai mult de 4 GB de RAM, dimensiunea fișierului swap ar trebui să fie jumătate din cantitatea de memorie RAM.
echo 'introduceți dimensiunea în gigaocteți:';read gigabytes;calculated=$((1024 * $gigabytes))
Calculul dimensiunii fișierului swap este finalizat. Terminalul a stocat rezultatul în variabila $calculated. Acum, vom utiliza această valoare în comanda DD. Rețineți că procesul de generare al fișierului swap durează o perioadă de timp și nu va fi afișată nicio bară de progres. După ce terminalul devine din nou disponibil, introduceți următoarea comandă:
sudo dd if=/dev/zero of=/swapfile bs=1M count=$calculated
Apoi, schimbați permisiunile fișierului swap în directorul rădăcină (/). Acest lucru este necesar pentru a oferi sistemului acces complet la fișier. Fără permisiuni corecte, swap-ul nu va funcționa corespunzător.
Obțineți privilegii de administrator cu: sudo -s
chmod 600 /swapfile
Acum că permisiunile sunt setate, vom folosi comanda Mkswap. Aceasta este o comandă care poate transforma o partiție sau un fișier în spațiu de swap.
mkswap /swapfile
Permisiunile sunt configurate, iar totul este pregătit. Următorul pas este să activăm swap-ul pentru Linux, utilizând comanda swapon.
swapon /swapfile
După ce utilizatorul a introdus cele 4 comenzi, fișierul swap ar trebui să fie activ. Însă acest lucru nu este suficient, deoarece sistemul trebuie să știe unde se află fișierul swap la fiecare pornire. Pentru a face acest lucru, vom edita fișierul /etc/fstab (Tabela Sistemelor de Fișiere).
Începeți prin a adăuga un comentariu la sfârșitul fișierului. Acest lucru vă va permite să identificați ușor configurația swap în viitor (deoarece veți putea vedea eticheta comentariului).
echo "# Fișier Swap" >> /etc/fstab
Apoi, adăugați o linie sub comentariu, care specifică locația fișierului swap, modul în care sistemul ar trebui să îl trateze etc.
echo "/swapfile none swap defaults 0 0" >> /etc/fstab
După ce aceste modificări au fost realizate, reporniți sistemul. La fiecare pornire, sistemul Linux va avea un fișier swap activ.
Dezactivarea fișierului swap
Spre deosebire de o partiție swap, fișierele swap pot fi dezactivate cu ușurință, eliberând instant spațiul folosit anterior. Nu este nevoie să repartiționați nimic. Dezactivarea permanentă a swap-ului este un proces rapid în 3 pași.
Începeți prin a deschide un terminal și a introduce următoarea comandă:
sudo nano /etc/fstab
Apoi, identificați liniile referitoare la swap (cum ar fi comentariul care vă informează că este o intrare pentru swap) și ștergeți-le. Salvați modificările efectuate în fișier apăsând
Ctrl + O.
După ce modificările au fost salvate, dezactivați swap-ul.
sudo swapoff -a
Accesați directorul rădăcină al sistemului de fișiere.
cd /
Ștergeți fișierul swap.
sudo rm swapfile
Reporniți computerul. La repornire, fișierul swap va fi complet eliminat și dezactivat.
Concluzie
Swap-ul este util deoarece oferă un spațiu de memorie suplimentar pentru programe atunci când memoria RAM este insuficientă. Deși nu este menționat adesea, fișierele swap oferă avantaje semnificative. Swap-ul poate fi activat sau dezactivat ușor, fără a fi necesară o repartiționare. În plus, dimensiunea fișierului poate fi modificată dinamic. Sperăm ca acest tutorial să ajute utilizatorii Linux să înțeleagă beneficiile oferite de fișierele swap în comparație cu partițiile swap dedicate.