Il comando fsck
viene utilizzato per verificare la coerenza e riparare i file system Linux. È utile riparare i file system danneggiati quando il sistema non si avvia o non è possibile montare una partizione. Discuteremo del comando fsck in questo articolo.
Assicurati di aver effettuato l’accesso con root o utente con privilegi sudo.
Come usare fsck #
Di seguito è riportata la sintassi di base del comando fsck:
fsck
Se si esegue il comando fsck senza alcuna opzione, controllerà i dispositivi elencati nel file fstab
.
Si consiglia di smontare sempre le partizioni montate prima di tentare di controllare o riparare i file system. Potrebbe danneggiare i file system montati.
Il comando fsck
accetta diverse opzioni a seconda del tipo di file system. Ad esempio, per visualizzare le opzioni disponibili per fsck.ext4
, digitare:
man fsck.ext4
Ripara il file system danneggiato#
È un uso comune del comando fsck
per riparare un file system non root danneggiato ext3
o ext4
.
1. Trova il nome del dispositivo utilizzando fdisk
, df
o qualsiasi altro strumento da trovare.
2. Smontare il dispositivo:
sudo umount /dev/sdc1
3. Eseguire fsck
per riparare il file system:
sudo fsck -p /dev/sdc1
Qui, l’opzione -p
viene utilizzata per riparare automaticamente i problemi in modo sicuro senza l’intervento dell’utente.
4. Quando il file system viene riparato, montare nuovamente la partizione:
sudo mount /dev/sdc1
Ripara il file system Root#
Nel sistema corrente in esecuzione fsck
il comando non può controllare il file system root. È possibile impostare fsck
per l’esecuzione all’avvio o utilizzare un disco live.
È anche possibile eseguire fsck
comando in modalità di ripristino:
- Vai al menu di avvio e scegli Opzioni avanzate
- Seleziona la modalità di ripristino e quindi “fsck”.
- Scegliere “Sì” quando viene richiesto di rimontare il file system root.
- Una volta fatto, riprendere il normale avvio.
Per eseguire fsck
da una distribuzione live:
1. Avvia la distribuzione live.
2. Utilizzare fdisk
o parted
per trovare il nome della partizione di root.
3. Apri il terminale ed esegui:
sudo fsck -p /dev/sda1
4. Una volta fatto, riavviare la distribuzione live e avviare il sistema.
Controlla i file System all’avvio#
Generalmente, tutte le distribuzioni Linux eseguono fsck
all’avvio, se un file system è contrassegnato come sporco.
Utilizzare lo strumento tune2fs
per ottenere il numero di mount corrente, il numero di frequenza di controllo, l’intervallo di controllo e l’ora dell’ultimo controllo per una partizione specifica:
sudo tune2fs -l /dev/sdc1 | grep -i 'last checked|mount count'
Mount count: 392Maximum mount count: -1Last checked: Tue Oct 01 10:11:08 2019Check interval: 0 (<none>)
In Maximum mount count
mostra il numero di mount dopo i quali verrà controllato il filesystem. Se il valore è 0
o -1
, significa che fsck
non verrà mai eseguito.
Check interval
è il tempo massimo tra due controlli del filesystem.
Ad esempio, si desidera eseguire fsck
dopo ogni avvio o supporto 15
, digitare:
sudo tune2fs -c 15 /dev/sdc1
È inoltre possibile impostare il tempo massimo tra due controlli. Ad esempio, per impostare due mesi di esecuzione:
sudo tune2fs -i 2m /dev/sdc1
Per forzare fsck
a funzionare all’avvio sulle distribuzioni SystemD passare i seguenti parametri di avvio del kernel:
fsck.mode=forcefsck.repair=yes
Conclusione#
Il fsck
è uno strumento da riga di comando per il controllo e la riparazione di file system Linux. Visita la pagina man di fsck o digita man fsck
nel tuo terminale, per saperne di più sul comando fsck
.