
Mi antiguo Synology CS407 estaba configurado (deliberadamente) con RAID0 y todavía no tenía configurado un sistema de respaldo. Hay cuatro unidades de 1 TB que forman un volumen de 4 TB. Una unidad tuvo una falla que provocó que el software integrado se negara a usar/montar el volumen. Entiendo que esto es una falla grave y que en general el volumen en las 4 unidades tiene una falla, ya que no hay redundancia con RAID0. Sin embargo, me gustaría intentar volver a ensamblar la matriz en Ubuntu, ignorar el error/omitir los datos incorrectos y ver en qué estado se encuentra el volumen. No es sorprendente que tenga problemas con el único disco que falló. Ubuntu ve su tabla de particiones e informa un sector defectuoso.
Aquí está el resultado de/proc/mdstat
Personalities :
md2 : inactive dm-3[3](S) dm-2[2](S) dm-1[1](S) dm-0[0](S)
3901770794 blocks super 1.1
unused devices: <none>
Ymdadm --examine --scan
ARRAY /dev/md/2 metadata=1.1 UUID=442ee8f0:7c679b96:de0a0544:f72b1167 name=2
Los datos de LVM están en la partición 3 de cada disco. Reensamblar con mdadm --assemble --run --force --verbose /dev/md2 /dev/sd[cdef]3
hace esto:
mdadm: looking for devices for /dev/md2
mdadm: /dev/sdc3 is identified as a member of /dev/md2, slot 0.
mdadm: /dev/sdd3 is identified as a member of /dev/md2, slot 32769.
mdadm: /dev/sde3 is identified as a member of /dev/md2, slot 2.
mdadm: /dev/sdf3 is identified as a member of /dev/md2, slot 3.
mdadm: no uptodate device for slot 1 of /dev/md2
mdadm: added /dev/sde3 to /dev/md2 as 2
mdadm: added /dev/sdf3 to /dev/md2 as 3
mdadm: added /dev/sdc3 to /dev/md2 as 0
mdadm: failed to RUN_ARRAY /dev/md2: Invalid argument
mdadm: Not enough devices to start the array.
Esto me da un archivo inútil /dev/md2
, que se muestra como un dispositivo RAID en Ubuntu. Tengo que stop
hacerlo antes de poder intentar volver a montarlo. Lo que parece extraño es el número de ranura para /dev/sdd3
.
Tengo dos cosas más que podría probar. Estoy buscando consejos sobre si alguna de ellas puede ayudar:
- Fallar y eliminarlo
/dev/sdd3
y luego volver a agregarlo - Tengo un disco de 1TB de repuesto. Podría hacer una copia del disco
dd
y fallar el disco antiguo y agregar el nuevo. Me pregunto si hago una copia sector por sector, ¿el nuevo disco tendrá mayores posibilidades de éxito? ¿Lo intentará basándose en los diferentes UUID?
EDITAR - salida de mdadm --examine /dev/sdd3
:
/dev/sdd3:
Magic : a92b4efc
Version : 1.1
Feature Map : 0x0
Array UUID : 442ee8f0:7c679b96:de0a0544:f72b1167
Name : 2
Creation Time : Sun Feb 13 00:14:43 2022
Raid Level : raid0
Raid Devices : 4
Avail Dev Size : 1950885397 (930.25 GiB 998.85 GB)
Data Offset : 8 sectors
Super Offset : 0 sectors
State : active
Device UUID : 23292ce9:221ebbfa:ea131c60:7888bc0c
Update Time : Sun Feb 20 19:02:34 2022
Checksum : e4ebe933 - correct
Events : 1
Chunk Size : 64K
Device Role : Active device 32769
Array State : A.AA ('A' == active, '.' == missing, 'R' == replacing)
Respuesta1
Este no es un problema grave. Este es un problema catastrófico. RAID0 (cuando se utiliza como RAID de eliminación) almacena fragmentos de datos en todas las unidades. Por tanto, partes de un archivo se pueden ubicar en los 4 discos.
Si la información es muy valiosa puedes intentar contactar con empresas especializadas que puedan recuperar alguna información. Pero esto puede costar una fortuna.
Existe una pequeña probabilidad de que RAID utilice un algoritmo de concatenación para crear una matriz. En tal caso podrá recuperar una buena cantidad de información. Pero repito, ésta no es una tarea doméstica.
Respuesta2
No estoy seguro de qué tan solucionable sea este problema.
Lo primero que intentaría sería apagar Synology, eliminar la unidad fallida y luego usar ddrescue en una máquina Linux para clonar esa unidad lo mejor que pueda. Luego colocaría la unidad clonada en Synology.
Entonces es posible que pueda "forzar el ensamblaje" de la matriz. Nunca he tenido que intentarlo, pero tal vez con un comando como
mdadm --force --assemble /dev/md2 /dev/sdc3 /dev/sdd3 /dev/sde3 /dev/sdf3
La clave es, según la página LUKS MAN que (para una Asamblea)
"--force Ensamble la matriz incluso si los metadatos en algunos dispositivos parecen estar desactualizados. Si mdadm no puede encontrar suficientes dispositivos que funcionen para iniciar la matriz, pero puede encontrar algunos dispositivos que están registrados como fallidos, entonces lo hará marque esos dispositivos como funcionando para que se pueda iniciar la matriz. Esto funciona solo para metadatos nativos, permite iniciar RAID 4, 5, 6 sucios y degradados. Una matriz que requiere el inicio de --force puede contener datos dañados. Úselo con cuidado.""
Posiblemente podría hacer esto sin hacer un ddrescue, pero pasará de hacer la vida difícil a hacerla muy difícil al intentar trabajar en una unidad con una falla de hardware.
No debes confiar en tus datos. Es probable que haya corrupción/inconsistencia en alguna parte.
Si esto falla, es posible que pueda obtener fragmentos de sus datos de las unidades en buen estado restantes utilizando Photorec o equivalente.
Respuesta3
Su mejor opción sería intentar copiar la mayor cantidad posible del disco en el nuevo disco. No usar dd
, usar ddrescue
. dd
se detendrá ante el primer error. He restaurado discos casi completos con ddrescue
, por lo que es posible recuperar la mayoría de los datos. ddrescue
puede llevar mucho tiempo.
Luego, con el disco copiado, prueba la solución de @davidgo.
Ahora ha experimentado las desventajas del raid 0. A menos que tenga mucho espacio en el disco, considere pasar al raid 5.