Btrfs parte 3: guadagnare spazio (quasi) gratis

Pubblicato da TheJoe il

Tempo di lettura stimato: 2 minuti

Siamo arrivati all’ultimo capitolo della nostra trilogia su Btrfs. Dopo aver messo in sicurezza i dati e aver pianificato i backup, oggi parliamo di come ottimizzare ogni singolo byte sul disco. Se pensate che lo spazio sia una risorsa finita, Btrfs vi farà cambiare idea grazie alla compressione trasparente e alla deduplicazione.

1. Compressione trasparente: più GB, meno usura

La compressione trasparente è una delle funzioni più sottovalutate. In pratica, Btrfs comprime i dati prima di scriverli sul disco e li decomprime al volo quando li leggi. Tutto questo avviene a un livello così basso che il sistema operativo e le tue applicazioni non si accorgono di nulla. Se il computer non è nuovissimo se ne accorge la CPU.

Il mio algoritmo preferito è ZSTD. Offre un equilibrio perfetto tra velocità e rapporto di compressione.

Come attivarla (subito)

Non serve formattare. Puoi attivarla modificando le opzioni di mount nel file /etc/fstab:

# Esempio di riga in fstab
UUID=tuo-uuid / btrfs defaults,compress=zstd:3 0 0

Il trucco: Se vuoi comprimere i file già esistenti, lancia questo comando:
sudo btrfs filesystem defragment -r -v -czstd /

Oltre a risparmiare spazio (spesso dal 20% al 50% su file di testo, log e database), ridurrai le scritture fisiche sul tuo SSD, allungandogli la vita.

2. Deduplicazione: addio doppioni

Hai mai pensato a quanto spazio occupano dieci copie dello stesso file scaricato in cartelle diverse? O tre macchine virtuali basate sulla stessa distribuzione Linux? La deduplicazione analizza i blocchi di dati e, se ne trova di identici, li “unisce” fisicamente sul disco lasciandoli però distinti per l’utente.

A differenza di ZFS, Btrfs usa la deduplicazione out-of-band. Questo significa che non rallenta il sistema mentre scrivi, ma puoi lanciarla quando preferisci (magari di notte).

Guarda qui:  Come scoprire se il provider limita la mia banda

Tool consigliati:

  • Duperemove: Scansiona il file system e unisce i blocchi duplicati.
  • Bees: Un demone che lavora in background per mantenere il disco “pulito”.
# Esempio veloce con duperemove
sudo duperemove -dr /percorso/dati

3. Dischi di taglie diverse? nessun problema

Il RAID tradizionale è rigido: se hai un disco da 1TB e uno da 2TB, nel 90% dei casi ne userai solo 1TB per disco. Btrfs rompe questa regola. Grazie alla gestione a blocchi, Btrfs può distribuire i dati in modo da sfruttare quasi ogni angolo dello storage disponibile, anche se i dischi non sono identici.

Basta aggiungere il nuovo disco e lanciare un balance:

sudo btrfs device add /dev/sdc /punto/di/mount
sudo btrfs balance start /punto/di/mount

Conclusioni: la triade è completa

Abbiamo trasformato un normale file system e ora è irriconoscibile rispetto a prima:

Btrfs ha ancora qualche spigolo (evitate il RAID 5/6 come la peste!), ma per un uso desktop o server standard è, a mio parere, la scelta migliore oggi su Linux. Spero che questa serie vi sia stata utile per domare i vostri dischi!


TheJoe

Mantengo questo blog a livello amatoriale dal 2009. Sono appassionato di grafica, tecnologia, software Open Source. Fra i miei articoli non sarà difficile trovarne circa la musica, ed alcuni di riflessioni personali, ma preferisco indirizzare la linea del blog principalmente verso la tecnologia. Per informazioni contattami.

0 commenti

Lascia un commento

Segnaposto per l'avatar

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

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.