GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cuál es la diferencia entre fsck y e2fsck?

fsck es solo el nombre original. Cuando sacaran nuevos sistemas de archivos necesitarían una herramienta específica para cada uno, efsck para ext, e2fsck para ext2, dosfsck, fsckvfat. Así que hicieron fsck el front-end que solo llama a la herramienta adecuada.


fsck es un contenedor para el fsck.* específico del sistema de archivos familia de herramientas. Se pueden usar indistintamente con una advertencia (de la página de manual de fsck):

Las opciones que fsck no comprende se pasan al verificador específico del sistema de archivos. Estos argumentos no deben tomar argumentos, ya que no hay forma de que fsck pueda adivinar correctamente qué argumentos toman opciones y cuáles no.

Las opciones y los argumentos que siguen al -- se tratan como opciones específicas del sistema de archivos que se pasan al verificador específico del sistema de archivos.

Tenga en cuenta que fsck no está diseñado para pasar opciones arbitrariamente complicadas a verificadores específicos del sistema de archivos. Si está haciendo algo complicado, simplemente ejecute el comprobador específico del sistema de archivos directamente. Si le pasas a fsck alguna opción y argumentos terriblemente complicados, y no hace lo que esperas, no te molestes en reportarlo como un error. Es casi seguro que estás haciendo algo que no deberías estar haciendo con fsck.

Sin embargo, fsck manejará la mayoría de las operaciones normales en un sistema de archivos.


En mi sistema tengo:

  • fsck
  • fsck.ext2
  • fsck.ext3
  • fsck.ext4
  • e2fsck
  • ... (más fsck.* herramientas para otros sistemas de archivos no ext.)

Ahora ninguno de estos son enlaces simbólicos pero e2fsck y el fsck.ext2/3/4 Todas las herramientas comparten el mismo inodo, por lo que en realidad son el mismo archivo. (Es posible que este binario interrogue su propio nombre cuando se ejecuta y se comporte de manera diferente para el nombre con el que se invoca, pero dudo que este sea el caso).

Así que ahora solo nos quedan dos herramientas:

  • fsck
  • e2fsck

Y, como han dicho otros, fsck es simplemente una interfaz que llama a la herramienta adecuada para el sistema de archivos en cuestión, que en este caso es e2fsck para un sistema de archivos de la familia ext.

Supongo que la razón por la que hay varios fsck.ext2/3/4 archivos es para que 1. sea fácil escribir secuencias de comandos que puedan manejar todos los tipos de sistemas de archivos de forma genérica (pueden deducir el nombre de la herramienta fsck de forma trivial del tipo de sistema de archivos) y 2. por flexibilidad, de modo que sea trivial dividir el e2fsck en dos o más herramientas independientes si es necesario en el futuro.


Linux
  1. ¿La diferencia entre [[ $a ==Z* ]] y [ $a ==Z* ]?

  2. ¿Cuál es la diferencia entre Git Switch y Checkout?

  3. ¿Cuál es la diferencia entre Redhat y centOS?

  4. ¿Cuál es la diferencia entre mutex y sección crítica?

  5. ¿Cuál es la diferencia entre los hilos NPTL y POSIX?

¿Cuál es la diferencia entre InnoDB y MyISAM?

¿Cuál es la diferencia entre Linux y Unix?

¿Cuál es la diferencia entre Shell de inicio de sesión y sin inicio de sesión?

¿Cuál es la diferencia entre el comando apt y apt-get?

¿Qué es un Hipervisor? ¿Cuál es la diferencia entre el tipo 1 y 2?

¿Cuál es la diferencia entre curl y Wget?