
Acabei dd
de colocar o arquivo ISO do Kali Linux em meu USB. Tentei então instalar o Kali Linux via USB, mas não consegui porque a imagem de instalação estava corrompida. Inicializei novamente em meu outro sistema operacional Linux (antergos) e tentei usar dd
novamente. Meu stick USB agora diz que tem 32 KB e o fdisk não consegue detectá-lo.
É originalmente um stick USB 2.0 de 8 GB.
Para substituir o MBR e a tabela de partição, tentei sem sucesso:
dd if=/dev/zero of=/dev/sdx bs=512 count=1
Responder1
Seu pendrive falhou.
Algumas unidades retornam tamanhos diferentes quando falham, embora eu só tenha lido sobre isso em relação aos "SSDs", que possuem controladores mais complexos.
Para verificar novamente o tamanho da unidade como um todo, eu usaria lsblk
ou examinaria o log do kernel dmesg
. (O tamanho das partiçõesdentro deo dispositivo pode ser completamente falso dependendo da tabela de partições; você poderia fazer isso sem ter uma falha de hardware).
Se o tamanho estiver bom, existem maneiras de tentar recuperar dados importantes. Mas não parece que você precisa - você ainda tem acesso ao arquivo Kali ISO.
Pendrives USB simples não foram projetados com nenhum diagnóstico de hardware extra[*]. Depois de saber que o hardware falhou, é isso. O tamanho da unidade como um todo está errado ou a unidade não retorna os dados que você gravou (sugerido pela falha de fdisk
), seria suficiente para indicar tal falha.
[*] Acho que eles nem foram projetados para usos em que os ciclos máximos de reescrita esperados do armazenamento flash se tornem um problema. É muito mais provável que eles simplesmente quebrem ou se percam.
Responder2
Isso pode acontecer quando o virtualgeometria do discoé detectado incorretamente. Primeiro tente reiniciar antes de continuar.
Aviso :Não acho que isso possa ser prejudicial para sua chave USB, mas se você não quiser correr nenhum risco, teste primeiro a formatação no Windows.
Este guia pressupõe que você dirige /dev/sdb
, adapte-o às suas necessidades.
Em um terminal, pesquise a saída de dmesg
tal linha sd 5:0:0:0: [sdb] 62545920 512-byte logical blocks: (32.0 GB/29.8 GiB)
. Isso informa:
- O número de setores (blocos lógicos):
62545920
- O tamanho dos setores:
512
bytes - O tamanho real da mídia:
32.0 GB/29.8 GiB
Agora calcule o tamanho exato da mídia em bytes: 62545920 * 512 = 32023511040 bytes = 30540 MiB
(29,82GiB).
Em seguida, encontre uma combinação CHS válida que leve a C * H * S = 62545920
Ou se você estiver com preguiça, com tamanho de bloco de 512 bytes, isso deve funcionar: C=30540
(o tamanho em MiB!), H=64
eS=32
Finalmente, execute sudo fdisk -C 30540 -H 64 -S 32
e escreva uma nova tabela de partição para corrigir.
Reinicie se as alterações não forem detectadas corretamente.
Responder3
Eu sei que este lugar é sobre unix
, mas quando tenho esse problema encontro uma windows
máquina e uso diskpart
(é necessário acesso de administrador). Porque quando fdisk
falha, isso simplesmente funciona; talvez ajude alguém.
Não posso tentar as instruções agora, mas deve ser algo como:
list disk
, select disk i
, clean
, create partition primary
, format fs=fat32 quick
, active
, assign
, exit
.
E o tamanho do seu stick USB agora está OK (mas é claro que você perdeu seus dados).
Também estou interessado em uma maneira equivalente de conseguir isso com o Linux.
NB: Não tenho certeza se o tamanho errado indica que dd
falhou. De qualquer forma, não se esqueça de anexar && sync
ao seu dd
comando.