In questi mesi abbiamo parlato diverse volte di BTRFS, in questo articolo vedremo di scoprire tutte le migliorie che approderanno utilizzando questo nuovo filesystem.
Lo sviluppo del file system BTRFS è iniziato nel 2007 da parte di Oracle ed il suo sviluppatore principale è Chris Mason, ingegnere che ha lavorato al progetto ReiserFS per SUSE, con la partecipazione di altre aziende come ad esempio Red Hat, Intel, SUSE e Fujitsu.
Lo sviluppo di BTRFS ha portato molti problemi colpevoli di molti ritardi, è stato incluso il supporto nel kernel Linux dalla versione 2.6.29 nel 2009, e da lì molte distribuzioni hanno iniziato a proporlo come filesystem alternativo: da Arch Linux, Ubuntu 10.10, Fedora 15, openSUSE 11.3, Debian ecc.
Uno degli obbiettivi principali di BTRFS, come indica Chris Mason, è “permettere a Linux di poter scalare sulle ingenti risorse di storage che saranno disponibili in futuro. Scalare bene non si limita alle sole funzionalità di completo indirizzamento, ma significa anche avere una interfaccia pulita per l’amministrazione e la gestione che sia affidabile e permetta agli utenti di comprendere chiaramente ogni passaggio“.
Alcune di queste caratteristiche esistono già nel file system ZFS di Sun Microsystems, presente di default sul sistema operativo Solaris e OpenSolaris, ecco perché molti considerano il BTRFS lo ZFS per GNU / Linux. Nel 2011, le funzioni di deframmentazione sono state introdotte nella versione 3.0 del kernel Linux . Oltre a Mason di Oracle, uno sviluppatore di Fujitsu ha contribuito a modificare le prestazioni rendendolo più performante di qualsiasi altro file system attualmente disponibile.
A confermare le qualità del nuovo file system di Oracle è proprio Theodore Ts’o, sviluppatore principale di EXT3 ed EXT4, che ritiene come “BTRFS è il modo migliore di procedere, perché offre miglioramenti in termini di affidabilità, scalabilità e gestibilità”.
Tra le principale caratteristiche di BTRFS troviamo:
- Conversione tra filesystem EXT3 a EXT4 e BTRFS;
- Deframmentazione con il file system montato;
- Software per la gestione del volume incorporato nel file system, che consente l’aumento o la diminuzione dello spazio totale;
- Supporto RAID 0, RAID 1 e RAID 10;
- Efficiente backup incrementale ed il mirroring FS;
- Controllo del file system montato on-line ed offline, entrambi in modo molto veloce;
- Checksum su dati e metadati, questa è una delle garanzie per mantenere l’integrità dei dati memorizzati;
- L’allocazione dinamica degli inode:
- Compressione con zlib e LZO;
- Efficienza di organizzazione dei file e directory;
- Dimensione massima dei file è di 16 exabyte:
- Creazione di snapshot del disco montato, ossia un backup in tempo reale dell’intero sistema;
A rendere ancora più importante BTRFS sono anche i vari progetti che sono nati durante il suo sviluppo: troviamo Snapper di openSUSE e rollback di Fedora, ossia strumenti per la creazione e la gestione degli snapshot.
In caso di aggiornamenti, rimozione di file del sistema ed altre operazioni che hanno reso instabile il sistema, potremo ripristinare un precedente snapshot in modo da rendere il sistema nuovamente stabile.
Insomma, BTRFS è davvero il file system del futuro: per Linux logicamente…