La respuesta a su pregunta se encuentra en el e2fsck/problems.c
archivo del código fuente de e2fsprogs . Buscar la PR_PREEN_OK
bandera debería ayudarlo a comenzar.
Como el manejo completo de errores es un poco más complicado, debido a la multitud de diferentes condiciones de error que pueden ocurrir, se le recomienda que observe más de cerca el código si le preocupa un caso específico. Sin embargo, las listas a continuación se extrajeron de los comentarios a las condiciones de error y deberían darle una visión general aproximada sobre los efectos del modo preen.
Los siguientes errores / advertencias se manejan actualmente automáticamente cuando -p
se especifica el indicador:
- Reubicar pista
- El inodo del diario no es válido
- El superbloque de diario está corrupto
- El indicador de superbloque has_journal está claro pero tiene un diario
- El indicador Superblock needs_recovery está establecido pero no está presente el diario
- La revisión del sistema de archivos es 0, pero las banderas de características están configuradas
- Sugerencia de superbloque para superbloque externo
- Descriptor de grupo N marcado sin inicializar sin conjunto de características.
- mapa de bits del bloque del grupo N no inicializado pero mapa de bits de inodo en uso.
- El descriptor de grupo N tiene un recuento de inodes no utilizado no válido.
- Mapa de bits del último bloque de grupo sin inicializar.
- Se establece el indicador test_fs (y ext4 está disponible)
- El último tiempo de montaje es en el futuro (fraudulento)
- El último tiempo de escritura es en el futuro (falsificado)
- La suma de comprobación del grupo de bloque (pregunta de bloqueo) no es válida.
- El directorio raíz tiene establecido dtime
- El inodo reservado tiene mal modo
- El inodo eliminado tiene cero dtime
- Inode en uso, pero dtime establecido
- Directorio de longitud cero
- Inode tiene i_size incorrecto
- Inode tiene i_blocks incorrectos
- Superbloque malo en grupo
- Descriptores de grupo de bloque incorrecto en grupo
- Bloque reclamado sin motivo
- Error al asignar bloques para reubicar metadatos
- Error al asignar el búfer de bloque durante el proceso de reubicación
- Reubicar la información del grupo de metadatos de X a Y
- Reubicar la información del grupo de metadatos a X
- Error de lectura de bloque durante el proceso de reubicación
- Error de escritura de bloque durante el proceso de reubicación
- Indicador inmutable establecido en un dispositivo o inodo de socket
- Tamaño distinto de cero para dispositivo, quince o zócalo
- La revisión del sistema de archivos es 0, pero las banderas de características están configuradas
- El inodo del diario no está en uso, pero contiene datos
- El diario tiene mal modo
- Indicador INDEX_FL establecido en un sistema de archivos no HTREE
- Indicador INDEX_FL establecido en un no directorio
- Nodo raíz no válido en el directorio HTREE
- Versión hash no compatible en el directorio HTREE
- Indicador incompatible en el nodo raíz HTREE
- HTREE demasiado profundo
- inode inválido-> i_extra_isize
- entrada de ea no válida-> e_name_len
- entrada de ea no válida-> e_value_offs
- entrada de ea no válida-> e_value_block
- entrada ea inválida-> e_value_size
- entrada ea inválida-> e_hash
- falta inodo EXTENTS_FL, pero es un inodo de extensión
- Inode no debe tener EOFBLOCKS_FL establecido
- La entrada del directorio tiene un inodo eliminado o no utilizado
- Tipo de archivo de directorio no establecido
- Tipo de archivo de directorio establecido en el sistema de archivos
- Nodo raíz HTREE no válido
- Límite HTREE no válido
- Recuento de HTREE no válido
- El nodo interior HTREE tiene hashes fuera de orden en la tabla
- Inode encontrado en el grupo donde se establece _INODE_UNINIT
- Inodo encontrado en el área de inodes del grupo no utilizado
- i_blocks_hi debería ser cero
- / perdido + encontrado no encontrado
- Inodo de longitud cero no conectado
- Inode ref cuenta mal
- El relleno al final del mapa de bits de inodo no está configurado.
- El relleno al final del mapa de bits del bloque no está configurado.
- Bloquear encabezado de diferencias de mapa de bits
- Bloque no utilizado, pero marcado en mapa de bits
- Bloque usado, pero no marcado usado en mapa de bits
- Bloquear diferencias de mapa de bits final
- Cabecera de diferencias de mapa de bits de Inode
- Inode no utilizado, pero marcado en mapa de bits
- Inode usado, pero no marcado usado en bitmap
- Inode diferencias de mapa de bits final
- Los inodos libres cuentan para el grupo incorrecto
- Los directorios cuentan para el grupo incorrecto
- Los inodos libres cuentan mal
- Los bloques gratuitos cuentan para el grupo incorrecto
- Los bloques libres cuentan mal
- Rango de bloque no utilizado, pero marcado en mapa de bits
- Rango de bloque utilizado, pero no marcado como utilizado en mapa de bits
- Rango de inodo no utilizado, pero marcado en mapa de bits
- Rango de inodo usado, pero no marcado usado en mapa de bits
- Grupo N bloque (s) en uso pero el grupo está marcado BLOCK_UNINIT
- Grupo N inodo (s) en uso pero el grupo está marcado INODE_UNINIT
- Recree el diario si se establece el indicador E2F_FLAG_JOURNAL_INODE
Las siguientes condiciones de error provocan el aborto del proceso fsck no interactivo, incluso si -p
se establece el indicador:
- Bloquear mapa de bits no en grupo
- El mapa de bits de Inode no está en el grupo
- La tabla de inodo no está en el grupo
- El tamaño del sistema de archivos es incorrecto
- El recuento de inodos en el superbloque es incorrecto
- Hurd no admite la función de tipo de archivo
- El diario tiene un tipo de superbloque desconocido
- Pregunte si deberíamos borrar el diario
- El superbloque de diario tiene un conjunto de indicadores de características de solo lectura desconocido
- El superbloque de diario tiene un conjunto de indicadores de características incompatibles desconocidos
- El diario tiene un número de versión no compatible
- Pregunte si deberíamos ejecutar el diario de todos modos
- Bloques reservados sin resize_inode
- Resize_inode no está habilitado, pero cambiar el tamaño del inodo no es cero
- Cambiar tamaño de inodo no válido
- El último tiempo de montaje es en el futuro
- El último tiempo de escritura es en el futuro
- la suma de comprobación del descriptor de grupo N no es válida.
- El directorio raíz no es un inodo
- El mapa de bits de bloque entra en conflicto con algún otro bloque fs
- Inode bitmap entra en conflicto con algún otro bloque fs
- La tabla de Inode entra en conflicto con algún otro bloque fs
- El mapa de bits del bloque está en un bloque incorrecto
- Inode bitmap está en un bloque defectuoso
- Número de bloque ilegal en inodo
- El número de bloque se superpone a los metadatos de fs
- Inode tiene bloqueos ilegales (pregunta de cierre)
- Demasiados bloques malos en inodo
- Número de bloque ilegal en inodo de bloque incorrecto
- El inodo de bloque incorrecto tiene bloques ilegales (pregunta de bloqueo)
- Bloque incorrecto utilizado como bloque indirecto bloque incorrecto
- La inconsistencia no se puede solucionar
- Mensaje de bloqueo primario incorrecto
- Suprimir mensajes de solicitud
- Indicador Imagic establecido en un inodo cuando el sistema de archivos no lo admite
- Indicador de compresión establecido en un inodo cuando el sistema de archivos no lo admite
- Tratar con inodos que eran parte de una lista enlazada huérfana
- Tratar con inodos que formaban parte de una lista enlazada huérfana corrupta (pregunta de cierre)
- Error al leer el bloque de atributos extendidos
- Bloque de atributo extendido no válido
- Recuento de referencia de atributo extendido incorrecto
- Múltiples bloques EA no compatibles
- Error de colisión de asignación de EA
- Nombre de atributo extendido incorrecto
- Valor de atributo extendido incorrecto
- Inode demasiado grande (pregunta de cierre)
- Directorio demasiado grande
- Archivo normal demasiado grande
- Enlace simbólico demasiado grande
- El bloque defectuoso tiene un bloqueo indirecto que entra en conflicto con el bloqueo del sistema de archivos
- Cambiar el tamaño del inodo falló
- el inodo parece ser un directorio
- Error al leer el árbol de extensión
- Error al iterar extensiones
- Bloque inicial malo en extensión
- La extensión termina más allá del sistema de archivos
- Indicador EXTENTS_FL establecido en un sistema de archivos sin extensión
- inodo tiene extensiones, falta superbloque INCOMPAT_EXTENTS
- El enlace simbólico rápido tiene EXTENTS_FL establecido
- Las extensiones están fuera de servicio.
- Inode tiene un nodo de extensión no válido
- ¿Clonar bloques duplicados / malos?
- Número de inodo incorrecto para '.'
- La entrada del directorio tiene un número de inodo incorrecto
- La entrada de dirección es un enlace a '.'
- Los puntos de entrada del directorio al inodo ahora se encuentran en un bloque defectuoso
- La entrada del directorio contiene un enlace a un directorio
- La entrada del directorio contiene un enlace a la dirección raíz
- La entrada del directorio tiene caracteres ilegales en su nombre
- Desaparecido '.' en el directorio inode
- Falta '..' en el directorio inode
- La primera entrada en el directorio inode no contiene '.'
- La segunda entrada en el directorio inode no contiene '..'
- i_faddr debería ser cero
- i_file_acl debería ser cero
- i_dir_acl debería ser cero
- i_frag debería ser cero
- i_fsize debería ser cero
- inodo tiene mal modo
- directorio dañado
- nombre de archivo demasiado largo
- El inodo del directorio tiene un bloque faltante (agujero)
- '.' no es NULL terminado
- '..' no es NULL terminado
- Dispositivo de caracteres ilegales inode
- Dispositivo de bloqueo ilegal inodo
- Duplicar '.' entrada
- Entrada duplicada
- Rec_len final está mal
- Error al leer el bloque de directorio
- Error al escribir el bloque de directorio
- Entrada de directorio para '.' es grande. ¿División?
- Inodo FIFO ilegal
- Enchufe ilegal inode
- Tipo de archivo de directorio incorrecto
- El nombre de archivo del directorio es nulo
- Enlace simbólico no válido
- i_file_acl (bloque de atributo extendido) es malo
- El sistema de archivos contiene archivos grandes, pero no tiene ese indicador en SB
- Borrar directorio HTREE no válido
- Bloque defectuoso en el nodo interior de htree
- Se encontró una entrada de directorio duplicada
- Nombre de archivo no exclusivo encontrado
- i_blocks_hi debería ser cero
- Bloque inesperado de HTREE
- Inodo de raíz no asignado
- No hay espacio en perdido + encontrado
- Inodo de directorio no conectado
- .. la entrada es incorrecta
- Perdido + encontrado no un directorio
- Inodo desacoplado
- Superbloque corrupto
- Fragmentos no admitidos
- Error al determinar el tamaño del dispositivo físico del sistema de archivos
- El diario externo tiene (no soportado) múltiples sistemas de archivos
- No puedo encontrar el diario externo
- El diario externo tiene un superbloque malo
- Superblock tiene un UUID de diario incorrecto
- Error al asignar mapa de bits de inodo
- Error al asignar mapa de bits de bloque
- Error al asignar información de enlace icount
- Error al asignar la matriz de bloque de directorio
- Error al escanear inodes
- Error al iterar sobre bloques
- Error al almacenar información de recuento de inodo
- Error al almacenar información de bloqueo de directorio
- Error al leer el inodo (para borrar)
- Error al asignar estructura de recuento
- Error al leer el bloque de atributo extendido mientras se reparaba el recuento
- Error al escribir el bloque de atributo extendido al corregir el recuento
- Error al asignar la estructura de asignación de la región EA
- Error al escanear inodes
- Error al asignar mapa de bits de inodo
- Error interno: no se pudo encontrar dir_info
- Error al asignar la estructura icount
- Error al iterar sobre bloques de directorio
- Error al ubicar el inodo
- Error al ajustar la cuenta de EA
- Error al asignar mapa de bits de inodo
- Error al crear el directorio raíz
- El inodo raíz no es un directorio; abortando
- No puede continuar sin un inodo raíz.
- Error interno: no se pudo encontrar dir_info
- Error de programación: los puntos finales de mapa de bits no coinciden
- Error interno: fudging end of bitmap
- Error al copiar en el mapa de bits de inodo de reemplazo
- Error al copiar en el mapa de bits del bloque de reemplazo