2 votos

Recuperar una partición en una unidad HPFS/QNX/AUX + LBA extendido. TIPO en blanco en diskutil

Estoy intentando recuperar algunos datos de una vieja unidad IDE de 2,5" de 60 GB de un viejo portátil con Windows.

diskutil list da

/dev/disk5 (external, physical):
   #:                       TYPE NAME                    SIZE       IDENTIFIER
   0:                                                   *60.0 GB    disk5

fdisk es capaz de obtener algo más de información, lo que me da esperanzas de que esto sea recuperable: sudo fdisk /dev/disk5

Disk: /dev/disk5    geometry: 7296/255/63 [117210240 sectors]
Signature: 0xAA55
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
*1: 07    0   1   1 - 1023 254  63 [        63 -  100486512] HPFS/QNX/AUX
 2: 0F 1023   0   1 - 1023 254  63 [ 100486575 -   16723665] Extended LBA
 3: 00    0   0   0 -    0   0   0 [         0 -          0] unused
 4: 00    0   0   0 -    0   0   0 [         0 -          0] unused
Signature: 0x0
         Starting       Ending
 #: id  cyl  hd sec -  cyl  hd sec [     start -       size]
------------------------------------------------------------------------
 1: 00    0   0   0 -    0   0   0 [         0 -          0] unused
 2: 00    0   0   0 -    0   0   0 [         0 -          0] unused
 3: 00    0   0   0 -    0   0   0 [         0 -          0] unused
 4: 00    0   0   0 -    0   0   0 [         0 -          0] unused

He intentado leer los datos de bytes para obtener alguna pista de los sistemas de archivos: sudo dd if=/dev/disk5 count=5 2>/dev/null | hexdump -C dando el primer bloque:

00000000  33 c0 8e d0 bc 00 7c fb  50 07 50 1f fc be 1b 7c  |3..|P.P..||
00000010  bf 1b 06 50 57 b9 e5 01  f3 a4 cb bd be 07 b1 04  |..PW..|
00000020  38 6e 00 7c 09 75 13 83  c5 10 e2 f4 cd 18 8b f5  |8n.|.u...|
00000030  83 c6 10 49 74 19 38 2c  74 f6 a0 b5 07 b4 07 8b  |.It.8,t...|
00000040  f0 ac 3c 00 74 fc bb 07  00 b4 0e cd 10 eb f2 88  |.t....|
00000050  4e 10 e8 46 00 73 2a fe  46 10 80 7e 04 0b 74 0b  |N..s*F..~..t.|
00000060  80 7e 04 0c 74 05 a0 b6  07 75 d2 80 46 02 06 83  |.~..t..uF...|
00000070  46 08 06 83 56 0a 00 e8  21 00 73 05 a0 b6 07 eb  |F...V...s..
00000080  bc 81 3e fe 7d 55 aa 74  0b 80 7e 10 00 74 c8 a0  |.>}Ut..~..t|
00000090  b7 07 eb a9 8b fc 1e 57  8b f5 cb bf 05 00 8a 56  |..W....V|
000000a0  00 b4 08 cd 13 72 23 8a  c1 24 3f 98 8a de 8a fc  |..r#.$?..|
000000b0  43 f7 e3 8b d1 86 d6 b1  06 d2 ee 42 f7 e2 39 56  |C.BV|
000000c0  0a 77 23 72 05 39 46 08  73 1c b8 01 02 bb 00 7c  |.w#r.9F.s....||
000000d0  8b 4e 02 8b 56 00 cd 13  73 51 4f 74 4e 32 e4 8a  |.N..V.sQOtN2|
000000e0  56 00 cd 13 eb e4 8a 56  00 60 bb aa 55 b4 41 cd  |V..V.`UA
000000f0  13 72 36 81 fb 55 aa 75  30 f6 c1 01 74 2b 61 60  |.r6.Uu0.t+a`|
00000100  6a 00 6a 00 ff 76 0a ff  76 08 6a 00 68 00 7c 6a  |j.j.v.v.j.h.|j|
00000110  01 6a 10 b4 42 8b f4 cd  13 61 61 73 0e 4f 74 0b  |.j.B..aas.Ot.|
00000120  32 e4 8a 56 00 cd 13 eb  d6 61 f9 c3 55 67 79 6c  |2V.agyl|
00000130  64 69 67 20 70 61 72 74  69 73 6a 6f 6e 73 74 61  |dig partisjonsta|
00000140  62 65 6c 6c 00 46 65 69  6c 20 75 6e 64 65 72 20  |bell.Feil under |
00000150  6c 61 73 74 69 6e 67 20  61 76 20 6f 70 65 72 61  |lasting av opera|
00000160  74 69 76 73 79 73 74 65  6d 00 4d 61 6e 67 6c 65  |tivsystem.Mangle|
00000170  6e 64 65 20 6f 70 65 72  61 74 69 76 73 79 73 74  |nde operativsyst|
00000180  65 6d 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |em..............|
00000190  00 00 00 00 00 00 00 00  00 00 00 00 00 00 00 00  |................|

El sistema operativo original se instaló en noruego. El último fragmento del texto se traduce aproximadamente en

"Tabla de particiones válida. Error durante la carga del sistema operativo. Falta el SO".

Último bloque:

00000310  00 0a 0d 45 72 72 20 35  3a 20 45 72 72 6f 72 20  |...Err 5: Error |
00000320  66 69 6e 64 69 6e 67 20  56 46 4c 4f 50 50 59 2e  |finding VFLOPPY.|
00000330  53 59 53 00 0a 0d 45 72  72 20 36 3a 20 45 72 72  |SYS...Err 6: Err|
00000340  6f 72 20 72 65 61 64 69  6e 67 20 56 46 4c 4f 50  |or reading VFLOP|
00000350  50 59 2e 53 59 53 00 0a  0d 45 72 72 20 37 3a 20  |PY.SYS...Err 7: |
00000360  45 72 72 6f 72 20 72 65  61 64 69 6e 67 20 64 69  |Error reading di|
00000370  73 6b 00 0a 0d 45 72 72  20 38 3a 20 46 61 6b 65  |sk...Err 8: Fake|
00000380  20 46 6c 6f 70 70 79 20  64 72 69 76 65 72 20 6e  | Floppy driver n|
00000390  6f 74 20 66 6f 75 6e 64  00 0a 0d 45 72 72 20 39  |ot found...Err 9|
000003a0  3a 20 56 46 4c 4f 50 50  59 2e 53 59 53 20 63 6f  |: VFLOPPY.SYS co|
000003b0  72 72 75 70 74 00 00 00  00 00 90 cc 90 06 50 b8  |rrupt.......P|
000003c0  40 00 8e c0 67 26 a0 17  00 00 00 24 01 58 07 0f  |@..g&....$.X..|

También traté de conseguir algo de información con gpt: sudo gpt -r show /dev/disk5

gpt show: unable to open device '/dev/disk5': Input/output error

¿Alguna idea sobre cómo avanzar? No estoy muy familiarizado con las herramientas cli de MacOS para discos (vengo de Linux), y no estoy familiarizado con HFPS y LBA.

1voto

David Anderson Puntos 2189

El diskutil list está produciendo la salida publicada porque la firma que se muestra como 0x0 debe ser 0xAA55 . Esto impediría el montaje de cualquier volumen en la unidad por parte de MacOS. Por otro lado, cuando se probó con Windows 11, un volumen NTFS correctamente formateado almacenado en la primera partición se montó. A continuación se presentan dos métodos para corregir este problema.

Nota: Cuando el tamaño del sector es de 512 bytes, los volúmenes NTFS normalmente comienzan en un número de sector que es divisible por 8. Dado que la primera partición comienza con un 63, es posible que tenga que volcar y revisar el primer sector de esta partición. Vea el final de esta respuesta para el comando.

Método 1: Eliminar la segunda entrada de la tabla de particiones MBR

Dado que la partición extendida parece estar vacía, podría simplemente eliminar la segunda entrada de la tabla de particiones MBR. El comando para hacerlo se da a continuación.

sudo fdisk -e /dev/disk1

Este comando es interactivo. Las entradas se indican en la primera columna de la tabla siguiente.

Entrada

Tipo

Comentario

p

comando

Imprime la tabla de particiones MBR cargada, debe ser la misma que se muestra en la pregunta

e 2

comando

Editar la segunda entrada

0

parámetro

ID de la partición ( 0 para desactivar)

p

comando

Imprime la tabla de particiones MBR cargada, la segunda entrada debe ser todo ceros (sin usar)

q

comando

Salir de la edición del MBR actual, guardando los cambios actuales

Método 2: Reemplazar la firma que falta.

Los siguientes comandos escribirán la firma de 0xAA55 a la ubicación correcta en la unidad.

start=100486575
echo 55aa | sudo xxd -r -p -seek $((start*512+510)) - /dev/disk1

Antes de utilizar el método 2, le recomiendo que publique la salida del comando siguiente.

sudo dd if=/dev/disk1 count=1 skip=63 2>/dev/null | hexdump -Cv

Esta salida me permitiría comprobar si la primera partición contiene un volumen NTFS y que el volumen no es mayor que la partición. O bien, puedes comprobarlo tú mismo. (Aunque, al hacer pruebas con Windows 11, descubrí que Windows no monta un volumen NTFS más grande que la partición). La descripción del sector de arranque de un volumen formateado con NTFS se puede encontrar aquí .

0voto

Andy Griffiths Puntos 1

Según Wikipedia, HPFS fue utilizado por OS/2, y era compatible con Win95 / 98 sólo como un recurso compartido de red. Puede que sea mejor usar un sistema Linux para intentar acceder a él, ya que hay soporte de controladores, mientras que no veo nada para MacOS.

Un breve vistazo a lo que está disponible en https://tldp.org/HOWTO/Filesystems-HOWTO.html#toc4 aunque menciona los núcleos 2.2 de Linux. Una búsqueda en Google puede revelar más.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X