genere | Utilità UNIX ( d ) |
---|
fsck ( File System Check o File System Consistency Check ) è uno strumento su UNIX / Linux per verificare la coerenza di un file system . In caso di incongruenze, è in grado di correggerle nella maggior parte dei casi.
In generale, fsck viene eseguito automaticamente durante la fase di avvio del computer se rileva che si è verificato un arresto anomalo.
A seconda delle impostazioni, le correzioni verranno effettuate senza che l'utente debba preoccuparsene o, all'estremo opposto, fsck può anche offrire all'utente la possibilità di effettuare delle scelte. In quest'ultimo caso, richiede all'utente di avere una conoscenza molto specifica del filesystem utilizzato ( ext2 o altro).
fsck può anche essere avviato manualmente dall'amministratore in caso di dubbi sul file system.
I file system journal sono molto più rari usando fsck .
fsck solitamente chiama un programma appropriato per il tipo di filesystem coinvolto (il nome predefinito è fsck.xxx, dove xxx è il tipo di filesystem).
Per i file system basati su i-node , i più popolari sono:
D'altra parte, per XFS , in pratica, non c'è fsck. In particolare, il comando fsck.xfs visualizza solo un messaggio per chiamare xfs_repair.
Per la compatibilità con i file system Minix :
Per la compatibilità con i file system Apple :
Sono supportati anche i file system di Microsoft:
Per i file system di rete, ci sono tra gli altri:
Per i file system compressi , ci sono tra gli altri:
Quanto segue è per i file system basati su inode: UFS (Unix File System) , linux ext2 , ecc.
Alla fine del fsck , si consiglia di verificare l'eventuale presenza di file nella directory / lost + found .
Le diverse fasi di fsck sono le seguenti
L'opzione -A di fsck consente di utilizzare la tabella del filesystem ( fstab ) per controllare diversi filesystem montati.
L'ordine di controllo è impostato dalla sesta colonna del file fstab .
Il comando di sincronizzazione viene utilizzato per eseguire tutte le scritture su disco in sospeso. Se si teme un improvviso spegnimento elettrico, è prudente eseguire questo comando (per evitare di dover riparare il file system con fsck ).
Su alcune versioni molto vecchie di Unix, era necessario eseguire manualmente un comando di sincronizzazione prima di riavviare il computer.
Nel raro caso in cui fsck non riesca a riparare un file system ext2 o ext3 , un esperto può utilizzare le seguenti utilità per tentare una riparazione:
Su alcune versioni di Unix / linux, il comando fsdb ( fs debug ) è un debugger del filesystem, è complementare a fsck , ma è riservato a un piccolo numero di esperti.
Il comando tune2fs viene utilizzato per configurare l'esecuzione di un fsck automatico su partizioni ext2 o ext3 .
Esempio di modifica dei parametri
Esempio di visualizzazione di questi parametri
tune2fs -l /dev/hda7 Il risultato di questo comando è ampio (più di 30 righe), ecco quelli che riguardano il lancio automatico di fsck Last mount time: Sat Jan 20 15:44:28 2007 Last write time: Sat Jan 20 18:13:19 2007 Mount count: 13 Maximum mount count: 30 Last checked: Wed Jan 17 22:25:21 2007 Check interval: 604800 (1 week) Next check after: Wed Jan 24 22:25:21 2007Se la firma nella tabella delle partizioni non ha il tipo corretto di tipo di file system, può essere cancellata con il comando wipefs. Quindi, dovrai chiamare lo specifico fsck corrispondente al giusto tipo di filesystem.
Per Linux che utilizza upstart , la chiamata a fscknella fase di avvio viene configurata tramite il file /etc/init/mountall.conf. C'è anche un file /etc/default/rcScon una direttiva FSCKFIX(devi impostare questa direttiva su "sì" per un utente inesperto, e lasciarla su "no" altrimenti).
Nel maggio 2013, questo riguarda, tra le altre cose, l'ultima versione della distribuzione Ubuntu .
Su un Linux che utilizza il pacchetto sysvinit (il nome è un riferimento a UNIX System V , la chiamata a fscknella fase di avvio è configurata tramite i file checkroot.fse checkfs.sh.
Questo è stato il caso delle versioni Sarge e Lenny della distribuzione Debian e delle versioni precedenti di Ubuntu.
Nella versione Lenny della distribuzione Debian, fsckviene avviato automaticamente se non è stato richiamato negli ultimi 35 avviamenti.
Nella distribuzione Red Hat e nella sua derivata CentOS , la chiamata a fscknella fase di avvio viene configurata tramite la shell /etc/rc.d/rc.sysinit.
Il file system UFS di FreeBSD ha un task fsck in esecuzione in background, quindi non è necessario attendere che fsck acceda al disco.
Il programma simile a fsck su Windows è autochk.exe .
Su Windows , il gestore della sessione (smss.exe) chiama autochk.exe .
Autochk.exe a sua volta chiama chkdsk.exe per NTFS (questo è l'equivalente di e2fsck per ext2 ). NTFS si basa su una struttura di allocazione dei file basata su bitmap / estensioni invece che su i-node.
chkdsk.exe controlla e corregge il file system NTFS in 4 passaggi:
Visualizza (it) 4 passaggi CHKDSK sul sito Microsoft.com
Nelle versioni precedenti di Windows ( 95 , 98 e Millennium ), le utilità chkdsk e scandisk erano equivalenti a fsck di Unix.
Vedere :