У мене є 2 Гб SD-карти, які я підключаю до комп'ютера через безконтактний USB-адаптер. Спочатку SD-карта була неформатованою, тому я дав їй таблицю розділів msdos і загальний розділ FAT32.
Я використовую SD-карту в квадрокоптері, в якому зберігаються зображення і відео, і коли я знову відкрив його на комп'ютері, я міг бачити файли, але у картці була помилка введення / виводу. Тому я продовжую форматувати його знову, після того, як все інше не вдасться, і тоді я не можу це зробити. (Я не пам'ятаю жодної конкретної помилки для цієї конкретної дії).
Потім я намагаюся dd if=/dev/zero of=/dev/sdb
на ньому, щоб побачити, чи буде він зараз відформатований. Я намагаюся відформатувати його знову (за допомогою GParted в Linux) і перед записом на карту я бачу, що SD Card все порожнє, без таблиці розділів. Я намагаюся створити таблицю розділів msdos, але SD-карта, здається, не приймає записи з GParted. Кожен раз, коли я сканую, GParted читає порожній блок.
Я намагаюся прочитати розділи картки fdisk і розлучилися і обидва успішно читають таблицю розділів msdos; fdisk виявляє розділ з файловою системою FAT32 з правильним розміром, розділений лише визначає розмір розділу.
З цього моменту кожна спроба записувати що-небудь на SD-карту не вдасться. Жодних помилок не повідомляється, але кожен раз, коли я читаю SD-карту або з fdisk, або з розділеною, результати будуть однаковими.
Я спробував такі команди, як
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
і досі нічого не змінюється. Цей короткий тест перевіряє, що картка анулює записи,
> $ 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
Все, що я отримую 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
Ця картка нова. Єдине, що пише, зроблено для нього, де ті, що я згадував тут, так що мені важко повірити, карта пошкоджена. Чи можна щось зробити, щоб виправити це?