Qual è la differenza tra fsck ed e2fsck?


30

Qual è la differenza tra gli strumenti di controllo degli errori del disco linux fsck ed e2fsck?

Risposte:


29

fsck è solo il nome originale. Quando uscivano con nuovi file system avrebbero avuto bisogno di uno strumento specifico per ognuno, efsck per ext, e2fsck per ext2, dosfsck, fsckvfat. Così hanno reso fsck il front-end che chiama semplicemente quello che è lo strumento appropriato.


Hmm, quindi apparentemente puoi usare il "front-end" fsck per alcuni compiti comuni, ma non per tutto? Ad esempio, l'opzione -c ( superuser.com/questions/20010/… ) è menzionata nella pagina man di e2fsck ma in quella di fsck.
Jonik,

Esiste un GPT fsck?
Jonathan,

@Jonathan fsck controlla i filesystem, mentre GPT è la stessa tabella delle partizioni. Probabilmente c'è uno strumento che può controllarli, ma non riesco a pensarne uno a parte l'utilità del disco del Mac (o il diskutil della riga di comando). Il gptcomando ha un'opzione "Ripristina dalla tabella di backup", almeno su Mac.
SilverWolf - Ripristina Monica il

15

fsck è un wrapper per la famiglia di strumenti fsck. * specifica per il filesystem . Possono essere usati in modo intercambiabile con un avvertimento (dalla manpage fsck):

Le opzioni che non sono comprese da fsck vengono passate al controllo specifico del filesystem. Questi argomenti non devono accettare argomenti, in quanto non esiste alcun modo per fsck di indovinare correttamente quali argomenti prendono le opzioni e quali no.

Le opzioni e gli argomenti che seguono il - sono trattati come opzioni specifiche del file system da passare al controllo specifico del file system.

Nota che fsck non è progettato per passare opzioni arbitrariamente complicate ai controllori specifici del filesystem. Se stai facendo qualcosa di complicato, esegui direttamente il controllo specifico del filesystem. Se passi a fsck alcune opzioni e argomenti orribilmente complicati e non fa quello che ti aspetti, non preoccuparti di segnalarlo come un bug. Stai quasi sicuramente facendo qualcosa che non dovresti fare con fsck.

Tuttavia, fsck gestirà la maggior parte delle normali operazioni su un file system.


5

Sul mio sistema ho:

  • fsck
  • fsck.ext2
  • fsck.ext3
  • fsck.ext4
  • e2fsck
  • ... (più fsck.*strumenti per altri filesystem non ext)

Ora nessuno di questi sono collegamenti simbolici ma e2fscke fsck.ext2/3/4tutti gli strumenti condividono lo stesso inode, quindi in realtà sono lo stesso file. (È possibile che questo binario interroghi il proprio nome quando viene eseguito e si comporti in modo diverso per il nome con cui viene invocato, ma dubito che sia così.)

Quindi ora siamo limitati a due soli strumenti:

  • fsck
  • e2fsck

E, come altri hanno già detto, fsckè semplicemente un front-end che chiama lo strumento appropriato per il filesystem in questione, che in questo caso è e2fsckper un filesystem della famiglia ext.

Presumo che la ragione per avere i vari fsck.ext2/3/4file sia tale che 1. è facile scrivere script in grado di gestire genericamente tutti i tipi di filesystem (possono dedurre banalmente il nome dello strumento fsck dal tipo di filesystem) e 2. per flessibilità, in modo che sia banale dividere e2fsck in due o più strumenti indipendenti, se necessario in futuro.


Grazie per la spiegazione più lunga, perché dopo aver letto la risposta di @hyperslug stavo già avvertendo un infarto :-) Ho un filesystem ext3 e ho eseguito e2fsck.
Greenoldman,

Ora nessuno di questi sono collegamenti simbolici ma e2fsck e gli strumenti fsck.ext2 / 3/4 condividono tutti lo stesso inode, quindi in realtà sono lo stesso file. (È possibile che questo binario interroghi il proprio nome quando viene eseguito e si comporti in modo diverso per il nome con cui viene invocato, ma dubito che sia così.) - Perché no - questo è un modo particolarmente * nix-ish di fare le cose e potrebbe davvero essere il caso!
SlySven

Quei nomi alternativi sono in realtà esempi di meno maculato difficile collegamento (la maggior parte delle persone hanno familiarità con simbolici link, ma il loro fratello più difficile ha anche esso utilizza anche se limitato al medesimo dispositivo .)
SlySven
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.