¿Puedo reconstruir un JBOD?

¿Puedo reconstruir un JBOD?

Tengo un hardware antiguo que falló hace años y todavía tengo 2 discos duros allí, ambos configurados como JBOD.

¿Hay alguna manera de volcar estas unidades en un HDD y eliminar/reconstruir el JBOD con el hardware real que ya no está disponible?

El JBOD se construyó sobre un chip Promise 20579: placa base MSI K8T Neo para AMD 64.

Respuesta1

Existe la posibilidad de que sus discos estén simplementeconcatenadoen un gran volumen. Es la solución más sencilla cuando se trata de JBOD.Si tan solo los chicos del hardware siguieranel principio del beso, no tendrá problemas para acceder/descargar los datos con software en lugar de hardware.

En Linux, la herramienta adecuada es dmsetup, pero si desea volcar los discos solo en una imagen (u otro disco), entonces la simple catpuede ser suficiente.

Investigación

Al principio necesitas saber el orden original de los discos en JBOD. Debería ser fácil identificar el primer disco; La parte complicada es ordenar el resto. En tu caso, donde hay dos HDD, no deberías tener ningún problema. El primer disco tiene una tabla de particiones MBR válida o un GPT válido (primario, pero no secundario) que describe las particiones encompletoJBOD. A menos que haya utilizado su JBOD sin ninguna tabla de particiones, este método funcionará. Revise sus discos gdisk -le identifique el primero.

Preparación

En mi ejemplo, el orden correcto es /dev/sdb,. /dev/sdcCambie las siguientes definiciones de variables según sus necesidades.

device1=/dev/sdb
device2=/dev/sdc

De esta manera puedes usar los comandos Bash que siguen sin ningún cambio.

Para volcar los discos a una imagen, esto debería ser suficiente (nota: de ahora en adelante puede que necesites sudo):

cat "$device1" "$device2" > image.raw

Se requiere más preparación si realmente desea trabajar con JBOD. Debe almacenar los tamaños de sus dispositivos en sectores de 512 bytes. El comando para recuperar el tamaño es como blockdev --getsz /dev/sdX, entonces

size1="$(blockdev --getsz "$device1")"
size2="$(blockdev --getsz "$device2")"

Confirma echo "$size1" "$size2"que tienes dos números. (Comprobación de cordura: si los multiplica por 512, debería obtener los tamaños de sus discos).

Creación de dispositivos mapeados

Es hora de crear un dispositivo virtual concatenado. El siguiente fragmento de código utilizaaquí documentosintaxis para facilitar la lectura. Es posible que deba ajustarlo si no usa Bash. Por otro lado, con Bash debería funcionar simplemente pegándolo en la terminal.

dmsetup create mydevice << EOF
0 $size1 linear $device1 0
$size1 $size2 linear $device2 0
EOF

Nota mydevicees un nombre arbitrario. La segunda y tercera línea crean un mapa de dispositivos para dmsetup. Consulte man dmsetuppara obtener más información.

Ahora deberías tenerlo /dev/mapper/mydevicedisponible y listo para usar; es tu JBOD. (No estoy 100% seguro de que cada implementación de dmsetupcree nodos en /dev/mapper/; sin embargo, mydevicedebería aparecer en alguna parte). Trabaje con él como con cualquier otro dispositivo.

Montaje

Leermi otra respuesta. La totalidadMontajesección del mismo se aplica a su caso.

Limpieza

Para destruir /dev/mapper/mydevice:

dmsetup remove /dev/mapper/mydevice

Por supuesto, primero debes umountdividir sus particiones.

información relacionada