Recientemente, he visto que el sistema de archivos raíz de una máquina en un centro de datos remoto se vuelve a montar de solo lectura, como resultado de problemas de coherencia.
Al reiniciar, se mostró este error:
UNEXPECTED INCONSISTENCY: RUN fsck MANUALLY (i.e., without -a or -p options)
Después de ejecutar fsck como se sugiere, y aceptar las correcciones manualmente con Y, los errores se corrigieron y el sistema ahora está bien.
Ahora, creo que sería interesante si fsck estuviera configurado para ejecutar y reparar todo automáticamente, ya que la única alternativa en algunos casos (como esta) es ir en persona al centro de datos remoto y conectar una consola a la máquina afectada.
Mi pregunta es: ¿por qué fsck por defecto pide intervención manual? ¿Cómo y cuándo una corrección realizada por dicho programa sería insegura? ¿Cuáles son los casos en que el administrador del sistema puede querer dejar de lado una corrección sugerida por un tiempo (para realizar otras operaciones) o abortarla por completo?
fuente
Respuestas:
fsck
definitivamente causa más daño que bien si el hardware subyacente está dañado de alguna manera; CPU defectuosa, RAM defectuosa, un disco duro agonizante, un controlador de disco dañado ... en esos casos es inevitable más corrupción.En caso de duda, es una buena idea simplemente tomar una imagen del disco dañado con
dd_rescue
alguna otra herramienta, y luego ver si puede corregir esa imagen con éxito. De esa manera, todavía tiene disponible la configuración original.fuente
Has visto un ejemplo donde
fsck
funcionó, pero he visto más que suficientes sistemas de archivos dañados donde no funcionó con éxito en absoluto. Si funcionara completamente automático, es posible que no tenga la oportunidad de hacer cosas comodd
volcar un disco o algo así, lo que en muchos casos sería una excelente idea antes de intentar una reparación.Es nunca, nunca una buena idea para intentar algo así automática en absoluto.
Ah, y los servidores modernos deberían tener consolas remotas o, al menos, sistemas de rescate independientes para recuperarse de algo así sin cargar un bastidor KVM en el servidor.
fuente
fsck -p /
yfsck -p /var
, etc., trabajar bien y poner en funcionamiento el servidor sin intervención manual, y arriesgar el pequeño, no cero% de posibilidades de una catástrofe mayor en esas particiones que puedo recrear si es necesario .fsck
que se atienda, y luego todo funciona bien Tarda unos 2 minutos, si eso. Tiempo de inactividad hasta que esto suceda. C) Haga que alguien reinstale el sistema operativo. Toma más de 30 minutos. ¿Estás eligiendo la opción C? Tal vez una diferencia clave que tenemos es que he tenidofsck
trabajo un mayor porcentaje del tiempo de lo que usted cita en su respuesta. Mi punto principal no era el diseño del sistema (este sistema barato no usa una consola remota), sino que decir " nunca, nunca " era una frase demasiado fuerte para ser precisaEn primer lugar, debe comprender que con los sistemas de archivos modernos (periodizados), un bloqueo del sistema no dañará el sistema de archivos y no se requerirá fsck en el momento del arranque.
Ext3, Ext4, ZFS, btrfs, xfs y todos los FS modernos son 100% consistentes después de un bloqueo o reinicio del sistema.
FS no periodizados como ext2 o vfat son un gran NOGO para un sistema rootfs.
Ahora, si su sistema requiere un fsck en el momento del arranque, debe preguntarse: ¿cuál fue la razón de esto en primer lugar?
Luego debe investigar los registros de su kernel para averiguar cuándo y qué sucedió. También debe retroceder en el tiempo en los registros para buscar desde cuándo comenzó el error. Debe verificar sus discos con smartctl. Etc ... Si necesita un fsck en un fs registrado, es prácticamente seguro que su hardware está fallando, suponiendo que el fs no haya sido dañado por un administrador (con herramientas de nivel de bloque como dd) o por un error.
Por lo tanto, es una tontería usar fsck para "solucionar" el problema sin investigar y solucionar la causa raíz (reemplazando / actualizando el hardware / firmware / software defectuoso).
Hacer un fsck, completar el arranque y ser feliz es ingenuo por decir lo menos. Afirmar que "he tenido un trabajo fsck un mayor porcentaje del tiempo de lo que usted cita" me hace preguntarme qué quiere decir con "trabajo fsck". fsck puede haber devuelto su fs a un estado consistente al perder algunos archivos y datos en el proceso ... ¿Se comparó con una copia de seguridad? Muchas personas pierden archivos u obtienen datos corruptos sin darse cuenta ...
fuente