Ricerca nel sito web

Iniziare con il filesystem ZFS su Ubuntu 19.10


Una delle caratteristiche principali di Ubuntu 19.10 è il supporto per ZFS. Ora puoi installare facilmente Ubuntu con ZFS senza alcuno sforzo aggiuntivo.

Normalmente, installi Linux con il filesystem Ext4. Ma se esegui una nuova installazione di Ubuntu 19.10, vedrai l'opzione per utilizzare ZFS sul root. Non devi usarlo su un sistema dual boot perché cancellerà l'intero disco.

Vediamo perché ZFS è importante e come trarne vantaggio nell'installazione ZFS di Ubuntu.

In che modo ZFS è diverso dagli altri file system?

ZFS è progettato con due obiettivi principali in mente: gestire grandi quantità di spazio di archiviazione e prevenire la corruzione dei dati. ZFS può gestire fino a 256 quadrilioni di Zettabyte di spazio di archiviazione. (Da qui la Z in ZFS.) Può anche gestire file di dimensioni fino a 16 exabyte.

Se sei limitato a un laptop con una sola unità, puoi comunque sfruttare le funzionalità di protezione dei dati in ZFS. La funzionalità copia su scrittura garantisce che i dati in uso non vengano sovrascritti. Invece, le nuove informazioni vengono scritte in un nuovo blocco e i metadati del filesystem vengono aggiornati per puntare al nuovo blocco. ZFS può facilmente creare istantanee del filesystem. Queste istantanee tengono traccia delle modifiche apportate al filesystem e condividono con il filesystem i dati uguali per risparmiare spazio.

ZFS ha assegnato un checksum a ciascun file sull'unità. Controlla costantemente lo stato del file rispetto a tale checksum. Se rileva che il file è danneggiato, tenterà di ripararlo automaticamente.

Ho scritto un articolo dettagliato su cos'è ZFS e quali sono le sue caratteristiche. Ti invitiamo a leggerlo se sei interessato a saperne di più su questo argomento.

Nota

Tieni presente che le funzionalità di protezione dei dati di ZFS possono portare a una riduzione delle prestazioni.

Utilizzo di ZFS su Ubuntu [Per utenti da intermedi ad avanzati]

Una volta eseguita un'installazione pulita di Ubuntu con ZFS sul disco principale, puoi iniziare a sfruttare le funzionalità di questo filesystem.

Tieni presente che tutta la configurazione di ZFS richiede la riga di comando. Non sono a conoscenza di alcuno strumento GUI per questo.

Creazione di un pool ZFS

Questa sezione si applica solo se disponi di un sistema con più di un'unità. Se hai solo un'unità, Ubuntu creerà automaticamente il pool durante l'installazione.

Prima di creare il pool, è necessario scoprire l'ID delle unità per il pool. Puoi utilizzare il comando lsblk per mostrare queste informazioni.

Per creare un pool di base con tre unità, utilizzare il comando seguente:

 sudo zpool create pool-test /dev/sdb /dev/sdc /dev/sdd. 

Ricordati di sostituire pool-test con il nome del pool che preferisci.

Questo comando imposterà "un pool RAID-0 a ridondanza zero". Ciò significa che se una delle unità viene danneggiata o corrotta, perderai i dati. Se si utilizza questa configurazione, si consiglia di eseguire backup regolari.

Puoi anche aggiungere un altro disco al pool usando questo comando:

sudo zpool add pool-name /dev/sdx

Controlla lo stato del tuo pool ZFS

Puoi controllare lo stato del tuo nuovo pool usando questo comando:

 sudo zpool status pool-test 

Esegui il mirroring di un pool ZFS

Per garantire che i tuoi dati siano al sicuro, puoi invece impostare il mirroring. Mirroring significa che ogni unità contiene gli stessi dati. Con la configurazione del mirroring, potresti perdere due unità su tre e conservare comunque tutte le tue informazioni.

Per creare uno specchio, puoi usare qualcosa del genere:

sudo zpool create pool-test mirror /dev/sdb /dev/sdc /dev/sdd

Crea istantanee ZFS per il backup e il ripristino

Le istantanee ti consentono di creare una posizione di riserva nel caso in cui un file venga eliminato o sovrascritto. Ad esempio, creiamo un'istantanea, eliminiamo alcune cartelle nella mia directory home e ripristiniamole.

Innanzitutto, devi trovare il set di dati di cui desideri eseguire lo snapshot. Puoi farlo con il

 zfs list

Puoi vedere che la mia cartella Home si trova in rpool/USERDATA/johnblood_uwcjk7.

Creiamo un'istantanea denominata 1910 utilizzando questo comando:

sudo zfs snapshot rpool/USERDATA/johnblood_uwcjk7@1019

Lo snapshot verrà creato molto rapidamente. Ora eliminerò le directory Download e Documenti.

Ora per ripristinare lo snapshot, tutto ciò che devi fare è eseguire questo comando:

sudo zfs rollback rpool/USERDATA/johnblood_uwcjk7@1019. 

La durata del rollback dipende da quanto sono cambiate le informazioni. Ora puoi controllare la cartella Inizio e le cartelle eliminate (e il loro contenuto) verranno riportate nella posizione corretta.

A ZFS o no?

Questo è solo un rapido sguardo a cosa puoi fare con ZFS su Ubuntu. Per ulteriori informazioni, consulta la pagina wiki di Ubuntu su ZFS. Consiglio anche la lettura di questo ottimo articolo su ArsTechnica.

Questa è una funzionalità sperimentale e se non conosci ZFS e desideri avere un sistema semplice e stabile, vai con l'installazione standard su Ext4. Se hai una macchina di riserva con cui vuoi sperimentare, prova qualcosa di simile solo per imparare qualcosa o due su ZFS. Se sei un “esperto” e sai cosa stai facendo, sei libero di sperimentare ZFS dove preferisci.

Al momento l'implementazione di ZFS in Ubuntu 19.10 è sperimentale poiché il modo in cui è disposto il disco potrebbe cambiare nella versione Ubuntu 20.04. Non garantiscono che sarai in grado di eseguire l'aggiornamento se hai installato ZFS.

Secondo il podcast di Ubuntu, il team desktop di Ubuntu sta lavorando su uno strumento chiamato zsys. Si collegherà ad apt e grub. Quando aggiorni il tuo sistema, zsys acquisirà istantanee in modo da poter eseguire l'avvio in uno snapshot precedente se l'aggiornamento fallisce. Arriverà nella versione 20.04.

Hai mai usato ZFS? Fatecelo sapere nei commenti qui sotto. Se hai trovato interessante questo articolo, prenditi un minuto per condividerlo sui social media, Hacker News o Reddit.

Articoli correlati: