La tabla de particiones de la tarjeta SD y los sectores asignados están muy rotos

La tabla de particiones de la tarjeta SD y los sectores asignados están muy rotos

Estoy casi al límite de mi ingenio aquí, fdisk me da esto. Independientemente de lo que haga, todo lo que he probado sale así. La tarjeta incluso tiene algo de música y todavía puedo reproducirla. Todo lo que quiero es que se borre y pueda volver a utilizarse. Actualización: probé las dos respuestas y tengo la misma salida de fdisk y todavía puedo escuchar la música en él.

Command (m for help): p
Disk /dev/sdb: 59.5 GiB, 63864569856 bytes, 124735488 sectors
Geometry: 64 heads, 32 sectors/track, 60906 cylinders
Units: cylinders of 2048 * 512 = 1048576 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x6b736964

Device     Boot   Start     End Cylinders   Size Id Type
/dev/sdb1  ?     831055 1626717    795663   777G 83 Linux
/dev/sdb2  ?     649505  912677    263173   257G 65 Novell Netware 386
/dev/sdb3  ?     263179  945973    682795 666.8G 53 OnTrack DM6 Aux3
/dev/sdb4  ?    1908750 1908782        32  31.9M bb Boot Wizard hidden

Partition table entries are not in disk order.

Command (m for help): v
Partition 1: overlaps partition 2.
Partition 1: overlaps partition 3.
Total allocated sectors 4866404289 greater than the maximum 124735488.

-

hartofwave@hartofwave-Flaming-Blade-GTI:~$ sudo sgdisk -Z /dev/sdb

***************************************************************
Found invalid GPT and valid MBR; converting MBR to GPT format
in memory. 
***************************************************************

Exact type match not found for type code 7400; assigning type code for
'Linux filesystem'
Exact type match not found for type code 6500; assigning type code for
'Linux filesystem'
Exact type match not found for type code 5300; assigning type code for
'Linux filesystem'
Exact type match not found for type code BB00; assigning type code for
'Linux filesystem'

Warning! Secondary partition table overlaps the last partition by
3784448450 blocks!
You will need to delete this partition or resize it in another utility.
Warning: The kernel is still using the old partition table.
The new table will be used at the next reboot.
GPT data structures destroyed! You may now partition the disk using fdisk or
other utilities.

Respuesta1

Esta tarjeta SD está formateada directamente como un único sistema de archivos y en realidad no tiene una tabla de particiones. Lo que está viendo son datos ordinarios del sistema de archivos donde fdiskse espera que esté el registro de arranque maestro y esto lo confunde. Es por eso que la información de partición que estás viendo no tiene sentido, pero la tarjeta aún funciona.

Para borrar la tarjeta, escriba el siguiente comando:
dd if=/dev/zero of=/dev/sdb bs=8192

Esto pondrá a cero todos los bloques del dispositivo.

NOTA:El bs=8192es un número arbitrario. ddEl tamaño de bloque predeterminado es de 512 bytes, lo cual es lento. BS=8192borrará el dispositivo en fragmentos de 4K, lo que debería ser mucho más rápido.

NOTA 2:Una tarjeta SD es un medio basado en flash como un SSD. Las celdas de la memoria flash pueden "desgastarse" cuanto más se escribe en ellas. Así que no hagas esto demasiadas veces o degradarás la tarjeta.

Respuesta2

Si desea borrar el disco, intente esto, ya sea como rooto precedido por sudo:

sgdisk -Z /dev/sdb

Entonces deberías poder reparticionar el disco. Si no puede, verifique el disco para ver si tiene una pestaña de solo lectura, como lo tienen algunas (¿todas?) tarjetas SD. Si tiene dicha pestaña, deslícela a la otra posición y vuelva a intentarlo.

Si eso falla, entonces mi corazonada es que el disco está defectuoso; Deberías tirarlo a la basura y conseguir uno nuevo.

información relacionada