fsck

Fsck

Descrizione dell'immagine Fsck output.jpg. Informazione
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.

Presentazione generale

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 .

Sono supportati più file system

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:

Le 5-6 fasi di fsck per file system basati su i-node

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

A questo punto, il messaggio CLEAR (o REMOVE ) indica di confermare l'eliminazione di un file. Di solito si tratta di un file temporaneo, la cui cancellazione non ha alcun effetto (a meno che non siate sfortunati ...).

Fstab di file e fsck di comando

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 .

Comandi Unix relativi a fsck

controllo della sincronizzazione

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.

e2image, dumpe2fs e debugfs

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:

Ordina fsdb per gli esperti

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.

Tune2fs e il lancio automatico di fsck

Il comando tune2fs viene utilizzato per configurare l'esecuzione di un fsck automatico su partizioni ext2 o ext3 .

Esempio di modifica dei parametri

tune2fs -i 1w /dev/hda7 tune2fs -c 30 /dev/hda7

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 2007

Comando Wipefs

Se 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.

L' fscksulle diverse versioni di Unix / Linux

Il fsckcon il nuovo arrivato

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 .

Il fscke il vecchio pacchetto sysvinit

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.

Il fscksu Red Hat e CentOS

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 fscksu FreeBSD

Il file system UFS di FreeBSD ha un task fsck in esecuzione in background, quindi non è necessario attendere che fsck acceda al disco.

Confronto con Windows

Confronto con Windows dalla versione NT alla versione 2003

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

Confronto con le versioni di Windows dell'anno 2000 o precedenti

Nelle versioni precedenti di Windows ( 95 , 98 e Millennium ), le utilità chkdsk e scandisk erano equivalenti a fsck di Unix.

Vedere :

Vedi anche

Articoli Correlati

Riferimenti esterni

Appunti

  1. mountall.conf
  2. (it) Rendi fsck non interattivo all'avvio