GNU/Linux >> Linux Esercitazione >  >> Linux

Come riparare il filesystem XFS danneggiato con xfs_repair

Originariamente creato da Silicon Graphics, il file system XFS è un file system di journaling robusto e ad alte prestazioni che è stato incluso per la prima volta nel kernel Linux nel 2001. Da allora, la popolarità del file system è cresciuta in modo esponenziale e nel 2014 il file system XFS ha trovato si fa strada nelle principali distribuzioni Linux. In effetti, XFS è il filesystem predefinito nelle distribuzioni basate su Red Hat come RHEL, CentOS e Rocky Linux. Il filesystem funziona incredibilmente bene con file di grandi dimensioni ed è popolarmente noto per la sua velocità e robustezza.

Per quanto robusto sia il filesystem XFS, non è immune dalla corruzione del filesystem. Le cause comuni di errori o danneggiamenti del filesystem includono arresti non procedurali o non corretti, errori di scrittura NFS, interruzioni di corrente improvvise e guasti hardware come blocchi danneggiati sull'unità. La corruzione del filesystem può causare gravi problemi come la corruzione di file regolari e può persino impedire l'avvio del sistema quando i file di avvio sono interessati.

Alcuni strumenti sono utili per controllare gli errori del filesystem. Uno di questi è il comando fsck (Filesystem Check). Lo strumento di utilità di sistema fsck verifica lo stato generale di un filesystem. Controlla il filesystem per errori potenziali ed esistenti e li ripara insieme alla generazione di un rapporto. Il comando fsck viene preinstallato nella maggior parte delle distribuzioni Linux e non è richiesta alcuna installazione. Un'altra utile utilità di sistema utilizzata per correggere gli errori in un filesystem è l'utilità xfs_repair. L'utilità è altamente scalabile ed è progettata per scansionare e riparare filesystem di grandi dimensioni con diversi inode con la massima efficienza possibile.

In questa guida, ti spiegheremo come riparare il filesystem XFS danneggiato utilizzando l'utilità xfs_repair.

Fase 1) Simula la corruzione dei file

Per ottenere il massimo da questo tutorial, simuleremo la corruzione del file system di un file system XFS. Qui utilizzeremo un'unità USB esterna da 8 GB come volume di blocco. Questo è indicato come /dev/sdb1 come mostrato nel comando seguente.

$ lsblk | grep sd

Il primo passo è formattarlo nel filesystem xfs usando il comando mkfs.

$ sudo mkfs.xfs -f /dev/sdb1

Questo mostra l'output mostrato

Il passaggio successivo consiste nel creare un punto di montaggio che utilizzeremo in seguito per montare il volume del blocco.

$ sudo mkdir /mnt/data

Quindi, monta la partizione utilizzando il comando mount.

$ sudo mount /dev/sdb1  /mnt/data

Puoi verificare se la partizione è stata montata correttamente come mostrato.

$ sudo mount | grep /dev/sdb1

La nostra partizione è ora montata correttamente come partizione xfs. Successivamente, simuleremo la corruzione del filesystem eliminando blocchi di metadati del filesystem casuali utilizzando il comando xfs_db.

Ma prima, dobbiamo smontare la partizione.

$ sudo umount /dev/sdb1

Quindi, corrompere il filesystem eseguendo il comando seguente per eliminare i blocchi di metadati del filesystem casuali.

$ sudo xfs_db -x -c blockget -c "blocktrash -s 512109 -n 1000" /dev/sdb1

Fase 2) Ripara il filesystem XFS usando xfs_repair

Per riparare il file system utilizzando il comando, utilizzare la sintassi:

$ sudo xfs_repair /dev/device

Ma prima di iniziare a riparare il filesystem, possiamo eseguire un dry run usando il flag -n come mostrato. Un ciclo di prova fornisce una panoramica delle azioni che verranno eseguite dal comando una volta eseguito.

$ sudo xfs_repair -n /dev/dispositivo

Nel nostro caso, questo si traduce in:

$ sudo xfs_repair -n /dev/sdb1

Dall'output, possiamo vedere alcuni errori di metadati e incoerenze di inode. Il comando si conclude con un breve riassunto dei passaggi che il comando stesso avrebbe eseguito. Le misure correttive che sarebbero state applicate nei passaggi 6 e 7 sono state ignorate.

Per eseguire la riparazione effettiva del filesystem XFS, eseguiremo il comando xfs_repair senza l'opzione -n

$ sudo xfs_repair /dev/sdb1

Il comando rileva gli errori e le incongruenze nel filesystem.

Ed esegue misure di riparazione degli inode e corregge eventuali altri errori. L'output fornito mostra che il comando completa le sue attività con successo.

Per ulteriori opzioni di xfs_repair, visita la pagina man.

$ man xfs_repair

Conclusione

Questa è stata una dimostrazione di come riparare il filesystem xfs danneggiato usando il comando xfs_repair. Ci auguriamo che ora tu sia sicuro di riparare il filesystem xfs danneggiato in Linux.

Leggi anche :Come monitorare il sistema Linux con il comando Sguardi


Linux
  1. Come utilizzare il comando ethtool con esempi

  2. Come controllare i permessi con il comando trova

  3. Controlla e ripara gli errori del filesystem con il comando fsck in Linux

  4. Come configurare il filesystem ZFS su Linux con esempi di comandi zpool

  5. mkfs.xfs:comando non trovato

Come utilizzare il comando Linux rm con esempi

Come eseguire un comando Shell con Python

Come riparare un filesystem danneggiato in Ubuntu

Come controllare e riparare il filesystem XFS in RHEL/Centos

Come creare un filesystem XFS

Come controllare la versione del filesystem XFS?