Восстановите файлы с диска NTFS с поврежденными секторами

Несколько ночей назад я создал резервную копию своих данных на внешнем жестком диске NTFS USB емкостью 500 ГБ. Затем я отформатировал свой компьютер, переустановил Ubuntu и начал возвращать данные с внешнего жесткого диска.

К сожалению, некоторые файлы повреждены, и Ubuntu не может их скопировать. Та же проблема возникает, если я вхожу в систему с помощью Windows 7.

Дисковая утилита обнаруживает с помощью SMART, что есть «несколько плохих секторов».

Некоторые файлы совершенно не повреждены, но другие файлы не могут быть доступны (ни прочитаны, ни скопированы ...), хотя они отображаются в nautilus и показывают правильный размер файла.

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

Я также подумал об использовании ddrescue , чтобы я мог, по крайней мере, иметь копию диска низкого уровня, но я не уверен, что для этого нужно использовать для восстановления данных !!! [ 115]

5
задан 5 June 2012 в 02:41

3 ответа

Проблема решена! Я знаю, что это не связано с Ubuntu, но я думаю, что это может быть полезно для других.

Я обнаружил, что Window chkdsk может решить проблему, потому что Ubuntu не поддерживает NTFS как хорошо, как это делает Windows. На выполнение задач ушло несколько часов / дней (просто сканирование Windows со всеми активированными параметрами), но в итоге мне удалось восстановить 99,98% данных.

4
ответ дан 5 June 2012 в 02:41

Если диск имеет нечитаемые секторы. Один из возможных вариантов - создать его образ с помощью dd , заставив его игнорировать поврежденные сектора, а затем смонтировать этот образ для чтения полезных данных.

Создать образ диск

Используйте команду sudo fdisk -l , чтобы идентифицировать ваш USB-диск, обратите внимание на его путь к устройству, он должен выглядеть примерно так / dev / sd [*] , где [*] - буква, обозначающая ваш USB-накопитель.

Если вы точно знаете путь к накопителю, который хотите скопировать, вы можете использовать dd , чтобы создать его образ и использовать optio ns, чтобы продолжить чтение после неудачной попытки чтения данных

dd if=/dev/hd[*] of=/foo_path/foo_image conv=noerror,sync

. При этом будет прочитано устройство / dev / sd [*] , выведено на / foo_path / foo_image и ошибки чтения будут игнорироваться. / foo_path / foo_image не должен находиться на том же диске, который вы читаете.

Итак, допустим, вы использовали sudo fdisk -l и обнаружили, что ваш USB-накопитель - / dev / sdb , затем вы можете использовать любую из этих команд для создания образа, просто заменив / dev / hd [*] на / dev / sdb .

Подключение файла образа для чтения данных

Вам нужно создать точку монтирования, назовите ее / mnt / ddimage

sudo mkdir /mnt/ddimage

Теперь подключите к ней только что созданный образ

mount /foo_path/foo_image /mnt/ddimage -o loop

Теперь вы должны быть может читать любые полезные данные из клонированного образа диска.

2
ответ дан 5 June 2012 в 02:41

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

Установить (ubuntu)

sudo apt-get install gddrescue

Создать образ

 sudo ddrescue -d -r3 /dev/sda1 test.img test.logfile

Это создаст образ в текущем каталоге с именем test.img диска / dev / sda1 . Конечно, вы можете сделать резервную копию всего диска, а не одного раздела. (Параметр r указывает ему трижды повторить попытку сбойных секторов - не забудьте файл журнала, иначе это не сработает) ddrescue также позволяет вам прервать / возобновить процесс, что действительно приятно. Не забудьте установить правильный размер блока: -b «размер блока», если вы получаете ошибки в -d «прямой режим»

Монтирование файла образа

Создайте папку, в которую вы хотите смонтировать образ и смонтировать образ

sudo mkdir /mnt/mybackup
mount test.img /mnt/mybackup -o loop

Проверить из следующего для получения дополнительной информации: https://www.gnu.org/software/ddrescue/manual/ddrescue_manual.html https://www.technibble.com/guide-using-ddrescue-recover-data/ https: //apple.stackexchange.com/questions/39504/best-way-to-copy-all-files-ignoring-errors

4
ответ дан 5 June 2012 в 02:41

Другие вопросы по тегам:

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