fsck est juste le nom d'origine. Lorsqu'ils sortiraient de nouveaux systèmes de fichiers, ils auraient besoin d'un outil spécifique pour chacun, efsck pour ext, e2fsck pour ext2, dosfsck, fsckvfat. Ils ont donc fait de fsck le frontal qui appelle simplement l'outil approprié.
fsck est un wrapper pour le fsck.* spécifique au système de fichiers famille d'outils. Ils peuvent être utilisés de manière interchangeable avec une mise en garde (de la page de manuel fsck) :
Les options qui ne sont pas comprises par fsck sont transmises au vérificateur spécifique au système de fichiers. Ces arguments ne doivent pas prendre d'arguments, car fsck n'a aucun moyen de deviner correctement quels arguments prennent des options et lesquels n'en prennent pas.
Les options et les arguments qui suivent -- sont traités comme des options spécifiques au système de fichiers à transmettre au vérificateur spécifique au système de fichiers.
Veuillez noter que fsck n'est pas conçu pour transmettre arbitrairement des options compliquées aux vérificateurs spécifiques au système de fichiers. Si vous faites quelque chose de compliqué, veuillez simplement exécuter directement le vérificateur spécifique au système de fichiers. Si vous passez à fsck une option et des arguments horriblement compliqués, et qu'il ne fait pas ce que vous attendez, ne vous embêtez pas à le signaler comme un bogue. Vous faites presque certainement quelque chose que vous ne devriez pas faire avec fsck.
Cependant, fsck gérera la plupart des opérations normales sur un système de fichiers.
Sur mon système, j'ai :
fsck
fsck.ext2
fsck.ext3
fsck.ext4
e2fsck
- ... (plus
fsck.*
outils pour d'autres systèmes de fichiers non-ext)
Maintenant, aucun de ces liens n'est symbolique, mais e2fsck
et le fsck.ext2/3/4
les outils partagent tous le même inode et sont donc en fait le même fichier. (Il est possible que ce binaire interroge son propre nom lorsqu'il est exécuté et se comporte différemment pour le nom avec lequel il est invoqué, mais je doute que ce soit le cas.)
Nous n'avons donc plus que deux outils :
fsck
e2fsck
Et, comme d'autres l'ont dit, fsck
est simplement un frontal qui appelle l'outil approprié pour le système de fichiers en question, qui dans ce cas est e2fsck
pour un système de fichiers de la famille étendue.
Je suppose que la raison d'avoir les différents fsck.ext2/3/4
files est tel que 1. il est facile d'écrire des scripts qui peuvent gérer tous les types de systèmes de fichiers de manière générique (ils peuvent déduire trivialement le nom de l'outil fsck du type de système de fichiers) et 2. pour la flexibilité, de sorte qu'il est trivial de diviser le e2fsck en deux ou plus des outils indépendants si nécessaire à l'avenir.