Come attivare ZRAM su Linux per velocizzare i PC datati
Hai un PC vecchio e ti sembra lentissimo anche dopo aver installato una distro Linux leggera? C’è una soluzione semplice che può fare la differenza: ZRAM.
In questa guida vediamo cos’è, perché è utile e come attivarlo, con il metodo corretto per la tua distro. Il procedimento infatti cambia a seconda che tu usi una base Debian/Ubuntu, una distro con systemd più recente come Fedora o Arch, oppure una distro senza systemd come antiX o Puppy Linux.
Cos’è ZRAM e perché usarlo
ZRAM è un modulo del kernel Linux che crea un dispositivo di swap compresso direttamente in RAM, invece che su disco.
Perché è utile:
- Se hai 1 o 2 GB di RAM, ZRAM ti permette di caricare più applicazioni senza saturare la memoria.
- Riduce drasticamente la scrittura sul disco rispetto allo swap tradizionale, perché lo swap vive in RAM compressa, non su HDD o SSD.
- È particolarmente efficace su PC con HDD lento, dove lo swap su disco è il vero collo di bottiglia.
La compressione usa pochissima CPU sui processori degli ultimi 7-8 anni, quindi il guadagno netto è quasi sempre positivo anche su hardware datato.
Controlla se ZRAM è già attivo
Diverse distro lo attivano già di default: Fedora, openSUSE Tumbleweed e Pop!_OS lo abilitano automaticamente all’installazione. Per controllare se è già attivo sul tuo sistema:
zramctl

Se compare una riga con un dispositivo (es. /dev/zram0), ZRAM è già attivo e non devi fare nulla. Se l’output è vuoto, procedi con il metodo corretto per la tua distro.
Come attivare ZRAM: il metodo dipende dalla tua distro
Non esiste un unico comando universale. Le distro Linux moderne si dividono in tre famiglie, con tre approcci diversi.
Metodo 1 – Distro basate su Debian/Ubuntu senza zram-generator nativo
Vale per Linux Mint, MX Linux, Zorin OS, Ubuntu, Debian (fino alla 11), Lubuntu, Xubuntu, Peppermint, Q4OS, Ufficio Zero Minimal.
1. Installa zram-tools
sudo apt update && sudo apt install zram-tools
2. Configura ZRAM
sudo nano /etc/default/zramswap
I parametri principali da modificare:
ALGO=zstd
PERCENT=50
PRIORITY=100
ALGO: algoritmo di compressione.zstdoffre il miglior compromesso tra velocità e rapporto di compressione sulle CPU moderne; su processori molto datati o single-core lenti,lz4è più veloce ma comprime meno.PERCENT: percentuale di RAM reale dedicata a ZRAM.PRIORITY: priorità rispetto a un eventuale swap su disco. Un valore alto (es. 100) fa sì che il sistema preferisca ZRAM allo swap su disco.
3. Riavvia il servizio
sudo systemctl restart zramswap
4. Verifica
zramctl
Metodo 2 – Distro con zram-generator nativo (systemd)
Vale per Fedora, openSUSE, Debian 12 Bookworm e successivi, e le distro basate su Arch come CachyOS, Manjaro, EndeavourOS.
Queste distro usano zram-generator, il generatore di unità systemd dedicato, non zram-tools. Su Fedora e openSUSE Tumbleweed spesso è già preinstallato e attivo: controlla prima con zramctl come indicato sopra.
1. Installa il pacchetto
# Fedora
sudo dnf install zram-generator-defaults
# Arch e derivate (CachyOS, Manjaro, EndeavourOS)
sudo pacman -S zram-generator
# Debian 12+
sudo apt install systemd-zram-generator
2. Crea il file di configurazione
sudo nano /etc/systemd/zram-generator.conf
Contenuto minimo:
[zram0]
zram-size = ram / 2
compression-algorithm = zstd
Per impostazione predefinita, se installi solo il pacchetto base senza configurazione, il sistema usa già metà della RAM (con un tetto massimo di 4 GB). Il file sopra serve se vuoi personalizzare la dimensione o l’algoritmo.

3. Applica la configurazione
sudo systemctl daemon-reload
sudo systemctl start /dev/zram0
4. Verifica
zramctl
Metodo 3 – Distro senza systemd (antiX, Devuan, Puppy Linux)
Queste distro non hanno systemd, quindi né zram-tools né zram-generator funzionano nello stesso modo. Si attiva manualmente:
sudo modprobe zram
echo zstd | sudo tee /sys/block/zram0/comp_algorithm
echo $(( $(getconf _PHYS_PAGES) * $(getconf PAGE_SIZE) / 2 )) | sudo tee /sys/block/zram0/disksize
sudo mkswap /dev/zram0
sudo swapon -p 100 /dev/zram0
Nota tecnica: il calcolo della dimensione usa getconf PAGE_SIZE, cioè la dimensione reale di una pagina di memoria (di solito 4096 byte), non un valore fisso. Usare un numero fisso come 1024 produce una dimensione di ZRAM sbagliata, perché la dimensione della pagina varia in base ad architettura e kernel.
Questo metodo va rifatto a ogni riavvio. Per renderlo permanente, salva i comandi in uno script eseguito da /etc/init.d o dal sistema di init della tua distro (rc.local su molte distro senza systemd, oppure lo script di avvio specifico di Puppy Linux).
Quanto spazio dare a ZRAM
Indicazioni di massima, valide per uso desktop generico:
| RAM installata | ZRAM consigliato |
|---|---|
| 1 GB | 512 MB |
| 2 GB | 1 GB |
| 4 GB | 2 GB |
| 8 GB o più | 2-4 GB (raramente serve di più) |
La regola generale è metà della RAM disponibile, con un tetto massimo intorno ai 4 GB: andare oltre raramente porta benefici concreti su un uso desktop normale, e aumenta solo il carico sulla CPU per la compressione.
Come verificare che funzioni
Dopo l’attivazione, controlla con:
free -h
swapon --show
Nella voce Swap di free -h dovresti vedere uno spazio popolato anche se non hai partizioni di swap tradizionali su disco. swapon --show ti mostra anche la priorità e ti permette di confermare che ZRAM viene usato prima di un eventuale swap su disco.

Riepilogo per distro
| Distro | Metodo |
|---|---|
| Linux Mint, Zorin OS, Ubuntu, Debian ≤11, Lubuntu, Xubuntu, Peppermint, Q4OS, Ufficio Zero Minimal | zram-tools |
| MX Linux | zram-tools |
| Pop!_OS | già attivo di default, nessuna azione richiesta |
| Fedora, openSUSE | zram-generator (spesso già attivo) |
| Debian 12+ | zram-generator |
| CachyOS, Manjaro, EndeavourOS e altre Arch-based | zram-generator |
| antiX, Devuan, Puppy Linux | script manuale (senza systemd) |
Risorse utili
Vuoi sapere quali sono le migliori distro leggere per PC vecchi? Dai un’occhiata alla nostra guida: 8 Distro Linux leggere per PC datati.
Non perderti i prossimi consigli
Guide, recensioni e novità su Linux, Mini PC e open source, dritte sul tuo Telegram. Niente spam, solo quello che vale la pena leggere.
IncastroPC partecipa al Programma Affiliazione Amazon EU. Prezzi e disponibilità soggetti a variazione.

io non capisco come configurare ZRAM
ho Mint e seguo lo step 1
1
do il comando:
sudo nano /etc/default/zramswap
2
si apre una finestra nera del terminale e inserisco le 3 righe:
[zram0]
zram-size = ram / 2
compression-algorithm = zstd
e faccio ppoi CTRL + O (lettera O di Otranto) per salvare ma poi?
Non vedo niente di salvato ecc
gentilmente ti chiedo di rispondermi per mail
Ciao Andrew, il problema è che stai mischiando due metodi diversi. Con Mint (Debian-based) devi seguire il Metodo 1 e nel file /etc/default/zramswap vanno scritte queste righe (non quelle che hai messo tu, quelle sono per il Metodo 2/zram-generator):
ALGO=zstd
PERCENT=50
PRIORITY=100
Per salvare in nano: premi CTRL+O, poi Invio per confermare, poi CTRL+X per uscire (è normale non vedere nulla di “diverso”, nano non dà conferme visive). Dopo aver salvato, riavvia il servizio con sudo systemctl restart zramswap e verifica con zramctl.
Fammi sapere