GNU/Linux >> Linux Esercitazione >  >> Cent OS

Esecuzione di riparazioni su filesystem XFS

Il file system XFS è un file system di journaling ad alte prestazioni. XFS supporta una dimensione massima del file system di 500 TB e una dimensione massima del file di 16 TB. È possibile creare un file system XFS su una normale partizione del disco e su un volume logico. Funziona incredibilmente bene sotto un carico pesante e si adatta a file di grandi dimensioni, ma di conseguenza è anche suscettibile di danni, ed è con questo in mente che ora consideriamo una serie di strumenti che ci consentiranno di risolvere i problemi del server e ripristinare il filesystem.

Sono disponibili utilità XFS aggiuntive per eseguire la manutenzione del file system. Queste utilità includono quanto segue:

  • xfs_fsr :XFS è un file system basato sull'estensione. L'utilità xfs_fsr riorganizza e migliora il layout delle estensioni dei file, migliorando le prestazioni complessive. Esegui questo comando su un file system XFS montato o su singoli file nel file system.
  • xfs_repair :ripara un file system XFS danneggiato o danneggiato. Smonta il file system prima di eseguire questo comando. Se non è possibile riparare il file system, ripristinare i file da un backup con xfsrestore.
  • xfs_db :Esegui il debug di un file system XFS. Questa utility fornisce un set di comandi che ti consente di eseguire scansioni sul file system e di navigare e visualizzare le sue strutture di dati.

Ripara un filesystem XFS usando xfs_repair

La riparazione_xfs l'utilità può essere utilizzata per riparare un file system XFS danneggiato o danneggiato. La sintassi di base utilizzata da xfs_repair è la seguente:

# xfs_repair /mount/point
NOTA :Assicurati di smontare il filesystem XFS prima di eseguire il comando xfs_repair.

Simile all'utilità fsck, l'utilità xfs_repair corregge i filesystem xfs non montati in una serie di fasi. L'output di esempio da una riparazione XFS è mostrato di seguito:

# xfs_repair /dev/mapper/vg_test-lv_test 
Phase 1 - find and verify superblock...
        - reporting progress in intervals of 15 minutes
Phase 2 - using internal log
        - zero log...
        - scan filesystem freespace and inode maps...
        - 12:57:37: scanning filesystem freespace - 291 of 291 allocation groups done
        - found root inode chunk
Phase 3 - for each AG...
        - scan and clear agi unlinked lists...
        - 12:57:37: scanning agi unlinked lists - 291 of 291 allocation groups done
        - process known inodes and perform inode discovery...
        ...
        ...
Metadata corruption detected at xfs_inode block 0x60/0x2000
Metadata corruption detected at xfs_inode block 0x60/0x2000
Metadata corruption detected at xfs_inode block 0x60/0x2000
Metadata corruption detected at xfs_inode block 0x60/0x2000
Metadata corruption detected at xfs_inode block 0x60/0x2000
Metadata corruption detected at xfs_inode block 0x60/0x2000
Metadata corruption detected at xfs_inode block 0x60/0x2000
Metadata corruption detected at xfs_inode block 0x60/0x2000
Metadata corruption detected at xfs_inode block 0x60/0x2000
Metadata corruption detected at xfs_inode block 0x60/0x2000

Phase 4 - check for duplicate blocks...
        - setting up duplicate extent list...
        - 12:57:37: setting up duplicate extent list - 291 of 291 allocation groups done
        - check for inodes claiming duplicate blocks...
Phase 5 - rebuild AG headers and trees...
        - 12:57:37: rebuild AG headers and trees - 291 of 291 allocation groups done
        - reset superblock...
Phase 6 - check inode connectivity...
        - resetting contents of realtime bitmap and summary inodes
        - traversing filesystem ...
        - traversal finished ...
        - moving disconnected inodes to lost+found ...
Phase 7 - verify and correct link counts...
        - 12:57:37: verify and correct link counts - 291 of 291 allocation groups done
done

Se vuoi solo verificare la presenza di problemi con il filesystem, ma non risolverli, esegui xfs_check comando invece del comando xfs_repair.

# xfs_check /dev/mapper/vg_test-lv_test 
Metadata corruption detected at xfs_inode block 0x40/0x8000
Metadata corruption detected at xfs_inode block 0x40/0x8000
Metadata corruption detected at xfs_inode block 0x40/0x8000
Metadata corruption detected at xfs_inode block 0x40/0x8000
Metadata corruption detected at xfs_inode block 0x40/0x8000
Metadata corruption detected at xfs_inode block 0x40/0x8000
Metadata corruption detected at xfs_inode block 0x40/0x8000
Metadata corruption detected at xfs_inode block 0x40/0x8000
Metadata corruption detected at xfs_inode block 0x40/0x8000
Metadata corruption detected at xfs_inode block 0x40/0x8000
bad magic number 0xfe3d for inode 100
bad magic number 0xa756 for inode 101
bad magic number 0xd375 for inode 102
bad magic number 0x88f5 for inode 103
bad magic number 0xc7cd for inode 104
bad magic number 0xc95 for inode 105
bad magic number 0xaeaf for inode 106
bad magic number 0x10c4 for inode 107
bad magic number 0xf137 for inode 108
bad magic number 0x8157 for inode 109
         69 file1

Puoi anche utilizzare "xfs_repair -n ” comando per eseguire un ciclo di prova per xfs_repair. Alcune distribuzioni non includono il comando xfs_check. In tal caso puoi utilizzare questa opzione poiché funzionano allo stesso modo.

# xfs_repair -n /dev/mapper/vg_test-lv_test 
.....
Phase 7 - verify link counts...
        - 13:02:55: verify and correct link counts - 291 of 291 allocation groups done
No modify flag set, skipping filesystem flush and exiting.


Cent OS
  1. Su quale shell sto correndo?

  2. Verifica che uno script sia in esecuzione?

  3. Ottenere "errori di analisi" durante l'esecuzione di "yum repolist"

  4. CronJob non in esecuzione

  5. Esecuzione di notify-send come root

Come controllare lo stato di esecuzione dello stack LAMP

Processi in esecuzione

Il filesystem radice Ext3 diventa di sola lettura con il diario interrotto anche dopo le riparazioni?

Come creare un filesystem XFS

Memoria esaurita eseguendo fsck su filesystem di grandi dimensioni

Impossibile aggiornare NTP