Как восстановить данные из плохой SD-карты?

Для людей, которые принимают решение помнить только основные инструменты в повседневной работе, и готовый принять менее изящные и менее эффективные решения:

head -n $(grep -n pattern filename | cut -d: -f1) filename

Если эта команда будет для сценария затем, то я буду искать более изящный (и возможно эффективный) решения. Если это - одна команда времени или бросок далеко сценарий затем, я не забочусь.

23
06.04.2013, 17:52
5 ответов

Во-первых, на основе Вашего опыта со второй картой, кажется, что Ваше средство чтения повреждено и теперь повреждает карты, которые Вы вставляете в него. Прекратите использовать того читателя сразу и попытайтесь восстановить карту с другим читателем. Если Ваши данные во всей ценности, попытайтесь получить известного читателя с лучшим качеством, чем минимальная цена один.

Если карта просто частично нечитабельна и не абсолютно нечитабельная, первая попытка скопировать то, что Вы можете от карты до файла изображения. Не использовать dd для этого, поскольку это прекратит читать на первой ошибке. Используйте инструменты такой как dd_rescue или ddrescue. Оба инструмента пытаются захватить как можно больше данных из диска. Использование в качестве примера (/dev/sdc будучи устройством, соответствующим карте; если Вы не знаете, какой это, выполнено cat /proc/partitions и выберите тот, который, кажется, имеет правильный размер):

ddrescue -dr3 /dev/sdc card.image logfile

Так как похоже, что структура файловой системы повреждена (Ваши Ose предлагают форматировать диск, потому что они не видят допустимую файловую систему на нем), необходимо будет попытаться восстановить файлы индивидуально. К счастью, файлы изображений запускаются с распознаваемого заголовка, и существует много существующих инструментов вырезания, которые распознают изображения: В первую очередь, MagicRescue, PhotoRec (от производителей TestDisk), RecoverJPEG, …

Большинство этих инструментов доступно на типичных дистрибутивах Unix. Но если Вы предпочитаете, можно выполнить распределение специального назначения или другой живой CD включая средства восстановления, такие как SysRescueCD, Knoppix, CAINE

29
27.01.2020, 19:41
  • 1
    я думаю большая часть своей основы проблем от карт, распознаваемых как только 32 МБ, когда они должны быть 4 ГБ. И у меня нет способа сказать, каковы цилиндры низкого уровня, головы и секторы. –   08.06.2011, 02:49
  • 2
    @Tyler: Если Ваша карта не распознана в правильном размере аппаратными средствами, замените средство чтения сразу. Если Вы пытались копировать изображение и копию, остановленную из-за ошибок после 32 МБ, попробуйте еще раз с инструментом как ddrescue. Вы ничего не должны знать о цилиндрах/головах/секторах. –  Gilles 'SO- stop being evil' 08.06.2011, 03:02

Я рекомендовал бы TestDisk. Я использовал его успешно для восстановления файлов с поврежденного HDD. Я обычно использую распределение как TRK или SystemRescueCd.

8
27.01.2020, 19:41

Вы не детализировали о том, как данные потерялись. Если это - логическое удаление, и устройство не видело много записи, возможности восстановления данных хороши: очевидный совет состоит в том, чтобы пойти для TestDisk & Photorec. Конечно, традиционная рекомендация: защитите исходное устройство от записи, так или иначе, подвергните его наименее возможному взаимодействию. Лучший из всех, dd это на некоторой другой поддержке, отключите его и работа над файлом изображения. Если, с другой стороны, 'плохо' в подчиненных средствах, физически разрушенных, вещи становятся более жесткими, но необходимо попробовать все равно, потому что обычно незначительная часть блоков становится нечитабельной. Особенно на SD, которые имеют репутацию очень высокой износостойкости.

6
27.01.2020, 19:41
  • 1
    я не уверен, как, но карта не кажется физически поврежденной. И я не очень знаком с dd, поэтому как я мог бы восстановить изображение карты? Что конкретно я должен был бы сделать с изображением? –   07.06.2011, 20:33
  • 2
    Попытайтесь найти надежный способ подключить sd к ПК. Предположим, что Вы справляетесь, и неструктурированное устройство отображается на блочное устройство/dev/sda (используйте dmesg для знания его имени). Затем сделайте dd if=/dev/sda of=/mnt/hda1/image.dd bs=1M где/mnt/hda1 является точкой монтирования некоторой другой достаточно большой поддержки. Затем отключите sd, сделайте копию image.dd и работы над последним, таким образом, Вы не должны повторно включать SD. См. пошаговое руководство TestDisk на его домашней странице. Надо надеяться, от того, что Вы говорите, это кажется, что просто необходимо восстановить таблицу разделов/mbr.Удачи. –  user495100 07.06.2011, 21:29
  • 3
    @Tyler: не использовать dd, поскольку это останавливается на первой ошибке. Используйте что-то как ddrescue. –  Gilles 'SO- stop being evil' 08.06.2011, 01:53

PhotoRec из http://www.cgsecurity.org/ - свободный, с открытым исходным кодом, простой в использовании. Просто восстановленные загрузки фотографий семейства и видео от поврежденной SD-карты. Просто разархивируйте в папку, петляйте и укажите на него на диск.

9
27.01.2020, 19:41

Я использовал фоторекорд, который входит в тестовый диск пакета. Он отлично работал для меня, восстанавливая фотографии с песочного диска, который был поврежден моим телефоном.

2
27.01.2020, 19:41

Теги

Похожие вопросы