fsck (controllo del file system) è un'utilità della riga di comando che consente di eseguire controlli di coerenza e riparazioni interattive su uno o più file system Linux. Utilizza programmi specifici per il tipo di file system che controlla.
Puoi usare fsck comando per riparare i file system danneggiati in situazioni in cui il sistema non si avvia o non è possibile montare una partizione.
In questo articolo parleremo di fsck comando.
Come usare fsck #
Il fsck comando assume la seguente forma generale:
fsck [OPTIONS] [FILESYSTEM]
Solo root o utenti con sudo i privilegi possono cancellare il buffer.
Quando nessun FILESYSTEM viene fornito come argomento, fsck controlla i dispositivi elencati in fstab file.
Non eseguire mai fsck su partizioni montate in quanto potrebbe danneggiare il file system. Prima di tentare di controllare o riparare i file system, sempre unmount prima.
Il fsck command è un wrapper per i vari checker del filesystem Linux (fsck.* ) e accetta opzioni diverse a seconda del tipo di file system.
Consulta le pagine di manuale per ulteriori informazioni su un correttore specifico. Ad esempio, per visualizzare le opzioni disponibili per fsck.ext4 , digita:
man fsck.ext4 Ripara file system danneggiato #
Il caso d'uso più semplice di fsck il comando serve per riparare un file system ext3 o ext4 danneggiato non root.
-
Se non conosci il nome del dispositivo, usa
fdisk,dfo qualsiasi altro strumento per trovarlo. -
Smonta il dispositivo:
sudo umount /dev/sdc1 -
Esegui
fsckper riparare il file system:sudo fsck -p /dev/sdc1Il
-pl'opzione dice afsckper riparare automaticamente eventuali problemi che possono essere risolti in sicurezza senza l'intervento dell'utente. -
Una volta che il file system è stato riparato, monta la partizione:
sudo mount /dev/sdc1
Ripara file system radice #
fsck non è possibile controllare il file system di root su una macchina in esecuzione perché non può essere smontato.
Se vuoi controllare o riparare il file system di root, hai diverse opzioni a tua disposizione. Puoi impostare fsck per eseguire all'avvio, avviare il sistema in modalità di ripristino o utilizzare un CD live.
Per eseguire fsck in modalità di ripristino:
- Entra nel menu di avvio e scegli Opzioni avanzate
- Seleziona la modalità di ripristino e poi “fsck”.
- Quando viene richiesto di rimontare il file system di root, scegliere "Sì".
- Al termine, riprendi il normale avvio.
Per eseguire fsck da una distribuzione live:
-
Avvia la distribuzione live.
-
Usa
fdiskopartedper trovare il nome della partizione radice. -
Apri il terminale ed esegui:
sudo fsck -p /dev/sda1 -
Una volta terminato, riavvia la distribuzione live e avvia il tuo sistema.
Controlla i file system all'avvio #
Sulla maggior parte delle distribuzioni Linux, fsck viene eseguito all'avvio se un file system è contrassegnato come sporco o dopo un certo numero di avviamenti o tempo.
Per vedere il numero di mount corrente, controllare il numero di frequenza, l'intervallo di controllo e l'ora dell'ultimo controllo per una partizione specifica, usa tune2fs strumento:
sudo tune2fs -l /dev/sdc1 | grep -i 'last checked\|mount count' Mount count: 292
Maximum mount count: -1
Last checked: Tue Jul 24 11:10:07 2018
Check interval: 0 (<none>)
- "Numero massimo di mount" è il numero di mount dopo il quale il filesystem verrà controllato. Il valore di
0o-1significa chefscknon verrà mai eseguito. - "Intervallo di controllo" è il tempo massimo tra due controlli del filesystem.
Se, ad esempio, vuoi eseguire fsck dopo ogni 25 stivali (montaggi), digitare:
sudo tune2fs -c 25 /dev/sdc1 Puoi anche impostare il tempo massimo tra due controlli. Ad esempio, per impostarlo su un mese dovresti eseguire:
sudo tune2fs -i 1m /dev/sdc1
Per forzare fsck per essere eseguito all'avvio su distribuzioni SystemD, passare i seguenti parametri di avvio del kernel:
fsck.mode=force
fsck.repair=yes
Sulle vecchie distribuzioni fsck verrà eseguito all'avvio se il /forcefsck il file è presente:
sudo touch /forcefsck fstab Opzioni #
fstab è un file di configurazione che dice al sistema come e dove montare le partizioni.
Il /etc/fstab contiene un elenco di voci nella forma seguente:
# [File System] [Mount Point] [File System Type] [Options] [Dump] [PASS]
/dev/sda1 / ext4 defaults 0 1
/dev/sda2 /home ext4 defaults 0 2
server:/dir /media/nfs nfs defaults 0 0
L'ultima, sesta colonna ([PASS] ) è l'opzione che controlla l'ordine in cui vengono eseguiti i controlli del file system al momento del riavvio.
0- Non controllare.1- I file system da controllare per primi e uno alla volta.2- Tutti gli altri file system che vengono controllati successivamente ed eventualmente in parallelo.
Il file system radice dovrebbe avere un valore di 1 e tutti gli altri file system che vuoi controllare dovrebbero avere un valore di 2 .
Conclusione #
fsck è uno strumento da riga di comando per il controllo e la riparazione facoltativa dei file system Linux.
Per saperne di più su fsck comando, visita la pagina man di fsck o digita man fsck nel tuo terminale.
Se hai domande o feedback, sentiti libero di lasciare un commento.