Можно ли исправить проблему, когда microSD карта показывает размер всего 512 КБ?

У меня возникла проблема с картой памяти micro SD объемом 32 ГБ, которая сейчас отображается как 512K. При попытке создать новую таблицу разделов с использованием различных инструментов (таких как gparted или fdisk) ничего не меняется — после завершения манипуляций все данные сбрасываются на ноль. Ниже представлена дополнительная информация для диагностики. Есть ли возможность восстановить карту, или стоит отправить её в мусор? 

```bash
# lsblk | grep sdb
sdb      8:16   1   512K  0 disk
```

```bash
# hdparm -I /dev/sdb

/dev/sdb:

ATA device, with non-removable media
Standards:
    Likely used: 1
Configuration:
    Logical     max     current
    cylinders   0       0
    heads       0       0
    sectors/track 0     0
    --
    Logical/Physical Sector size:           512 bytes
    device size with M = 1024*1024:           0 MBytes
    device size with M = 1000*1000:           0 MBytes 
    cache/buffer size  = unknown
Capabilities:
    IORDY not likely
    Cannot perform double-word IO
    R/W multiple sector transfer: not supported
    DMA: not supported
    PIO: pio0
```

```bash
# fdisk -l /dev/sdb
Диск /dev/sdb: 512 KiB, 524288 байт, 1024 секторов
Disk model: STORAGE DEVICE  
Единицы: секторов по 1 * 512 = 512 байт
Размер сектора (логический/физический): 512 байт / 512 байт
Размер I/O (минимальный/оптимальный): 512 байт / 512 байт
```
  • 12 ноября 2024 г. 9:43
Ответы на вопрос 2
Проблема, с которой вы столкнулись, указывает на то, что ваша карта microSD, когда-то имевшая объём 32 ГБ, теперь распознаётся как устройство размером всего 512 КБ. Это может быть вызвано несколькими факторами:

1. **Повреждение файловой системы**: Иногда повреждение файловой системы может привести к неправильному отображению размера устройства. Если вы не сделали резервную копию данных, эта проблема может быть сложной для решения.

2. **Блокировка или сбой карты памяти**: Карты microSD могут выйти из строя или быть повреждены, что может привести к снижению их ёмкости. Иногда это связано с выходом из строя контроллера на самой карте.

3. **Картельный шифратор или вредоносное ПО**: Возможно, что на карту памяти была установлена какая-то программное обеспечение, уменьшающее её recognised size (например, подделка под microSD).

4. **Проблемы с совместимостью или чтением**: Убедитесь, что адаптер или устройство, через которое вы читаете карту памяти, работает исправно. Попробуйте подключить карту к другому устройству.

### Попытки восстановления

Вот несколько шагов, которые можно предпринять для попытки восстановления карты:

1. **Форматирование карты**:
   - Попробуйте использовать `mkfs` для создания файловой системы. Однако это приведёт к потере всех данных:
     ```bash
     sudo mkfs.vfat /dev/sdb
     ```

2. **Используйте `dd` для удаления старого раздела**:
   - Попробуйте удалить существующие разделы и создать новый:
     ```bash
     sudo dd if=/dev/zero of=/dev/sdb bs=512 count=1
     ```
   - Затем попробуйте создать новую таблицу разделов с помощью `fdisk` или `parted`.

3. **Проверка и восстановление**:
   - Используйте утилиты для проверки и восстановления карты, такие как `chkdsk` на Windows или `fsck` на Linux, но помните, что `fsck` может не сработать на устройствах, которые не монтируются.

4. **Используйте специализированное программное обеспечение**:
   - Программы, такие как `TestDisk`, могут помочь в восстановлении разделов.
   - Если карта всё равно отображается как 512 КБ, попробуйте использовать программы вроде SDFormatter.

5. **Диагностика с помощью утилит**:
   - Утилиты, такие как H2testw и F3, могут помочь тестировать и подтверждать фактический объём карты памяти. Они проверят, отображается ли размер правильно и можно ли записывать данные.

Если, даже после всех перечисленных шагов, карта всё ещё отображается как 512 КБ, это, скорее всего, указывает на аппаратное повреждение. В этом случае, скорее всего, будет разумнее заменить карту на новую.
В мусор.
Похожие вопросы