SD Card anula gravações

0

Eu tenho um cartão SD de 2 GB que eu conecto ao meu computador por meio de um adaptador USB sem chave. No início, o cartão SD não era formatado, então eu dei a ele uma tabela de partições msdos e uma partição FAT32 total.

Eu uso o cartão SD em um quadcopter que armazena imagens e vídeos nele, e quando eu o abri novamente no meu computador, pude ver os arquivos, mas houve um erro de entrada / saída no cartão. Então eu vou formatá-lo novamente, depois de tudo o mais falhar, e então eu não consigo fazer isso. (Não me lembro de nenhum erro específico para esta ação específica).

Então, tento dd if=/dev/zero of=/dev/sdb para ver se ele seria formatado agora. Eu tento formatá-lo novamente (usando o GParted no Linux) e antes de gravar no cartão, vejo que o cartão SD está todo vazio, sem uma tabela de partição. Eu tento criar uma tabela de partição msdos, mas o cartão SD parece não aceitar as gravações do GParted. Cada vez que eu digitalizo, o GParted lê um bloco vazio.

Eu tento ler as partições da placa com fdisk e parted , e ambas leem com sucesso a tabela de partições msdos; O fdisk detecta uma partição com um sistema de arquivos FAT32 com o tamanho correto, parted apenas detecta o tamanho da partição.

Deste ponto em diante, todas as tentativas de escrever qualquer coisa no cartão SD falharão. Nenhum erro é relatado, mas cada vez que eu leio o cartão SD com fdisk ou parted, os resultados são os mesmos.

Eu tentei comandos como

  • dd if=/dev/zero of=/dev/sdb bs=512 count=1
  • dd if=/dev/zero of=/dev/sdb bs=1M count=1
  • dd if=/dev/zero of=/dev/sdb
  • dd if=/dev/zero of=/dev/sdb1
  • dd if=/dev/urandom of=/dev/sdb
  • dd if=/dev/urandom of=/dev/sdb1

e ainda nada muda. Este pequeno teste verifica se o cartão está anulando as gravações, eu recon:

> $ sudo dd if=/dev/sdb of=/tmp/sdout0 bs=512 count=1                                                                             
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0,00201869 s, 254 kB/s

> $ sudo dd if=/dev/urandom of=/dev/sdb bs=512 count=1                                                                            
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0,0119276 s, 42,9 kB/s

> $ sudo dd if=/dev/sdb of=/tmp/sdout1 bs=512 count=1                                                                             
1+0 records in
1+0 records out
512 bytes (512 B) copied, 0,00187789 s, 273 kB/s

> $ diff -s /tmp/sdout0 /tmp/sdout1
Files /tmp/sdout0 and /tmp/sdout1 are identical

Tudo que recebo de dmesg é

[  733.852106] usb 2-3: new high-speed USB device number 6 using ehci-pci
[  733.985255] usb 2-3: New USB device found, idVendor=aaaa, idProduct=8816
[  733.985267] usb 2-3: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[  733.985275] usb 2-3: Product: MXT USB Device
[  733.985282] usb 2-3: Manufacturer: MXTronics
[  733.985288] usb 2-3: SerialNumber: 130818v01
[  733.986147] usb-storage 2-3:1.0: USB Mass Storage device detected
[  733.986663] scsi9 : usb-storage 2-3:1.0
[  734.984738] scsi 9:0:0:0: Direct-Access     MXT-USB  Storage Device   1308 PQ: 0 ANSI: 0 CCS
[  734.985124] sd 9:0:0:0: Attached scsi generic sg2 type 0
[  734.991101] sd 9:0:0:0: [sdb] 3934208 512-byte logical blocks: (2.01 GB/1.87 GiB)
[  734.991829] sd 9:0:0:0: [sdb] Write Protect is off
[  734.991839] sd 9:0:0:0: [sdb] Mode Sense: 03 00 00 00
[  734.992438] sd 9:0:0:0: [sdb] No Caching mode page found
[  734.992443] sd 9:0:0:0: [sdb] Assuming drive cache: write through
[  734.997992]  sdb: sdb1
[  735.000956] sd 9:0:0:0: [sdb] Attached SCSI removable disk

Este cartão é novo. As únicas gravações feitas a ele foram as que eu mencionei aqui, então acho difícil acreditar que a placa esteja danificada. Há algo que eu possa fazer para corrigir isso?

    
por Severo Raz 29.03.2015 / 12:17

0 respostas