Bueno. Después de una rutina de limpieza, mi MDADM RAID5 informa que no coincide_cnt = 16. Según tengo entendido, esto significa que si bien ningún dispositivo informó un error de lectura, hay 16 bloques en los que los datos y la paridad no están de acuerdo.
Pregunta # 1: ¿Se puede obtener una lista de estos bloques?
Pregunta # 2: Suponiendo que el # 1 es posible, dado que el sistema de archivos subyacente es EXT4, ¿hay alguna manera de identificar qué archivos están asociados con estos bloques?
Tengo copias de seguridad casi en línea y, en un mundo ideal, podría diferenciar la matriz en vivo contra los datos de la copia de seguridad para localizar cualquier archivo que se haya corrompido silenciosamente. Pero la realidad es recordar que 6 TB de datos de respaldo serían prohibitivamente costosos y lentos. Saber dónde buscar y qué recuperar simplificaría enormemente las cosas.
(Debo señalar que solo ejecuto el exfoliante RAID con la opción 'verificar'. Ejecutar el exfoliante con la opción 'reparar' parece terriblemente peligroso porque MDADM solo sabe que los datos o la paridad son incorrectos, pero no sabe cuál. Parece que hay un 50% de posibilidades de que MDADM adivine mal y reconstruya datos incorrectos. De ahí mi deseo de saber qué archivos están potencialmente afectados para poder restaurarlos desde la copia de seguridad, si es necesario)
Cualquier sugerencia muy apreciada!
dmesg
o / var / log / syslog?icheck
+ncheck
endebugfs
para identificar archivos basados en el desplazamiento del sector.smartctl -a /dev/sda
y así sucesivamente), o use cualquier otro método para ejecutar una prueba SMART corta en cada disco e imprimir un informe completo. Es muy probable que uno de ellos esté muriendo, y se necesita una gran cantidad de maldad para activar una alarma de salud INTELIGENTE.Respuestas:
Lo sentimos, 'check' de hecho vuelve a escribir en la matriz cuando encuentra un error: consulte https://www.apt-browse.org/browse/ubuntu/trusty/main/amd64/mdadm/3.2.5-5ubuntu4/file /usr/share/doc/mdadm/README.checkarray
... así que ya puede ser demasiado tarde para recopilar los datos que está buscando, lo siento.
A largo plazo, vale la pena señalar que RAID5 (y 6, y 1) no tienen protección contra la pudrición de bits, que probablemente sea la situación que haya encontrado. Cuando los datos en un disco salen mal, no tienen forma de determinar cuál de los datos es bueno o malo. Sugeriría planear migrar a un sistema de archivos que sume cada disco, como btrfs o zfs.
(RAID-5 realmente no debería usarse en nuevas implementaciones, y realmente no debería donde la capacidad de los discos en bruto es superior a 2 TB cada uno; consulte http://www.zdnet.com/article/why-raid-5- deja de trabajar en 2009 / )
fuente