6 votos

Es posible calcular donde está, físicamente, una mala manzana, situado en un disco duro?

I dd_rescue'd una unidad de disco duro, y sé dónde está el mal bloques. Todavía tengo el coche conmigo, para que yo pueda obtener toda la información necesaria de SMART o fdisk.

Me gustaría saber si es posible ver, físicamente, donde estas malas bloques están ubicados. He oído acerca de los sectores, pistas, cilindros (al menos en viejos discos), pero no sé cómo, precisamente, un disco está organizada, o el de las matemáticas que intervienen en la asignación de un bloque a un sector físico. Estoy seguro de que este será un buen lugar para empezar, y voy a buscar tan pronto como puedo, pero ya que esta es una situación que tengo ahora, estoy haciendo la pregunta de antemano por lo que cualquier persona puede ser capaz de ayudar a mí antes.

Idealmente, me gustaría tener la (literal) la imagen de un disco circular, y yo sería capaz de identificar donde está, en el disco, es, digamos, el bloque #1000.

¿Es factible? Probablemente no en discos de nivelación de desgaste de las técnicas, pero al menos en una pc de escritorio disco duro, tales como un Western Digital Caviar Green, que es el que estoy mirando, con más de 40k de bloques defectuosos.

Es una cuestión académica. Este disco, obviamente, ya no ser de confianza, pero me gustaría ser capaz de ver si un físico patrón existe.

9voto

Chris S Puntos 65813

Esto realmente no es factible con los discos modernos.

En los viejos tiempos, los discos eran esencialmente tonto dispositivos (simplificando, pero no te apartes de mí). El sistema solicitará los datos de un determinado Cilindro (físicamente un anillo en el disco), Cabeza (2 cabezas por plato), y el Sector (cada anillo tenía sector numerado de 1 a lo que sea). El controlador le dijo a la disco para mover a tal y tal CHS ubicación y leer o escribir los datos. Usted sabía que el cilindro 0 fue cerca del borde del disco, y la más alta de cilindro estaba en la root. Realmente antiguos discos tuvieron una marca física donde el sector 1 se encuentra en cada uno de los cilindros, por lo que podría abrir un coche y casi ver las ubicaciones de los datos.

Hoy en día los discos tienen permanente formattings que incluyen información de la dirección, la verdadera direcciones físicas, no de la lógica presentadas para el controlador. Cuando un disco se le pide a mover la cabeza a Gran Bloque de Direcciones (LBA) de 0, que se asigna a un sector físico (probablemente el primer sector, o cerca de allí, a menos de que ha sido reasignado). Pero el disco predice donde ese sector se basa en adivinar algoritmo. A continuación, espera para el siguiente sector a volar bajo la cabeza, la lectura de la dirección - si adivinara mal se ajusta, si sólo acertó a continuación, lee/escribe el sector. Esta adivinando proceso es necesario porque el disco físicamente se expande cuando se calienta, causando el sector para estar en un lugar diferente cuando el disco está caliente o frío. Además, no hay un número consistente de los sectores en cada uno de los cilindros. La mayor CHS discos tuvieron físicamente diferente tamaño de los sectores, debido a que el sistema de direccionamiento. Discos modernos han tamaño uniforme sectores porque son numeradas de 0 a cualquier forma secuencial.

Para el compuesto a su pregunta, como un disco detecta sectores que pueden o realmente tiene problemas, vuelve a ellos en silencio (SMART muestra, pero no es un error en el sistema operativo del host hasta que sea ilegible o discos SCSI puede ser contada a notificar el sistema operativo del host). Así que la lógica Lba ves puede que no corresponden a las direcciones físicas interna a la unidad.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: