Восстановление данных с накопителя

Т.к. с образа восстанавливать данные будет быстрее, чем directly с флешки, нужно снять образ. Стоит пробовать и dd, и ddrescue (сам пакет называется gddrescue), особенно, если на флешке повреждены разделы.

Снятие образа

Узнай название устройства:

lsblk

dd:

sudo dd if=/dev/sdb1 of=/path/to/flash.img bs=512 status=progress

Если возникают ошибки “input/output error” при снятии образа - стоит:

  1. Поиграться со значением bs (block size), выставив значение больше или меньше
    Лично в моем случае, снятие образа с bs=4M не сработало, а с bs=512 сработало.
  2. Стоить plug/unplug флешку или попробовать другие USB гнезда.

Можно также попробовать ddrescue, который пытается читать данные в несколько проходов:

sudo ddrescue /dev/sdc1 flash.img ddrescue.log

Восстановление данных с

Осталось восстановить данные с образа с помощью testdisk или photorec. Там всё интерактивно и все кнопки для управления описаны.

testdisk sandisk32.img
# или
photorec sandisk32.img

Соус: Восстанавливаем в Linux информацию с «убитой» флешки

testdiskphotorecddrescuedd