Să fim sinceri: la sfârșitul anului 2025, conceptul unei partiții swap dedicate pe SSD pare... arhaic. Avem unități NVMe cu viteze care depășesc 7000 MB/s și capacități RAM de neimaginat acum un deceniu. Cu toate acestea, multe distribuții Linux încă ne îndeamnă să creăm acea partiție „plasă de siguranță” în timpul instalării.
Pe întreaga mea flotă de mașini - de la incredibilul meu PC desktop (Ultra 7 265KF, 64 GB RAM) la Lenovo ThinkPad P14s G5, pe care îl folosesc zilnic , și chiar și vechiul meu MacBook Air 2017 - am eliminat complet partițiile fizice swap.
În schimb, mă bazez 100% pe ZRAM cu zstdcompresie . Iată de ce și exact cum l-am configurat pe Fedora 43 .
De ce să folosești ZRAM în locul memoriei fizice?
Memorizarea tradițională de swap acționează ca un rezervor de supraîncărcare. Când memoria RAM este plină, sistemul mută paginile inactive pe discul lent (da, chiar și NVMe este „lent” în comparație cu memoria RAM). Acest lucru provoacă sacadare și uzează SSD-ul.
ZRAM funcționează diferit. În loc să mute datele pe disc, acesta le comprimă și le păstrează într-un dispozitiv bloc virtual direct în memoria RAM.
Arma secretă: zstdCompress
În mod implicit, multe sisteme folosesc lzocompress. Este rapidă, dar nu foarte eficientă. În timpul testelor mele pe ThinkPad P14s , am observat că trecerea la algoritmul zstd(Zstandard) a oferit o rată de compresie mult mai bună, fără o penalizare semnificativă a procesorului.
Practic, acest lucru „dublează” capacitatea memoriei RAM pentru utilizare în scopuri de swap. Pe MacBook Air-ul meu, cu doar 8 GB de memorie, ZRAM se simte ca prin magie - menține sistemul receptiv chiar și atunci când am mult prea multe file de browser deschise.
Ghidul: Configurarea ZRAM și dezactivarea Disk Swap pe Fedora 43
Întrucât Fedora 43 este sistemul meu principal de operare, vom folosi zram-generator, care rămâne standardul și cea mai eficientă metodă de a gestiona compresia memoriei în 2025.
Notă: Executez aceste comenzi ca utilizator root sau cu
sudo. Testat pe Fedora 43 Workstation.
Pasul 1: Verificați starea actuală a schimbului
Mai întâi, haideți să vedem ce folosește sistemul dvs. în prezent. Deschideți terminalul și tastați:
Bash
zramctl
Ce să cauți:
Dacă vedeți lzo-rle sub coloana ALGORITM, utilizați compresia implicită. Dacă lista este goală, este posibil ca ZRAM să nu fie activ. De asemenea, verificați utilizarea discului swap cu:
Bash
swapon --showDacă vedeți o partiție similară /dev/nvme0n1p3sau similară, utilizați în continuare swap-ul fizic al discului.
Pasul 2: Dezactivați schimbarea fizică (permanent)
Atenție: Acest pas implică editarea tabelei sistemului de fișiere ( fstab). O greșeală aici poate face ca sistemul să nu poată fi bootat. Mai întâi vom crea o copie de rezervă.
- Dezactivați imediat swap-ul: Această comandă dezactivează toate dispozitivele swap (atât discul, cât și ZRAM) pentru sesiunea curentă.
Bash
sudo swapoff -a - Faceți o copie de rezervă a fișierului fstab (PAS CRITIC): Înainte de editare, salvați o copie a fișierului original.
Bash
sudo cp /etc/fstab /etc/fstab.bak - Editați fișierul fstab: Trebuie să împiedicăm montarea discului swap la pornire.
Bash
sudo nano /etc/fstab - Comentați linia de swap: Căutați o linie care se termină cu swap sau are un tip swap. Adăugați simbolul # chiar la începutul acelei linii pentru a o comenta.
Exemplu înainte:
UUID=xxxx-xxxx none swap sw 0 0Exemplu după:
# UUID=xxxx-xxxx none swap sw 0 0
Apăsați CTRL+O pentru a salva și CTRL+X pentru a ieși.
Pasul 3: Configurați ZRAM cuzstd
Fedora 43 încă folosește implicit lzo-rleîn unele configurații, așa că forțarea zstdprin configurație este încă cel mai bun truc de optimizare.
Creați/Editați fișierul de configurare:
Bash
sudo nano /etc/systemd/zram-generator.conf- Lipiți următoarea configurație: Această configurare creează un dispozitiv ZRAM folosind algoritmul zstd. Prefer să setez dimensiunea la jumătate din memoria RAM fizică, dar limitată la 8 GB pentru siguranță (deși puteți merge mai mult dacă doriți).
Inițial, TOML
[zram0] zram-size = min(ram / 2, 8192) compression-algorithm = zstdNotă pentru utilizatorii avansați: Sintaxa
min(ram / 2, 8192)înseamnă că va necesita 50% din memoria RAM, dar niciodată mai mult de 8 GB. Dacă aveți 64 GB de RAM, cum ar fi desktopul meu, este posibil să doriți să măriți limita (de exemplu,16384pentru 16 GB).
Apăsați CTRL+O pentru a salva și CTRL+X pentru a ieși.
Pasul 4: Aplicați modificările
Pentru a aplica instantaneu modificările ZRAM fără a reporni:
Reîncărcați configurațiile systemd:
Bash
sudo systemctl daemon-reloadReporniți serviciul ZRAM:
Bash
sudo systemctl restart systemd-zram-setup@zram0.service
Pasul 5: Verificare finală
Acum, haideți să confirmăm că totul este exact așa cum ne dorim.
Executați din nou comanda de stare:
Bash
zramctlAr trebui să vezi:
NUME:
/dev/zram0ALGORITM:
zstd(Aceasta confirmă că noua compresie este activă)DIMENSIUNE DISC: În jur de 4G sau 8G (în funcție de memoria RAM).
DATE: Câte date necomprimate sunt acolo.
COMPR: Câtă memorie RAM necesită în realitate (acest număr ar trebui să fie mult mai mic decât DATA!).
În cele din urmă, verificați dacă nu este utilizat niciun disc fizic:
Bash
swapon --show
Ar trebui să vezi doar/dev/zram0 în această listă.
Trecând la ZRAM cu zstd, am observat o funcționare mai fluidă a multitasking-ului pe ThinkPad P14s și zero timpi de așteptare pe PC-ul desktop . În plus, economisesc cicluri de scriere pe unitățile NVMe, prelungindu-le durata de viață.
Era partițiilor fizice swap s-a încheiat pentru Linux desktop.
Comentarii
Trimiteți un comentariu