Come velocizzare Linux: guida per tutte le distribuzioni

Linux ha la fama di essere leggero e veloce. In parte se la merita. Ma dopo qualche mese di utilizzo, tra app che si aggiungono all’avvio, browser che si mangiano la RAM, swap configurata per server degli anni 2000 e servizi che girano in background senza che tu l’abbia mai chiesto, quella fluidità iniziale svanisce.

Questa guida raccoglie tutto quello che funziona, verificato su hardware reale: dal mini PC con 8 GB di RAM all’HDD meccanico da recuperare. Ogni modifica è spiegata, non solo elencata. Ogni comando è eseguibile subito. E le cose che non fanno differenza vera, le trovi dichiarate tali.

Inizia sempre da qui, prima di toccare qualsiasi impostazione:

htop                    # RAM e CPU in tempo reale, processo per processo
systemd-analyze blame   # quali servizi rallentano il boot, in ordine
journalctl -b -p3       # errori dall'ultimo avvio

systemd-analyze blame spesso rivela già da solo dove sta il problema. Guarda i primi cinque servizi nella lista: lì si nasconde quasi sempre il collo di bottiglia all’avvio.

Swappiness: la modifica più semplice con l’impatto più immediato

La swappiness controlla quanto presto Linux comincia a spostare dati dalla RAM allo swap su disco. Il valore di default è 60 su quasi tutte le distribuzioni, pensato per server con HDD meccanici di vent’anni fa. Su un desktop o mini PC moderno con SSD o NVMe è il valore sbagliato, e si sente.

Controlla il valore attuale:

cat /proc/sys/vm/swappiness

Con SSD o NVMe e almeno 8 GB di RAM: porta swappiness a 10. Il sistema userà lo swap solo quando la RAM è agli sgoccioli, non preventivamente. Il risultato concreto è meno micro-lag durante il multitasking, meno scritture sull’SSD e più RAM libera per le app aperte.

echo 'vm.swappiness=10' | sudo tee /etc/sysctl.d/99-swappiness.conf
sudo sysctl -p /etc/sysctl.d/99-swappiness.conf

Con HDD meccanico: non scendere sotto 20. Su disco meccanico lo swap serve come valvola di sicurezza reale. Portarlo a zero o a valori troppo bassi significa che quando la RAM si esaurisce il sistema si blocca invece di rallentare gradualmente.

Con ZRAM attivo (vedi la sezione successiva): puoi portare swappiness a 100. Lo swap finisce in RAM compressa, non su disco, quindi swappare è velocissimo e conveniente. Ma questo vale solo se ZRAM è già configurato e funzionante: non impostare 100 senza ZRAM attivo.

ZRAM: swap in RAM compressa, zero scritture su disco

ZRAM è la modifica più efficace che puoi fare su un sistema con 4 o 8 GB di RAM. Crea un dispositivo di swap compresso direttamente in memoria: invece di scrivere su disco quando la RAM si riempie, il kernel comprime i dati e li tiene in RAM. Il guadagno è doppio: il sistema non rallenta per accessi allo storage, e le scritture sull’SSD si riducono drasticamente.

Diverse distribuzioni lo abilitano già di default. Per verificare:

zramctl

Se compare una riga con /dev/zram0, ZRAM è già attivo e non devi fare nulla. Se l’output è vuoto, la procedura per attivarlo dipende dalla tua distribuzione, perché il metodo cambia tra famiglie Debian/Ubuntu, Fedora/Arch e distro senza systemd.

Ho scritto una guida dedicata con tutti i comandi separati per famiglia:

👉 Leggi qui: Come attivare ZRAM su Linux per velocizzare i PC datati

TRIM su SSD: tienilo attivo e automatico

Se hai un SSD o NVMe, il TRIM periodico mantiene le prestazioni di scrittura nel tempo. Senza TRIM, l’SSD non sa quali blocchi sono stati liberati dai file cancellati e deve pulirli al volo durante le scritture, rallentando progressivamente.

La maggior parte delle distribuzioni con systemd ha già un timer automatico. Verifica che sia attivo:

sudo systemctl status fstrim.timer

Se non è attivo:

sudo systemctl enable --now fstrim.timer

Questo esegue un TRIM settimanale automatico senza che tu debba pensarci. Per un TRIM manuale immediato:

sudo fstrim -av

Non usare l’opzione discard in /etc/fstab: il TRIM continuo genera micro-pause durante ogni cancellazione di file e non porta vantaggi rispetto al timer settimanale. Dal 2023 in poi la raccomandazione degli sviluppatori upstream è unanime su questo punto. Il timer periodico è la scelta corretta.

App in avvio automatico: il cimitero dei servizi dimenticati

Ogni applicazione che si mette in avvio automatico sottrae RAM e allunga il boot, spesso senza che te ne accorga. Dopo qualche mese di utilizzo, la lista cresce in silenzio.

Dove trovare il pannello per gestirle, a seconda del desktop:

  • GNOME: Impostazioni → App di avvio (o via GNOME Tweaks)
  • KDE Plasma: Impostazioni di sistema → Avvio automatico
  • Xfce: Impostazioni → Sessione e avvio → Avvio automatico delle applicazioni
  • Cinnamon e MATE: Menu → Preferenze → App di avvio automatico

Disabilita senza esitare: client di cloud sync che non usi, app di chat che puoi aprire manualmente, strumenti di aggiornamento grafici se gestisci già i pacchetti da terminale, assistenti vocali e daemon di ricerca se non li hai mai usati.

Da terminale, per vedere i servizi utente in esecuzione:

systemctl --user list-units --type=service --state=running

Per disabilitarne uno:

systemctl --user disable --now nome-servizio

Servizi di sistema: quali disabilitare senza rischi

Alcuni servizi di sistema girano di default su qualsiasi installazione desktop, ma non servono a tutti. Disabilita solo quello che sai cosa fa: un servizio sbagliato rimosso può rompere funzionalità che non sapevi di avere.

Questi sono sicuri da disabilitare nella maggior parte delle configurazioni desktop standard:

# Bluetooth, se non lo usi
sudo systemctl disable --now bluetooth

# Stampa di rete, se non hai stampanti di rete
sudo systemctl disable --now cups-browsed

# ModemManager, se non hai dongle 3G/4G dedicati
sudo systemctl disable --now ModemManager

# Avahi (ricerca servizi in rete locale), se non ti serve
sudo systemctl disable --now avahi-daemon

Prima di disabilitare qualsiasi servizio, controlla cosa fa e se è attivo:

sudo systemctl status nome-servizio

Il risparmio in RAM di ogni singolo servizio è modesto. L’effetto cumulativo di quattro o cinque servizi inutili disabilitati si misura in 50-150 MB di RAM liberata a riposo e qualche secondo di avvio in meno.

earlyoom: il sistema che non si blocca più quando la RAM si esaurisce

Il kernel Linux ha un meccanismo OOM (Out-of-Memory) integrato che interviene quando la RAM è esaurita. Il problema è che interviene troppo tardi: quando si attiva, il sistema è già bloccato da decine di secondi, spesso con il cursore del mouse congelato e nessuna risposta dal desktop.

earlyoom risolve questo problema intervenendo prima, chiudendo il processo più pesante già quando la RAM disponibile scende sotto il 10%. Invece di trovare il desktop congelato, vedi chiudersi la scheda del browser più pesante. Il sistema resta usabile.

Installazione su Debian/Ubuntu/Mint:

sudo apt install earlyoom
sudo systemctl enable --now earlyoom

Su Fedora:

sudo dnf install earlyoom
sudo systemctl enable --now earlyoom

Su Arch/Manjaro/EndeavourOS:

sudo pacman -S earlyoom
sudo systemctl enable --now earlyoom

Nota per Ubuntu 22.04 e versioni successive: Ubuntu include già systemd-oomd, un’alternativa integrata. Controlla con systemctl status systemd-oomd. Se è attivo e funzionante, earlyoom è ridondante. Su distribuzioni Debian-based con ambienti desktop diversi da GNOME (Mint Cinnamon, Xfce, MATE) earlyoom è generalmente più affidabile, perché systemd-oomd è ottimizzato per l’integrazione specifica con GNOME e KDE.

Ambiente desktop: la scelta che cambia tutto sull’hardware vecchio

L’ambiente desktop è il componente singolo che influenza di più il consumo di RAM a riposo. Non è questione di estetica: è la differenza concreta tra un sistema fluido e uno che swappa costantemente anche senza aprire nulla.

Consumi tipici misurati a desktop avviato e vuoto:

AmbienteConsumo RAM a riposo
GNOME (Ubuntu, Fedora)700 MB – 1.2 GB
KDE Plasma400-600 MB
Cinnamon (Linux Mint)400-500 MB
MATE250-350 MB
Xfce200-300 MB
LXQt150-200 MB

Con 4 GB di RAM o meno: Xfce o LXQt, senza alternative. Non è un compromesso: è la condizione necessaria per avere un sistema fluido. Con GNOME e 4 GB di RAM, il sistema swappa costantemente anche senza aprire nessuna app.

Con 8 GB: qualsiasi ambiente funziona, ma MATE o Cinnamon lasciano più margine per le app aperte rispetto a GNOME.

Con 16 GB o più: l’ambiente desktop non è il tuo problema, scegli quello che ti piace usare.

👉 Leggi qui: 8 distro Linux leggere per far rinascere il tuo vecchio PC

Browser: il componente che consuma più RAM di tutto il resto messo insieme

Su un sistema con RAM limitata, il browser è responsabile del 50-70% del consumo totale. Qualsiasi altra ottimizzazione che fai viene vanificata da un browser mal configurato con venti schede aperte.

Firefox si integra bene su Linux e dalla versione 130 ha un meccanismo di scarico automatico delle schede inattive. Verifica che sia attivo in about:config cercando browser.tabs.unloadOnLowMemory e assicurati che sia impostato su true.

Brave è la mia scelta quotidiana: il blocco annunci integrato riduce concretamente la quantità di dati caricati per ogni pagina, con un effetto misurabile sulla RAM occupata per scheda. La gestione delle schede dormienti funziona bene anche senza estensioni aggiuntive.

Con 4 GB di RAM: considera di usare Falkon o GNOME Web (Epiphany) per la navigazione quotidiana e tenere Firefox o Brave solo per i siti che richiedono più compatibilità. Il risparmio rispetto a un browser Chromium-based completo è di 200-400 MB a parità di schede aperte.

La regola più efficace in assoluto rimane una sola: tieni aperte meno schede. Nessuna ottimizzazione tecnica compensa quaranta schede aperte su 4 GB di RAM.

👉 Leggi qui: I migliori browser per Linux: quale scegliere

Flatpak: pulizia periodica per liberare spazio

I pacchetti Flatpak portano con sé le librerie necessarie. Questo li rende comodi ma più pesanti su disco, e con il tempo lasciano indietro runtime orfani che occupano spazio senza fare nulla.

Pulizia periodica:

flatpak uninstall --unused

Su un sistema usato da qualche mese questo comando libera in media 2-4 GB. Vale la pena eseguirlo ogni volta che fai un aggiornamento generale del sistema.

Nota sull’avvio: su eMMC lenta (tipica di certi mini PC economici sotto i 200 euro) i Flatpak si avviano percettibilmente più lentamente rispetto ai pacchetti nativi .deb o .rpm. Se usi un mini PC con storage eMMC e noti lentezza nell’apertura delle app, controlla quante sono installate come Flatpak e valuta di sostituire le più usate con i pacchetti nativi della tua distro.

Kernel ottimizzato: l’ultimo salto di prestazioni

Le distribuzioni mainstream usano kernel configurati per la massima compatibilità, non per le massime prestazioni. Su hardware specifico, specialmente AMD con iGPU Radeon, un kernel ottimizzato fa differenza misurabile in reattività e gaming.

Liquorix è il kernel per sistema Debian/Ubuntu-based più diffuso per ottimizzazioni desktop. Usa uno scheduler pensato per il multitasking interattivo invece di quello generico:

sudo add-apt-repository ppa:damentz/liquorix
sudo apt update
sudo apt install linux-image-liquorix-amd64 linux-headers-liquorix-amd64

Se sei disposto a cambiare distribuzione: CachyOS compila tutti i pacchetti con ottimizzazioni specifiche per la famiglia di CPU (ZNVER4 per Ryzen recenti), usa di default scheduler e configurazioni kernel pensate per il desktop e il gaming. Il divario con Ubuntu sullo stesso hardware è netto e misurabile. È la distribuzione che uso come sistema principale.

👉 Leggi qui: CachyOS: la distro Arch ottimizzata per prestazioni e gaming

In ordine cosa fare

Sistema con 4 GB di RAM e HDD meccanico: inizia dall’ambiente desktop (Xfce o LXQt), poi ZRAM, poi app in avvio automatico. Queste tre modifiche trasformano un sistema che sembra inutilizzabile in qualcosa di fluido.

Sistema con 8 GB di RAM e SSD: swappiness a 10, fstrim.timer attivo, earlyoom installato, app in avvio automatico ripulite. Nell’ordine. Il browser gestiscilo per ultimo perché dipende dalle tue abitudini, non da comandi.

Sistema con 16 GB o più: il kernel ottimizzato e la scelta del browser hanno più impatto di qualsiasi altra cosa. Il resto è già irrilevante a queste dimensioni di RAM.

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.

Seguici su Telegram →

IncastroPC partecipa al Programma Affiliazione Amazon EU. Prezzi e disponibilità soggetti a variazione.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *