Tamaño de USB incorrecto después de escribir dd de una imagen ISO

Tamaño de USB incorrecto después de escribir dd de una imagen ISO

Solía dd​​​​colocar el archivo ISO de Kali Linux en mi USB. Luego intenté instalar Kali Linux a través del USB, pero no pude porque la imagen de instalación estaba corrupta. Reinicié mi otro sistema operativo Linux (antergos) e intenté usarlo ddnuevamente. Mi memoria USB ahora dice que tiene un tamaño de 32 KB y fdisk no puede detectarlo.

Originalmente es una memoria USB 2.0 de 8GB.

Para anular el MBR y la tabla de particiones, intenté sin éxito:

dd if=/dev/zero of=/dev/sdx bs=512 count=1

Respuesta1

Tu memoria USB ha fallado.

Algunas unidades devuelven tamaños diferentes cuando fallan, aunque solo he leído sobre esto con respecto a los "SSD", que tienen controladores más complejos.

Para verificar el tamaño de la unidad en su conjunto, usaría lsblko buscaría en el registro del kernel dmesg. (El tamaño de las particionesdentroel dispositivo podría ser completamente falso dependiendo de la tabla de particiones; podrías idear esto sin tener una falla de hardware).

Si el tamaño era correcto, hay formas de intentar recuperar datos importantes. Pero no parece que sea necesario: todavía tienes acceso al archivo ISO de Kali.

Las memorias USB simples no están diseñadas con ningún diagnóstico de hardware adicional[*]. Una vez que sepa que el hardware ha fallado, eso es todo. Que el tamaño de la unidad en su conjunto esté mal o que la unidad no devuelva los datos que usted escribió (sugerido por una falla de fdisk), sería suficiente para indicar dicha falla.

[*] Creo que ni siquiera están diseñados para usos en los que los ciclos de reescritura máximos esperados del almacenamiento flash se convierten en un problema. Es mucho más probable que simplemente se rompan o se pierdan.

Respuesta2

Esto puede suceder cuando el virtualgeometría del discose detecta erróneamente. Primero intente reiniciar antes de continuar.

Advertencia :No creo que esto pueda ser perjudicial para su llave USB, pero si no quiere correr ningún riesgo, primero pruebe el formateo en Windows.

Esta guía asume que usted conduce /dev/sdb, adáptese a sus necesidades.
En una terminal, busque la salida de dmesgdicha línea sd 5:0:0:0: [sdb] 62545920 512-byte logical blocks: (32.0 GB/29.8 GiB)
. Esto le indica:

  • El número de sectores (bloques lógicos):62545920
  • El tamaño de los sectores: 512bytes.
  • El tamaño real de los medios:32.0 GB/29.8 GiB

Ahora calcule el tamaño exacto del medio en bytes: 62545920 * 512 = 32023511040 bytes = 30540 MiB(29,82 GiB).
Luego busque una combinación CHS válida que conduzca a C * H * S = 62545920
O, si le da pereza, con un tamaño de bloque de 512 bytes, esto debería funcionar: C=30540(¡el tamaño en MiB!), H=64yS=32

Finalmente, ejecute sudo fdisk -C 30540 -H 64 -S 32y escriba una nueva tabla de particiones para arreglarla.
Reinicie si los cambios no se detectan correctamente.

Respuesta3

Sé que este lugar trata sobre unix, pero cuando tengo este problema encuentro una windowsmáquina y la uso diskpart(se necesita acceso de administrador). Porque cuando fdiskfalla, esto simplemente funciona; tal vez ayude a alguien.
No puedo probar las instrucciones en este momento, pero debería ser algo como: list disk, select disk i, clean, create partition primary, format fs=fat32 quick, active, assign, exit.
Y el tamaño de su memoria USB ahora está bien (pero, por supuesto, ha perdido sus datos).
También estoy interesado en una forma equivalente de lograr esto con Linux.

NB: No estoy seguro de que el tamaño incorrecto indique que ddha fallado. De todos modos, no olvides agregarlo && synca tu ddcomando.

información relacionada