¿Pueden los datos de un disco duro degradarse sin Windows advirtiéndome que esto ha sucedido cuando intento acceder a los datos?

¿Es probable que una degradación física de un disco duro podría provocar que los bits se "volvieran" en el contenido de los archivos sin que el sistema operativo "se diera cuenta" y se lo contara al leer el archivo? Por ejemplo, un 'p' en un archivo de texto ASCII (binario 0111000 0 ) cambia a un 'q' (0111000 1 ) y luego un usuario (yo) puede abrir el archivo y ver 'q' sin saber que un fallo ¿ha ocurrido?

Estoy interesado en las respuestas relacionadas con FAT, NTFS, o ReFS … si hace una diferencia.

Quiero saber si el sistema operativo me protege de esto, o si debería estar revisando mis datos de invariancia entre copias / con el tiempo.

, hay algo llamado putrefacción.

Pero no , no te afectará desapercibido.

Cuando una unidad escribe un sector en los platos, no sólo escribe los bits de la misma forma en que están almacenados en la memoria RAM – utiliza una codificación para asegurarse de que no hay secuencias del mismo bit que son demasiado largas , Y agrega códigos ECC, que le permiten reparar errores que afectan a unos pocos bits, y detectar errores que afectan a más de unos pocos bits.

Cuando la unidad lee el sector, comprueba estos códigos ECC, y repara los datos, si es necesario y posible. Lo que suceda a continuación depende de las circunstancias y el firmware de la unidad, que está influenciado por la designación de la unidad.

  • Si un sector puede ser leído y no tiene problemas ECC, se pasa al sistema operativo
  • Si un sector puede ser reparado fácilmente, la versión reparada puede ser escrita en disco, leída de nuevo y verificada, para determinar si el error fue aleatorio (rayos cósmicos …) o si hay un error sistemático con el medio
  • Si la unidad determina que hay un error en el medio, reasigna el sector
  • Si un sector no puede ser leído ni corregido después de unos pocos intentos de lectura, en una unidad designada como unidad RAID , la unidad se dará por vencido, reasignará el sector y le informará al controlador que hay un problema. Se basa en el controlador RAID para reconstruir el sector de los otros miembros RAID, y volver a escribir a la unidad fallida, que luego lo almacena en el sector reasignado que esperamos no tiene el problema.
  • Si un sector no puede ser leído o corregido en una unidad de escritorio , la unidad hará mucho más intentos de leerlo. Dependiendo de la calidad de la unidad, esto puede implicar el reposicionamiento de la cabeza, verificando si hay bits que voltear cuando se lee repetidamente, comprobando qué bits son los más débiles, y algunas otras cosas. Si cualquiera de estos intentos tiene éxito, la unidad reasignará el sector y volverá a escribir los datos reparados.

(Ésta es una de las principales diferencias entre las unidades que se venden como unidades de "Escritorio", "NAS / RAID" o "Vigilancia de vídeo". Una unidad RAID puede renunciar rápidamente y hacer que el controlador repare el sector para evitar latencia en el Una unidad de escritorio volverá a intentarlo una y otra vez, porque tener el usuario esperar unos segundos es probablemente mejor que decirles que los datos se pierden.Y una unidad de vídeo valores de velocidad de datos constante más que la recuperación de errores, como un marco dañado normalmente ganado Ni siquiera se nota.)

De todos modos, la unidad sabrá si ha habido putrefacción de bits, por lo general se recuperará de ella, y si no puede, le dirá al controlador que a su vez le dirá al controlador que le dirá al sistema operativo. A continuación, corresponde al sistema operativo presentar este error al usuario y actuar en consecuencia. Por eso cybernard dice

Nunca he sido testigo de un solo error de bits, pero he visto un montón de discos duros donde sectores enteros han fallado.

La unidad sabrá que hay algo mal con el sector, pero no sabe qué bits han fallado. (Un solo bit que ha fallado siempre será capturado por ECC).

Tenga en cuenta que chkdsk y la reparación automática de los sistemas de archivos, no se ocupan de la reparación de datos dentro de los archivos. Éstos están dirigidos a la corrupción dentro de la estructura del sistema de archivos; Como un tamaño de archivo diferente entre la entrada de directorio y el número de bloques asignados. La función de autocuración de NTFS detectará daños estructurales y evitará que afecten más a sus datos, no repararán ningún dato que ya esté dañado.

Hay, por supuesto, otras razones por las que los datos pueden resultar dañados. Por ejemplo. Mal memoria RAM en un controlador puede alterar los datos antes de que incluso se envía a la unidad. En ese caso, ningún mecanismo en la unidad detectará o reparará los datos, y esto puede ser una razón por la cual la estructura de un sistema de archivos está dañada. Otras razones incluyen errores simples de software, apagón mientras se escribe el disco (aunque esto es abordado por el sistema de registro del sistema de archivos), o malos controladores de sistema de archivos (el controlador NTFS en Linux predeterminado para leer sólo durante mucho tiempo, como NTFS fue ingeniería inversa, no documentado , Y los desarrolladores no confiar en su propio código).

Tenía este escenario una vez, donde una aplicación guardaría todos sus archivos en dos servidores diferentes en diferentes centros de datos, para mantener una copia de trabajo si los datos en todas las circunstancias. Después de unos meses, notamos que en una de las copias, alrededor del 0,1% de todos los archivos no coincidían con la suma MD5 que la aplicación almacenaba en su base de datos. Resultó ser un cable de fibra defectuoso entre el servidor y la SAN.

Estas otras razones son por qué algunos sistemas de archivos, como ZFS, mantienen información de suma de comprobación adicional para detectar errores. Están diseñados para protegerlo de muchas más cosas que pueden salir mal que simplemente pudrirse.

Sí, los discos duros pueden y degradan sin advertencia desde el sistema operativo. Se llama putrefacción . Nunca he sido testigo de un solo error de bits, pero he visto un montón de discos duros donde sectores enteros han fallado.

Windows no tiene protección incorporada del contenido del archivo más allá de la estructura del sistema de archivos NTFS. Piense en NTFS como un libro: bien, sólo protege la tabla de contenidos y verifica que las cosas coinciden. Sin embargo, si el daño está en medio de una página, no ofrece ninguna protección. FAT no tiene nada. Los discos duros emplean corrección de errores ECC en una base por sector, pero la unidad no le dice a Windows. Algunos tipos de archivo tienen CRC, MD5 o SHA hashes para detectar la corrupción, pero no arreglan nada.

Incluso entonces el hash sólo le dice que hay un problema, pero no sabe dónde se encuentra el error.

El disco duro tiene SMART que controla el estado de la unidad de disco duro, pero a menos que la unidad está en la puerta de la muerte, el BIOS no le avisará. Aún peor, SMART es a menudo desactivado por defecto en su BIOS. Puede supervisar los números a través del software, pero diferentes unidades tienen problemas diferentes. Si usted tiene un montón de sectores reubicados, o sus errores de ECC constantemente subir. Si tienes 100.000 nuevos ECCs todos los días, es una mala señal.

Muchos tipos de archivos no tienen protección contra la podredumbre de bits . Al igual que, TXT y BMP, que no tienen ninguna protección en absoluto. Winrar tiene una opción opcional para agregar datos de paridad al archivo que hará que el archivo sea más grande, pero puede detectar (proporcional a la cantidad de datos de paridad agregados) y reparar este tipo de error.

Todos los demás programas de compresión que conozco detectan errores, pero no pueden hacer nada al respecto.

Eventualmente, los errores en un sector serán tan malos ECC no puede corregirlo, y la unidad le dará lo que lee incluso si está mal.

Puede utilizar QuickPar o similar para crear archivos de datos de paridad, pero hasta donde yo sé no hay manera de automatizarlo. Por ejemplo, realmente cambia el archivo usted mismo cuando tiene que actualizar manualmente la paridad. También puede tener datos de paridad para un grupo de archivos, pero cambia 1 archivo y todo el conjunto de paridad tiene que ser recreado. Este es un verdadero dolor de cabeza para todos, pero un pequeño número de archivos.

Sí, es posible. Windows es sólo software. El software es una serie de instrucciones para que una computadora siga.

Piense en otro tipo de una serie de instrucciones: un libro. ¿Qué pueden hacer esas instrucciones si están escritas en un libro que se encuentra en una estantería y nadie se molesta en abrir el libro y leer esas instrucciones?

Así como estas instrucciones escritas requieren que una persona lea las instrucciones y empiece a seguir las instrucciones, el software de la computadora requiere hardware para hacer cosas que sean útiles. Incluso si un libro tiene instrucciones que fueron escritas con una precisión fabulosa, que no impide problemas si una persona decide leer las instrucciones, pero luego para implementar mal. Del mismo modo, el software no puede impedir que el hardware haga cosas malas. Por lo tanto, hardware roto puede triunfar físicamente sobre lo que cualquier pieza de software puede hacer, incluyendo Microsoft Windows.

Ahora, ReFS puede diseñarse con la intención de que el software almacene detalles sobre los datos y que el software compare esos detalles más adelante. Un concepto simple es "checksum", donde el software agrega ciertos valores y se asegura de que esos valores coincidan con un resultado esperado. Cuando el hardware implementa ese software, entonces ciertos malos resultados pueden ser detectados. Esto puede incluso ser muy probable que funcione. Sin embargo, dado que el número de problemas potenciales, que teóricamente podría existir, es básicamente un número infinito, no hay garantía de que el software detecte necesariamente cada problema. (Tenga en cuenta que el software es una serie de instrucciones que se creó antes de tiempo.)

FAT es particularmente bajo en características. FAT12 fue diseñado para disquetes, y FAT16 para sistemas de hasta 4GB (aunque la mayor parte de la implementación de FAT16 de Microsoft tendió a no funcionar por encima de 2GB). Sin la extensión VFAT, ninguno de ellos soporta nombres de archivo de más de 11 caracteres (algunos de los cuales estarían en una porción llamada "extensión"). FAT fue diseñado simplemente para almacenar datos en un momento en que la capacidad de almacenar datos era un concepto novedoso que los adultos deben ser enseñados. Cuando la FAT se consideraba una tecnología de "vanguardia", la tecnología informática no era todavía suficientemente prevalente y elaborada para que la gente se preocupara por las características avanzadas.

NTFS añadió soporte para algunas características más, tal vez más notablemente tener el sistema operativo ser capaz de hacer un seguimiento fácil de los permisos de usuario. Hay diferentes versiones de NTFS. Por ejemplo, Moab señala que Windows Server 2008 agregó soporte para NTFS de auto-curación , que puede detectar algunas cosas. Sin embargo, esa característica era nueva para Windows Server 2008, por lo que no es algo que soporte Windows XP (o Windows Server 2003, o anterior). Aun así, mirando a través de la lista de características, parece que esto involucró algunos metadatos que ayudan al sistema operativo a notar problemas tan graves que el disco no puede montar u otras áreas clave del disco que afectan al núcleo del sistema operativo. No se veía como cada pieza de datos, en cada archivo, se ve afectado por esta característica en particular.

El software para estos sistemas operativos es muy poco probable que note tales cosas, a menos que causen problemas notables para el sistema operativo para llevar a cabo las tareas. Puede haber algunas excepciones, como las partes del sistema operativo que comprueban los discos (CheckDsk / ChkDsk / ScanDisk / ScanDskW, dependiendo del sistema operativo), pero incluso ellos serán bastante limitados en lo que pueden detectar, en gran parte porque los sistemas de archivos don 'T almacenar una gran cantidad de datos que se pretende que sea útil para la comprobación de disco.

(RAID5 podría ser más propenso a detectar tales cosas, con cada bit que tiene un bit de paridad que ayudaría a notar algo inusual.Aún así, sería hasta la implementación de RAID para ejecutar un cheque para notar el problema. Una parte del disco que no se está trabajando activamente, el problema puede permanecer desapercibido hasta que alguien intente comenzar a usar esos datos.)

En tiempos más recientes, un mayor número de bits significaba que las probabilidades pequeñas, como las posibilidades de "1 en 10 millones", eran más propensas a afectar las cosas. El público en general también ha aprendido acerca de los "rayos cósmicos", que pueden tener un pequeño impacto en las cosas. Dado que los bits están siendo apretados tan fuertemente en los dispositivos más nuevos, los requisitos físicos para representar un bit son más pequeños, por lo que incluso los impactos pequeños son más propensos a meterse con la forma en que un bit es reconocido. ReFS tiene algunas características diseñadas para ayudar a que se detecten. El artículo de Wikipedia sobre ReFS se refiere a esto como "comprobación de integridad automática". Como se describe como una característica notable de este sistema de archivos, tales características son probablemente más desarrollado que con NTFS (y ciertamente más de FAT, que era comparativamente simple en la naturaleza, y por lo tanto prácticamente no había tales características).

Intereting Posts