Данная заметка не касается «яблочной» тематики. Вернее касается, но не совсем. Краешком так 🙂 Так как «MacDaily – это блог о Apple, и не только…», то ничего преступного в этом, надеюсь, нет 😉
Поговорим о восстановлении данных с «упавших» файловых систем, в частности с NTFS. Ввиду того, что сторонние NTFS драйверы под Mac часто «ломают» файловую систему NTFS, возникает необходимость в её восстановлении средствами Windows, и если chkdsk не в состоянии исправить свою ФС, а данные терять ну ни как нельзя, то проще всего восстановить их программой…WinHex. Да, WinHex – это «виндовый» HEX-редактор, вы не ошиблись, и у него есть замечательная (и при этом достаточно малоизвестная) функция для «парсинга» файловых систем. Я не знаю всех принципов работы этой функции, но знаю одно: WinHex’у абсолютно «фиолетово» что там с таблицей файлов или MFT так как «смотрит» он непосредственно на сами файлы оставшиеся на «упавшем» разделе. Для чистоты эксперимента я попытался специально «уложить» файловую систему NTFS на своей тестовой флешке, чтоб потом восстановить с неё данные. Делал это, кстати, из-под OS X Mountain Lion используя свой метод активации режима «чтение/запись» на NTFS. Но все мои старания с выдёргиванием флеш-драйва «на горячую», во время копирования на него массива файлов, ни к какому «падению» ФС не привели. Я даже специально потом докидывал и удалял, перемещал и создавал новые файлы…но хоть бы хны. То есть некоторые файлы становились как бы скрытыми, но их достаточно легко было скопировать (т.е. восстановить). Ну да ладно, не вышло у меня с живым примером, но от своей затеи отказываться не буду. Покажу сам принцип того, как делается восстановление данных при помощи WinHex. Поехали…
Естественно, нам нужны три основных компонента:
- Windows 2000, XP, Vista, 7 или 8 (можно на «виртуалке»);
- WinHex (я использую версию 12, она у меня стабильно работает);
- Свободное место для восстановленных данных.
Подключаем накопитель с «рухнувшей» файловой системой. Windows обычно определяет наличие разделов на таких накопителях, но ни как не позволяет на них зайти (или позволяет зайти, но при этом накопитель выглядит как пустой). Так же в свойствах диска обычно пишется, что используемая на носителе файловая система формата RAW. Знакомые симптомы? – Это основные признаки того, что файловая система «слетела». Приступим к восстановлению данных:
Запускаем WinHex и в меню выбираем Tools > Open Disk… F9:
В открывшемся окне выбираем свой накопитель (у меня он называется MD) и нажимаем кнопку OK:
После «парсинга» файловой системы (может продолжаться до нескольких минут и зависит от скорости обмена данными, объёма накопителя и его состяния) пред глазами появляется следующая картина:
Как это всё понимать? Давайте в кратце разберём:
- Внизу отображается HEX-код – это данные в «побитовом» виде для каждого файла/папки. Выглядит страшно, но нам с ними работать не нужно.
- Далее группа «файлов» и «папок» название которых начинается со знака «$» A. Это на самом деле не файлы не папки, а служебные данные файловой системы (в данном примере служебые данные файловой системы NTFS). Имено их поврждение и приводит к «падению» файловой системы. WinHex отображает их в таком виде для более лёгкого восприятия. Мы их не рассматриваем и вообще даже не трогаем (чтоб ещё хуже не сделать).
- Следующая группа файлов с красным крестиком B. Это удалённые файлы. Если вы очистили Корзину, то при помощи WinHex их можно восстановить (по крайней мере есть большая вероятность их восстановления). Любителям форматировать карты памяти на мыльницах может очень даже пригодиться данная функция 😉 В данном примере можно заметить, что у меня все файлы с красным крестиком по 0 байт. На самом деле это так из-за того, что они даже не успели скопироваться на мой флеш-драйв когда я его «хардкорно» выдернул из USB порта (выше упомянал, что хотел намеренно уложить ФС, но не вышло).
- И последнее – это обычные файлы и папки C. Их как раз чаще всего и нужно восстановить.
Как же восстановить файлы с убитой файловой системы при помощи WinHex? – А очень даже легко:
- Выбираем необходимые файлы и папки (можно использовать Control + «клик» для множественного выделения);
- На выбранном делаем правый клик и из контекстного меню выбираем пункт Recover/Copy… C
- Выбираем место для сохранения данных;
- Нажимаем OK и…
- Ждём!
В процессе восстановления WinHex может «вести диалог», на предмет того, что делать с повреждёнными файлами или что писать в файл вместо «BAD» секторов (можно забивать вместо BAD’ов нули, что иногда позволяет спасти некоторые важные данные). Ну а на последок краткие советы в случае краха любой файловой системы:
- Не паниковать!
- Не форматировать накопитель!
- Произвести проверку и восстановление файловой системы из родительской ОС (для FAT/ExFAT/NTFS – Windows, для EXT – Linux, Для HFS/Mac OS Extended – Mac OS X, ну так далее). Если проверка/восстановление диска не меняет ситуацию в лучшую сторону, то нужно пробовать утилиты для восстановления данных: WinHex, R-Studio, утилиты от Acronis (и так далее).
P.S.: Надеюсь данная заметка будет хоть немного полезна. Желаю всем непадающих файловых систем 😉
А если WinHex показывает все секторы как unreadable? Также:
Cannot read from Sector 0…1 of WD Elements 1023. Запрос не был выполнен из-за ошибки ввода/вывода на устройстве.
Запрос не был выполнен из-за ошибки ввода/вывода на устройстве.
Это больше похоже не на проблемы с ФС, а на проблемы с «железом»: контроллер полетел или может «головам» капец. Что с ним вообще случилось то?
Отсоединение “на горячую”. Режим “чтение/запись” активировал как по прошлой статье. Из линукса удаётся залезть на винчестер, при копировании возникают проблемы.
А какая версия WinHex? Последня 16-я версия с официального сайта у меня тоже не работала. Я пользуюсь 12-й версией.
Восстановление файлов и системы, после удаления файлов, форматирования и удаления раздела жесткого HDD диска. GetDataBack for NTFS, Zero Assumption Recovery.
А не проще ли использовать Partition Table Doctor?
Возможно и проще. Я Partition Table Doctor не пробовал.