Il filesystem BTRFS mantiene separatamente i metadati del filesystem e. È possibile utilizzare livelli di RAID diversi per i dati e i metadati contemporaneamente. Questo è un grande vantaggio del filesystem BTRFS.
Questo articolo mostra come impostare i raid BTRFS nelle configurazioni RAID-0, RAID-1, RAID-1C3, RAID-1C4, RAID-10, RAID-5 e RAID-6.
Abbreviazioni
Prerequisiti
Per provare gli esempi inclusi in questo articolo:
Nella mia macchina Ubuntu, ho aggiunto quattro HDD (SDB, SDC, SDD, SDE). Ognuno di essi è di 20 GB di dimensioni.
$ sudo lsblk -e7
Nota: I tuoi HDD/SSD possono avere nomi diversi dai miei. Quindi, assicurati di sostituirli con i tuoi d'ora in poi.
Per assistenza nell'installazione del filesystem BTRFS in Ubuntu, controlla l'installazione dell'articolo e utilizza BTRFS su Ubuntu 20.04 LTS.
Per assistenza nell'installazione del filesystem BTRFS in Fedora, controlla l'installazione dell'articolo e utilizza BTRFS su Fedora 33.
Profili BTRFS
Un profilo BTRFS viene utilizzato per dire al filesystem BTRFS quante copie dei dati/metadati da mantenere e quali livelli RAID utilizzare per i dati/metadati. Il filesystem BTRFS contiene molti profili. Comprenderli ti aiuterà a configurare un raid BTRFS proprio come vuoi.
I profili BTRFS disponibili sono i seguenti:
separare: Se la separare Il profilo viene utilizzato per i dati/metadati, nel filesystem verrà archiviata solo una copia dei dati/metadati. COSÌ, 100% dello spazio su disco di ciascuno dei dispositivi di archiviazione aggiunti al filesystem può essere utilizzato.
dup: Se la dup Il profilo viene utilizzato per i dati/metadati, ciascuno dei dispositivi di archiviazione aggiunti al filesystem manterrà due copie dei dati/metadati. COSÌ, 50% dello spazio su disco di ciascuno dei dispositivi di archiviazione aggiunti al filesystem può essere utilizzato.
raid0: Nel raid0 Profilo, i dati/metadati saranno divisi in modo uniforme su tutti i dispositivi di archiviazione aggiunti al filesystem. In questa configurazione, non ci saranno dati/metadati ridondanti (duplicati). COSÌ, 100% dello spazio su disco di ciascuno dei dispositivi di archiviazione aggiunti al filesystem. Se in ogni caso uno dei dispositivi di archiviazione non riesce, l'intero system sarà corrotto. Avrai bisogno di almeno due dispositivi di archiviazione per impostare il filesystem BTRFS nel raid0 profilo.
raid1: Nel raid1 Profilo, due copie dei dati/metadati saranno archiviati nei dispositivi di archiviazione aggiunti al filesystem. In questa configurazione, l'array RAID può sopravvivere a un fallimento dell'unità. Ma puoi usare solo 50% dello spazio del disco totale. Avrai bisogno di almeno due dispositivi di archiviazione per impostare il filesystem BTRFS nel raid1 profilo.
raid1c3: Nel raid1c3 Profilo, tre copie dei dati/metadati saranno archiviati nei dispositivi di archiviazione aggiunti al filesystem. In questa configurazione, l'array RAID può sopravvivere a due guasti dell'unità, ma puoi usare solo 33% dello spazio del disco totale. Avrai bisogno di almeno tre dispositivi di archiviazione per impostare il filesystem BTRFS nel raid1c3 profilo.
raid1c4: Nel raid1c4 Profilo, quattro copie dei dati/metadati saranno archiviati nei dispositivi di archiviazione aggiunti al filesystem. In questa configurazione, l'array RAID può sopravvivere a tre guasti dell'unità, ma puoi usare solo 25% dello spazio del disco totale. Avrai bisogno di almeno quattro dispositivi di archiviazione per impostare il filesystem BTRFS nel raid1c4 profilo.
raid10: Nel raid10 profilo, due copie dei dati/metadati verranno archiviati nei dispositivi di archiviazione aggiunti al filesystem, come nel raid1 profilo. Inoltre, i dati/metadati saranno divisi tra i dispositivi di archiviazione, come in raid0 profilo.
IL raid10 Il profilo è un ibrido del raid1 E raid0 profili. Alcuni dei dispositivi di archiviazione si formano raid1 array e alcuni di questi raid1 Gli array vengono utilizzati per formare a raid0 vettore. In un raid10 Setup, il filesystem può sopravvivere a un singolo fallimento dell'unità in ciascuno dei raid1 array.
Puoi usare 50% dello spazio totale del disco nel raid10 configurazione. Avrai bisogno di almeno quattro dispositivi di archiviazione per impostare il filesystem BTRFS nel raid10 profilo.
raid5: Nel raid5 Profilo, una copia dei dati/metadati verrà divisa tra i dispositivi di archiviazione. Una singola parità verrà calcolata e distribuita tra i dispositivi di archiviazione dell'array RAID.
In un raid5 Configurazione, il filesystem può sopravvivere a un singolo errore di unità. Se un'unità fallisce, è possibile aggiungere una nuova unità al filesystem e i dati persi saranno calcolati dalla parità distribuita delle unità in esecuzione.
Puoi usare 100x (N-1)/n % degli spazi totali del disco nel raid5 configurazione. Qui, N è il numero di dispositivi di archiviazione aggiunti al filesystem. Avrai bisogno di almeno tre dispositivi di archiviazione per impostare il filesystem BTRFS nel raid5 profilo.
raid6: Nel raid6 Profilo, una copia dei dati/metadati verrà divisa tra i dispositivi di archiviazione. Due parità saranno calcolate e distribuite tra i dispositivi di archiviazione dell'array RAID.
In un raid6 Configurazione, il filesystem può sopravvivere a due guasti dell'unità contemporaneamente. Se un'unità fallisce, è possibile aggiungere una nuova unità al filesystem e i dati persi saranno calcolati dalle due parità distribuite delle unità in esecuzione.
Puoi usare 100x (n-2)/n % dello spazio totale del disco nel raid6 configurazione. Qui, N è il numero di dispositivi di archiviazione aggiunti al filesystem. Avrai bisogno di almeno quattro dispositivi di archiviazione per impostare il filesystem BTRFS nel raid6 profilo.
Creazione di un punto di montaggio
È necessario creare una directory per montare il filesystem BTRFS che creerai nelle sezioni successive di questo articolo.
Per creare la directory /mount point /dati, eseguire il comando seguente:
$ sudo mkdir -v /dati
Impostazione RAID-0
In questa sezione, imparerai come impostare un raid BTRFS nella configurazione RAID-0 utilizzando quattro HDD (SDB, SDC, SDD e SDE). Gli HDD hanno una dimensione di 20 GB.
$ sudo lsblk -e7
Per creare un raid BTRFS nella configurazione RAID-0 utilizzando quattro HDD (SDB, SDC, SDD, E SDE) Esegui il seguente comando:
$ sudo mkfs.BTRFS -l Data -D RAID0 -M RAID0 -F /DEV /SDB /DEV /SDC /DEV /SDD /DEV /SDE
Qui,
Il filesystem BTRFS dati Nella configurazione RAID-0 dovrebbe ora essere creata, come puoi vedere nello screenshot seguente.
È possibile montare il raid BTRFS utilizzando qualsiasi HDD/SSD utilizzato per creare il raid.
Ad esempio, ho usato gli HDD SDB, SDC, SDD, E SDE Per creare il raid BTRFS nella configurazione RAID-0.
Quindi, posso montare il filesystem BTRFS dati nel /dati directory usando l'HDD sdb, come segue:
$ sudo Mount /Dev /SDB /Data
Come puoi vedere, il raid BTRFS è montato nel /dati directory.
$ sudo df -h /dati
Per trovare le informazioni sull'utilizzo del filesystem del dati System del file btrfs montato nel /dati Directory, eseguire il seguente comando:
$ sudo btrfs Utilizzo /dati del filesystem
Come potete vedere,
La dimensione del raid (Dimensione del dispositivo) È 80 GB (4 × 20 GB per HDD).
Di 78.98 GB (Libero (stimato)) Di 80 GB dello spazio su disco può essere utilizzato nella configurazione RAID-0.
Solo una copia dei dati (Rapporto dati) e una copia dei metadati (Rapporto di metadati) verrà archiviato nel filesystem BTRFS nella configurazione RAID-0.
Dato che il raid BTRFS funziona, puoi sconvolgerlo dal /dati Directory, come segue:
$ sudo umount /dati
Impostazione RAID-1
In questa sezione, imparerai come impostare un raid BTRFS nella configurazione RAID-1 utilizzando quattro HDD (SDB, SDC, SDD, E SDE). Gli HDD hanno una dimensione di 20 GB.
$ sudo lsblk -e7
Per creare un raid BTRFS nella configurazione RAID-1 utilizzando quattro HDD (SDB, SDC, SDD, E SDE), esegui il seguente comando:
$ sudo mkfs.BTRFS -l Data -D RAID1 -M RAID1 -F /DEV /SDB /DEV /SDC /DEV /SDD /DEV /SDE
Qui,
I dati del filesystem BTRFS nella configurazione RAID-1 dovrebbero ora essere creati, come puoi vedere nello screenshot seguente.
È possibile montare il raid BTRFS utilizzando qualsiasi HDD/SSD utilizzato per creare il raid.
Ad esempio, ho usato gli HDD SDB, SDC, SDD, E SDE Per creare il raid BTRFS nella configurazione RAID-1.
Posso montare il filesystem BTRFS dati nel /dati directory usando l'HDD sdb, come segue:
$ sudo Mount /Dev /SDB /Data
Come puoi vedere, il raid BTRFS è montato nella directory /dati.
$ sudo df -h /dati
Per trovare le informazioni sull'utilizzo del filesystem del filesystem BTRFS dati montate nel /dati Directory, eseguire il seguente comando:
$ sudo btrfs Utilizzo /dati del filesystem
Come potete vedere,
La dimensione del raid (Dimensione del dispositivo) È 80 GB (4 × 20 GB per HDD).
Di 38.99 GB (Libero (stimato)) Di 80 GB dello spazio su disco può essere utilizzato nella configurazione RAID-1.
Nella configurazione RAID-1, due copie dei dati (Rapporto dati) e due copie dei metadati (Rapporto di metadati) verrà archiviato nel filesystem BTRFS.
Dato che il raid BTRFS funziona, puoi sconvolgerlo dal /dati Directory, come segue:
$ sudo umount /dati
Impostazione RAID-1C3
In questa sezione, imparerai come impostare un raid BTRFS nella configurazione RAID-1C3 utilizzando quattro HDD (SDB, SDC, SDD e SDE). Gli HDD hanno una dimensione di 20 GB
$ sudo lsblk -e7
Per creare un raid BTRFS nella configurazione RAID-1C3 utilizzando i quattro HDD SDB, SDC, SDD, E SDE, Esegui il seguente comando:
$ sudo mkfs.BTRFS -l Data -D RAID1C3 -M RAID1C3 -F /DEV /SDB /DEV /SDC /DEV /SDD /DEV /SDE
Qui,
Il filesystem BTRFS dati Nella configurazione RAID-1C3 dovrebbe ora essere creata, come puoi vedere nello screenshot seguente.
È possibile montare il raid BTRFS utilizzando qualsiasi HDD/SSD utilizzato per creare il raid.
Ad esempio, ho usato gli HDD SDB, SDC, SDD, E SDE Per creare il raid BTRFS nella configurazione RAID-1C3.
Quindi, posso montare il filesystem BTRFS dati nel /dati directory usando l'HDD sdb, come segue:
$ sudo Mount /Dev /SDB /Data
Come puoi vedere, il raid BTRFS è montato nel /dati directory.
$ sudo df -h /dati
Per trovare le informazioni sull'utilizzo del filesystem del dati System del file btrfs montato nel /dati Directory, eseguire il seguente comando:
$ sudo btrfs Utilizzo /dati del filesystem
Come potete vedere,
La dimensione del raid (Dimensione del dispositivo) È 80 GB (4 × 20 GB per HDD).
Di 25.66 GB (Libero (stimato)) Di 80 GB dello spazio su disco può essere utilizzato nella configurazione RAID-1C3.
Nella configurazione RAID-1C3, tre copie dei dati (Rapporto dati) e tre copie dei metadati (Rapporto di metadati) verrà archiviato nel filesystem BTRFS.
Dato che il raid BTRFS funziona, puoi sconvolgerlo dal /dati Directory, come segue:
$ sudo umount /dati
Impostazione RAID-1C4
In questa sezione, imparerai come impostare un raid BTRFS nella configurazione RAID-1C4 utilizzando i quattro HDD SDB, SDC, SDD, E SDE. Gli HDD hanno una dimensione di 20 GB.
$ sudo lsblk -e7
Per creare un raid BTRFS nella configurazione RAID-1C4 utilizzando i quattro HDD SDB, SDC, SDD, E SDE, Esegui il seguente comando:
$ sudo mkfs.BTRFS -l Data -D RAID1C4 -M RAID1C4 -F /DEV /SDB /DEV /SDC /DEV /SDD /DEV /SDE
Qui,
Il filesystem BTRFS dati Nella configurazione RAID-1C4 dovrebbe ora essere creata, come puoi vedere nello screenshot seguente.
È possibile montare il raid BTRFS utilizzando qualsiasi HDD/SSD utilizzato per creare il raid.
Ad esempio, ho usato gli HDD SDB, SDC, SDD, E SDE Per creare il raid BTRFS nella configurazione RAID-1C4.
Quindi, posso montare il filesystem BTRFS dati nel /dati directory usando l'HDD sdb, come segue:
$ sudo Mount /Dev /SDB /Data
Come puoi vedere, il raid BTRFS è montato nel /dati
$ sudo df -h /dati
Per trovare le informazioni sull'utilizzo del filesystem del dati System del file btrfs montato nel /dati
$ sudo btrfs Utilizzo /dati del filesystem
Come potete vedere,
La dimensione del raid (Dimensione del dispositivo) È 80 GB (4 × 20 GB per HDD).
Di 18.99 GB (Libero (stimato)) Di 80 GB dello spazio su disco può essere utilizzato nella configurazione RAID-1C4.
Nella configurazione RAID-1C4, quattro copie dei dati (Rapporto dati) e quattro copie dei metadati (Rapporto di metadati) verrà archiviato nel filesystem BTRFS.
Dato che il raid BTRFS funziona, puoi sconvolgerlo dal /dati Directory, come segue:
$ sudo umount /dati
Impostazione RAID-10
In questa sezione, imparerai come impostare un raid BTRFS nella configurazione RAID-10 utilizzando i quattro HDD SDB, SDC, SDD, E SDE. Gli HDD hanno una dimensione di 20 GB.
$ sudo lsblk -e7
Per creare un raid BTRFS nella configurazione RAID-10 utilizzando i quattro HDD SDB, SDC, SDD, E SDE, Esegui il seguente comando:
$ sudo mkfs.BTRFS -l Data -D RAID10 -M RAID10 -F /DEV /SDB /DEV /SDC /DEV /SDD /DEV /SDE
Qui,
Il filesystem BTRFS dati Nella configurazione RAID-10 dovrebbe ora essere creata, come puoi vedere nello screenshot seguente.
È possibile montare il raid BTRFS utilizzando qualsiasi HDD/SSD utilizzato per creare il raid.
Ad esempio, ho usato gli HDD SDB, SDC, SDD, E SDE Per creare il raid BTRFS nella configurazione RAID-10.
Quindi, posso montare il filesystem BTRFS dati nel /dati directory usando l'HDD sdb, come segue:
$ sudo Mount /Dev /SDB /Data
Come puoi vedere, il raid BTRFS è montato nel /dati directory.
$ sudo df -h /dati
Per trovare le informazioni sull'utilizzo del filesystem del filesystem BTRFS dati montate nel /dati Directory, eseguire il seguente comando:
$ sudo btrfs Utilizzo /dati del filesystem
Come potete vedere,
La dimensione del raid (Dimensione del dispositivo) È 80 GB (4 × 20 GB per HDD).
Di 39.48 GB (Libero (stimato)) Di 80 GB dello spazio su disco può essere utilizzato nella configurazione RAID-10.
Nella configurazione RAID-10, due copie dei dati (Rapporto dati) e due copie dei metadati (Rapporto di metadati) verrà archiviato nel filesystem BTRFS.
Dato che il raid BTRFS funziona, puoi sconvolgerlo dal /dati Directory, come segue:
$ sudo umount /dati
Impostazione RAID-5
In questa sezione, imparerai come impostare un raid BTRFS nella configurazione RAID-5 utilizzando i quattro HDD SDB, SDC, SDD, E SDE. Gli HDD hanno una dimensione di 20 GB.
$ sudo lsblk -e7
Per creare un raid BTRFS nella configurazione RAID-5 utilizzando i quattro HDD SDB, SDC, SDD, E SDE, Esegui il seguente comando:
$ sudo mkfs.BTRFS -l Data -D RAID5 -M RAID5 -F /DEV /SDB /DEV /SDC /DEV /SDD /DEV /SDE
Qui,
Il filesystem BTRFS dati Nella configurazione RAID-5 dovrebbe ora essere creata, come puoi vedere nello screenshot seguente.
È possibile montare il raid BTRFS utilizzando qualsiasi HDD/SSD utilizzato per creare il raid.
Ad esempio, ho usato gli HDD SDB, SDC, SDD, E SDE Per creare il raid BTRFS nella configurazione RAID-5.
Quindi, posso montare il filesystem BTRFS dati nel /dati directory usando l'HDD sdb, come segue:
$ sudo Mount /Dev /SDB /Data
Come puoi vedere, il raid BTRFS è montato nel /dati directory.
$ sudo df -h /dati
Per trovare le informazioni sull'utilizzo del filesystem del filesystem BTRFS dati montate nel /dati Directory, eseguire il seguente comando:
$ sudo btrfs Utilizzo /dati del filesystem
Come potete vedere,
La dimensione del raid (Dimensione del dispositivo) È 80 GB (4 × 20 GB per HDD).
Di 59.24 GB (Libero (stimato)) Di 80 GB di spazio su disco può essere utilizzato nella configurazione RAID-5.
Nella configurazione RAID-5, 1.33 copie dei dati (Rapporto dati) e 1.33 copie dei metadati (Rapporto di metadati) verrà archiviato nel filesystem BTRFS.
Dato che il raid BTRFS funziona, puoi sconvolgerlo dal /dati Directory, come segue:
$ sudo umount /dati
Impostazione RAID-6
In questa sezione, imparerai come impostare un raid BTRFS nella configurazione RAID-6 utilizzando i quattro HDD SDB, SDC, SDD, E SDE. Gli HDD hanno una dimensione di 20 GB.
$ sudo lsblk -e7
Per creare un raid BTRFS nella configurazione RAID-6 utilizzando i quattro HDD SDB, SDC, SDD, E SDE, Esegui il seguente comando:
$ sudo mkfs.BTRFS -l Data -D RAID6 -M RAID6 -F /DEV /SDB /DEV /SDC /DEV /SDD /DEV /SDE
Qui,
Il filesystem BTRFS dati Nella configurazione RAID-6 dovrebbe ora essere creata, come puoi vedere nello screenshot seguente.
È possibile montare il raid BTRFS utilizzando qualsiasi HDD/SSD utilizzato per creare il raid.
Ad esempio, ho usato gli HDD SDB, SDC, SDD, E SDE Per creare il raid BTRFS nella configurazione RAID-6.
Quindi, posso montare il filesystem BTRFS dati nel /dati directory usando l'HDD sdb, come segue:
$ sudo Mount /Dev /SDB /Data
Come puoi vedere, il raid BTRFS è montato nel /dati directory.
$ sudo df -h /dati
Per trovare le informazioni sull'utilizzo del filesystem del dati System del file btrfs montato nel /dati Directory, eseguire il seguente comando:
$ sudo btrfs Utilizzo /dati del filesystem
Come potete vedere,
La dimensione del raid (Dimensione del dispositivo) È 80 GB (4 × 20 GB per HDD).
Di 39.48 GB (Libero (stimato)) Di 80 GB di spazio su disco può essere utilizzato nella configurazione RAID-6.
Nella configurazione RAID-6, due copie dei dati (Rapporto dati) e due copie dei metadati (Rapporto di metadati) verrà archiviato nel filesystem BTRFS.
Dato che il raid BTRFS funziona, puoi sconvolgerlo dal /dati Directory, come segue:
$ sudo umount /dati
Problemi con BTRFS RAID-5 e RAID-6
Le configurazioni BTRFS RAID-5 e RAID-6 integrate sono ancora sperimentali. Queste configurazioni sono molto instabili e non dovresti usarle in produzione.
Per evitare la corruzione dei dati, il sistema operativo Ubuntu non ha implementato RAID-5 e RAID-6 per il filesystem BTRFS. Quindi, non sarai in grado di creare un raid BTRFS nelle configurazioni RAID-5 e RAID-6 utilizzando la funzione RAID integrata del filesystem BTRFS su Ubuntu. Ecco perché ti ho mostrato come creare un raid BTRFS nelle configurazioni RAID-5 e RAID-6 in Fedora 33, invece di Ubuntu 20.04 LTS.
Montare automaticamente un raid BTRFS su avvio
Per montare un raid BTRFS automaticamente al momento dell'avvio utilizzando il file /etc /fstab, dovrai conoscere l'UUID del filesystem BTRFS.
Puoi trovare l'UUID di un filesystem BTRFS con il seguente comando:
$ sudo blkid-tipo-match-token = btrfs
Come puoi vedere, l'UUID dei dispositivi di archiviazione che vengono aggiunti al filesystem BTRFS per la configurazione del RAID è lo stesso.
Nel mio caso, lo è C69A889A-8FD2-4571-BD97-A3C2E4543B6B. Sarà diverso per te. Quindi, assicurati di sostituire questo uuid con il tuo da ora in poi.
Ora, apri il /etc/fstab File con l'editor di testo nano, come segue:
$ sudo nano /etc /fstab
Aggiungi la riga seguente alla fine del /etc/fstab file.
Uuid =C69A889A-8FD2-4571-BD97-A3C2E4543B6B /Dati BTRFS Predefiniti 0 0
Una volta finito, premere + X seguito da Y E per salvare il /etc/fstab file.
Per avere effetto le modifiche, riavviare il computer, come segue:
$ sudo riavvia
Come puoi vedere, il raid BTRFS è montato correttamente in /dati directory.
$ df -h /dati
Come puoi vedere, il raid BTRFS montato nel /dati La directory funziona bene.
$ sudo btrfs Utilizzo /dati del filesystem
Conclusione
Questo articolo ha spiegato in dettaglio vari profili RAID BTRFS. L'articolo ha mostrato come impostare un raid BTRFS nelle configurazioni RAID-0, RAID-1, RAID-1C3, RAID-1C4, RAID-10, RAID-5 e RAID-6. Hai anche appreso alcuni dei problemi con le configurazioni BTRFS RAID-5 e RAID-6, nonché come montare automaticamente il raid BTRFS al momento dell'avvio.
Riferimenti