9

Это флэш-накопитель Patriot 8 ГБ, который я активно использовал с большим количеством данных. Сегодня это обнаружено, но все данные пропали: (ПРАВКА, по крайней мере, некоторые данные все еще там, но таблица разделов пропала)


РЕДАКТИРОВАТЬ @Sathya (спасибо) вот соответствующий вывод из sudo fdisk -l:

Disk /dev/sdc: 8019 MB, 8019509248 bytes
247 heads, 62 sectors/track, 1022 cylinders
Units = cylinders of 15314 * 512 = 7840768 bytes

Disk /dev/sdc doesn't contain a valid partition table

Похоже, что это /dev /sdc, с этими 8 ГБ ... и без таблицы разделов.

Я попытался смонтировать /dev /sdc (а затем dmesg | tail):

/media> sudo mount /dev/sdc mytmp
mount: wrong fs type, bad option, bad superblock on /dev/sdc,
       missing codepage or other error
       In some cases useful info is found in syslog - try
       dmesg | tail  or so

/media> dmesg | tail
[   24.300000]  sdc: unknown partition table
[   24.320000] sd 2:0:0:0: Attached scsi removable disk sdc
[   24.370000] usb-storage: device scan complete
[   26.870000] EXT2-fs error (device sdc): ext2_check_descriptors: Block bitmap for group 1 not in group (block 0)!
[   26.870000] EXT2-fs: group descriptors corrupted!
[   50.420000] unhashed dentry being revalidated: .DCOPserver_eeepc-brendanma__0
[   50.430000] unhashed dentry being revalidated: .DCOPserver_eeepc-brendanma__0
[   50.430000] unhashed dentry being revalidated: .DCOPserver_eeepc-brendanma__0
[ 5565.470000] EXT2-fs error (device sdc): ext2_check_descriptors: Block bitmap for group 1 not in group (block 0)!
[ 5565.470000] EXT2-fs: group descriptors corrupted!

EDIT @Col: результаты тестдиска

Disk /dev/sdc - 8013 MB / 7642 MiB - CHS 1022 247 62
Current partition structure:
     Partition                  Start        End    Size in sectors

Partition sector doesn't have the endmark 0xAA55

После того, как я нажал [proceed] , он говорит:

Structure: Ok.


Keys A: add partition, L: load backup, Enter: to continue

"Структура: Хорошо." кажется обнадеживающим ... сделает ли "A: добавить раздел" мои старые данные доступными (если они все еще там), или это сделает новый, свежий раздел?

Другой вариант - « [ MBR Code ] Write TestDisk MBR code to first sector » - было бы лучше сделать это?


РЕДАКТИРОВАТЬ Я обнаружил, что, по крайней мере, некоторые из моих данных все еще находятся на флэш-накопителе, используя приведенное ниже, и ищите текст на английском языке меньше (например, "the"):

cat /dev/sde | tr -cd '\11\12\40\1540-\176' | less

(Диск изменился с "/dev/sdb" на "/dev/sde", потому что сегодня я подключил несколько дополнительных дисков). Я узнал, что "/dev/sde1" будет первым разделом; и "/dev/sde" - это весь диск. Поскольку Unix обрабатывает эти устройства как файлы, вы можете использовать на них все обычные файловые команды Unix, например, cat , а затем обрабатывать их, как любой другой поток данных. Приведенный выше tr удаляет непечатаемые символы («\40» - это пробел, который я хотел сохранить). В менее, вы можете использовать "/" для поиска, аналогично Vim.

Как я могу вернуть свои данные (если они все еще там)? Если повреждена только таблица разделов, есть ли стандартный "инструмент восстановления разделов"? Есть ли способ "перераспределить", не удаляя все?

4 ответа4

6

Возможно, стоит запустить тестовый диск на устройстве, похоже, ваша таблица разделов всплыла. Testdisk должен быть в состоянии восстановить ваши данные.

1

Не волнуйтесь, ваши данные не исчезли - вы правы в том, что диск не был смонтирован, независимо от того, что говорит графический интерфейс.

Вы можете смонтировать его, выполнив (как root) что-то вроде:

mount /dev/sdb1 /media/Patriot\ Memory

Где я думаю, что sdb1 относится к вашей флешке - это может быть sdc1 или sdd1

1

В то время как возможно перестроить таблицу разделов, первое, что вы должны сделать, это сделать изображение устройства. Вы можете сделать это с помощью dd if=/dev/sdb of=~/memstick.img - изменяя пути по мере необходимости.

Как только вы это сделаете, запустите PhotoRec, который сможет извлекать любые файлы, которые там находятся. Если у вас есть все, что вам нужно, отформатируйте флешку и начните заново, если нет, попробуйте дальнейшее восстановление данных.

1

ddrescue - инструмент, который вам нужен. Я не думаю, что вы сможете спасти таблицу разделов и получить доступ к данным любым другим способом, основываясь на результатах, которые вы опубликовали на testdisk и т.д.

http://www.forensicswiki.org/wiki/Ddrescue

ddrescue - это инструмент для восстановления данных. Он копирует данные из одного файла или блочного устройства (жесткий диск, компакт-диск и т.д.) В другой, изо всех сил пытаясь спасти данные в случае ошибок чтения.

Основная операция ddrescue полностью автоматическая. То есть вам не нужно ждать ошибки, останавливать программу, читать журнал, запускать его в обратном режиме и т.д.

Если вы используете функцию лог-файла ddrescue, данные спасаются очень эффективно (считываются только необходимые блоки). Также вы можете прервать спасение в любое время и возобновить его позже в той же точке.

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

Если у вас есть две или более поврежденных копии файла, cdrom и т.д., И вы запускаете ddrescue для всех из них по одному с одним и тем же выходным файлом, вы, вероятно, получите полный и безошибочный файл. Это связано с тем, что вероятность наличия поврежденных областей в одних и тех же местах в разных входных файлах очень мала. Используя файл журнала, только вторые и последующие копии считывают только необходимые блоки.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .