Bem, pode-se tentar zerar o dispositivo de bloco bruto para ver se isso pode funcionar. Se você puder escrever para isso, poderá criar uma tabela de partições limpa, criar uma nova partição e formatá-la.
Suponha que o pen drive esteja em / dev / sdc, primeiro certifique-se de que / dev / sdc1 esteja desmontado:
umount /dev/sdc1
Veja se você pode limpar a tabela de partições, digamos, copiando um monte de zeros sobre os primeiros K
sudo dd if=/dev/zero of=/dev/sdc bs=512 count=16
Se isso funcionar, veja se você pode escrever zeros em todo o dispositivo sem que ele falhe. Para ver facilmente se o kernel não pode gravar no dispositivo, primeiro limpe as mensagens atuais do kernel e jogue-as fora usando:
sudo dmesg -c > /dev/null
.. então zerar todo o dispositivo:
sudo dd if=/dev/zero of=/dev/sdc bs=1M
.. isso vai demorar um pouco. dd será concluído quando o dispositivo de bloco não processado for completamente gravado ou um erro ocorrer.
Em seguida, verifique se o kernel reclamou do dispositivo, usando:
dmesg
.. se você vir uma carga de mensagens de erro, sabe que o dispositivo USB provavelmente não está em boas condições.
No entanto, se isso funcionar, execute o fdisk ou parted para criar as partições limpas, por exemplo, com fdisk eu uso:
sudo fdisk /dev/sdc
Command (m for help): n
Select (default p): p
Partition number (1-4, default 1): 1
First sector (2048-7796735, default 2048): <return>
Last sector, +sectors or +size{K,M,G} (2048-7796735, default 7796735): <return>
Command (m for help): t
Hex code (type L to list codes): 6
Command (m for help): w
.. note apenas pressione return para as perguntas Primeiro e Último setor, o fdisk irá escolher os padrões corretos (que serão diferentes do meu exemplo acima). E depois formate a partição com o VFAT:
sudo mkfs.vfat /dev/sdc1
e, em seguida, remova e insira novamente a unidade. Deve ser formatado de forma clara.