Articles

Come usare’ fsck’ per riparare gli errori del file system in Linux

Posted by admin

I filesystem sono responsabili dell’organizzazione del modo in cui i dati vengono memorizzati e recuperati. In un modo o nell’altro, con il tempo, il filesystem potrebbe essere danneggiato e alcune parti di esso potrebbero non essere accessibili. Se il vostro filesystem sviluppa tale incoerenza si consiglia di verificarne l’integrità.

Questo può essere completato tramite l’utilità di sistema chiamata fsck (controllo di coerenza del file system). Questo controllo può essere eseguito automaticamente durante l’avvio o eseguito manualmente.,

In questo articolo, esamineremo l’utilità fsck e il suo utilizzo per aiutarti a riparare gli errori del disco.

Quando usare fsck in Linux

Ci sono diversi scenari in cui si desidera eseguire fsck. Ecco alcuni esempi:

  • Il sistema non si avvia.
  • File sul sistema diventano corrotti (spesso si può vedere errore di input/output).
  • L’unità collegata (incluse le unità flash / le schede SD) non funziona come previsto.

fsck Opzioni disponibili

Il comando Fsck deve essere eseguito con privilegi di superutente o root. Puoi usarlo con argomenti diversi., Il loro utilizzo dipende dal tuo caso specifico. Sotto vedrai alcune delle opzioni più importanti:

    • -A – Usato per controllare tutti i filesystem. L’elenco è tratto da/etc/fstab.
    • -C – Mostra barra di avanzamento.
    • -l – Blocca il dispositivo per garantire che nessun altro programma tenterà di utilizzare la partizione durante il controllo.
    • -M – Non controllare i filesystem montati.,
    • -N – Mostra solo cosa sarebbe stato fatto – non vengono apportate modifiche effettive.
    • -P – Se si desidera controllare i filesystem in parallelo, incluso root.
    • -R – Non controllare il filesystem di root. Questo è utile solo con ‘-A‘.
    • -r – Fornire statistiche per ogni dispositivo che viene controllato.
    • -T – Non mostra il titolo.
    • -t – Specifica esclusivamente i tipi di filesystem da controllare., I tipi possono essere separati da virgole.
    • -V – Fornire una descrizione di ciò che viene fatto.

Come eseguire fsck per riparare gli errori del file system Linux

Per eseguire fsck, è necessario assicurarsi che la partizione che si sta per controllare non sia montata. Ai fini di questo articolo, userò la mia seconda unità /dev/sdb montata in /mnt.

Ecco cosa succede se provo a eseguire fsck quando la partizione è montata.,

# fsck /dev/sdb
Run fsck on Mounted Partition

To avoid this unmount the partition using.

# umount /dev/sdb

Then fsck can be safely ran with.

# fsck /dev/sdb
Run fsck on Linux Partition

Understanding fsck exit codes

After running fsck, it will return an exit code., Questi codici possono essere visti nel manuale di fsck eseguendo:

# man fsck0 No errors1 Filesystem errors corrected2 System should be rebooted4 Filesystem errors left uncorrected8 Operational error16 Usage or syntax error32 Checking canceled by user request128 Shared-library error 

Ripara gli errori del Filesystem Linux

A volte è possibile trovare più di un errore su un filesystem. In questi casi è possibile che fsck tenti automaticamente di correggere gli errori. Questo può essere fatto con:

# fsck -y /dev/sdb

Il -ybandiera, automaticamente "yes” a qualsiasi richiesta da fsck per correggere un errore.,

Allo stesso modo, è possibile eseguire lo stesso su tutti i filesystem (senza root):

$ fsck -AR -y 

Come eseguire fsck sulla partizione root di Linux

In alcuni casi, potrebbe essere necessario eseguire fsck sulla partizione root del sistema. Poiché non è possibile eseguire fsck mentre la partizione è montata, è possibile provare una di queste opzioni:

  • Forza fsck all’avvio del sistema
  • Esegui fsck in modalità di salvataggio

Esamineremo entrambe le situazioni.,

Forza fsck all’avvio del sistema

Questo è relativamente facile da completare, l’unica cosa che devi fare è creare un file chiamato forcefsck nella partizione root del tuo sistema. Usa il seguente comando:

# touch /forcefsck

Quindi puoi semplicemente forzare o pianificare un riavvio del tuo sistema. Durante il prossimo avvio, verrà eseguito l’fsck. Se i tempi di inattività sono critici, si consiglia di pianificare attentamente questo, poiché se ci sono molti inode utilizzati sul sistema, fsck potrebbe richiedere un po ‘ di tempo in più.,

Dopo l’avvio del sistema, controlla se il file esiste ancora:

# ls /forcefsck

Se lo fa, potresti voler rimuoverlo per evitare fsck ad ogni avvio del sistema.

Esegui fsck in modalità di salvataggio

L’esecuzione di fsck in modalità di salvataggio richiede alcuni passaggi in più. Per prima cosa prepara il tuo sistema per il riavvio. Interrompere qualsiasi servizio critico come MySQL / MariaDB ecc.

# reboot

Durante l’avvio, tenere premuto il tasto shift in modo che venga visualizzato il menu grub. Seleziona le “Opzioni avanzate”.,

Grub Advance Options

Then choose “Recovery mode”.

Select Linux Recovery Mode

In the next menu select “fsck”.

Select fsck Utility

You will be asked if you wish to have your / filesystem remounted. Select "yes”.,

Confirm Root Filesystem

You should see something similar to this.

Running fsck Filesystem Check

You can then resume to normal boot, by selecting “Resume”.

Select Normal Boot
Conclusion

Leave A Comment