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/pointNOTA :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.