Таблица разделов повреждена (флешка)

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.

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

13рен
источник
@ChrisF Этот ответ не работает ... и я не могу ответить на него там - так что у меня есть здесь (см. Редактирование вопроса).
13рен
@ 13ren - Если вы используете один и тот же OpenID на обоих сайтах, вы можете связать свои учетные записи. Однако на данный момент, пожалуйста, напишите team@superuser.com и попросите их провести ассоциацию. Тем временем я объединил два вопроса.
BinaryMisfit
1
@ 13ren - я знаю, ты не можешь ответить там. Я включил ссылку для модераторов, чтобы они могли найти вопрос.
ChrisF
Спасибо ChrisF, извините, что я неправильно понял. Я отправил письмо, как вы предложили. @Diago спасибо за слияние, я могу комментировать сейчас. Я отправлю им письмо снова.
13рен
1
Вставьте диск и выполните команду sudo fdisk -l, и не могли бы вы обновить пост с выводом?
Сатьяджит Бхат

Ответы:

6

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

седло
источник
@Col спасибо, но у меня нет testdisk - я попробовал sudo testdiskи man testdisk. Я просто установил apt-get, и он обнаружил / dev / sdc с 8 ГБ (как добавлено в вопрос). Я не хочу идти дальше, пока не пойму немного больше.
13
@Col, я попробовал это, и добавил результаты к вопросу
13
Если вы нервничаете, возможно, стоит использовать dd для создания образа флешки на вашем жестком диске, я думаю, что это должно работать даже с несмонтированным диском, поскольку он копирует бит за битом.
полковник
Спасибо, это хорошая идея! Но как мне скопировать файл с помощью dd? Страница man говорит о "файлах" ... о, / dev / sdc считается "файлом"? Поэтому я могу просто скопировать весь файл / dev / sdc в файл соглашения, например " dd /dev/sdc mybackupfile?
13ren
1
Теперь у меня есть несколько очков репутации, так что я могу проголосовать за вас!
13
1

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

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

mount /dev/sdb1 /media/Patriot\ Memory

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


источник
Или даже sda1, в зависимости от возраста компьютера (то есть, если
жесткие диски
@Michiel спасибо - но там написано "mount: Среда не найдена". Использование sdc1 и sdd1 дало «mount: special device / dev / sdc1 не существует», что заставляет меня думать, что «sdb1» существует, но что-то не так. Это работало в течение нескольких месяцев, и ничего не изменилось, о чем я знаю - поэтому я боюсь, что это какой-то сбой оборудования
13рен
1

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

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

Dentrasi
источник
1

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

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

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

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

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

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

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

Сэм Данлэп
источник