![]() |
|
Сайт 3DNews | Регистрация | Правила | Справка | Пользователи | Календарь | Поиск | Сообщения за день | Все разделы прочитаны |
|
![]() ![]() |
Опции темы | Опции просмотра |
![]() |
[включить плавающее окно] #1 | |
![]() Автор темы Регистрация: 23.04.2019
|
Восстановление файла без $MFT
В одном из регионов нашей необъятной случилась ситуация при которой: 1. сервер с бекапами не выполнял свою функцию; 2. RAID-контроллер (9361-8i) подвергся воздействию "квалифицированных" специалистов (навтыкали вместо участников массива дисков из других массивов - по логам контроллера видно, что запускалась переиниализация); 3. тип RAID и состав дисков не известен, ФС развалена. Осталось админов сжечь, тогда можно сказать, что вообще ничего не существовало. Я не специалист по восстановлению данных, вывезти диски за пределы серверной не представляется возможным (не спрашивайте почему), поэтому копаем HEX в Read-only. Все попытки совместить диски, найти разделы, $MFT, файлы оказались безуспешны. В ходе раскопок был выявлен начальный сектор mdf-файла (MS SQL база), из которого удалось извлечь примерно 70% информации. Как я понимаю, остальная конфигурация находится в других секторах, список которых хранится в $MFT. Есть надежда, что $MFT был убит не полностью и мы сможем прочитать информацию по данному файлу. Но поиски пока ни к чему не привели. Я понимаю, что это нетривиальная задача, но возможно кто-то сможет подсказать направление раскопок. Возможно, имеются иные признаки или ссылки между блоками секторов одного файла? Не уверен, но есть высокая вероятность расположения файла на одном физическом носителе. |
|
![]() |
![]() |
![]() |
[включить плавающее окно] #2 |
![]() Регистрация: 08.02.2019
|
Чем уже проводились поиски? Поиск проводился на каждом потенциальном участнике массива?
|
![]() |
![]() |
![]() |
[включить плавающее окно] #3 |
![]() Автор темы Регистрация: 23.04.2019
|
Икали DMDE, R-Studio, WinHex и проч.
Судя по всему $MFT таблица потеряна окончательно. Нашел только пару записей FILE0, и те созданы при попытке восстановления загрузчика "женскими докторами". Опытным путем посмотрел на тестовом стенде хранение данных в $MFT на примере БД в 10 ГБ. Она состоит из двух кластеров, в начале каждого находится запись "INDX(" (49 4E 44 58 28 00). Копаю в этом направлении. Надеюсь, верном. |
![]() |
![]() |
![]() |
[включить плавающее окно] #4 |
![]() Регистрация: 08.02.2019
|
Что касается собственно вопроса, то без его записи можно восстановить по результату сигнатурного поиска, но если файл фрагментирован, то восстановится лишь первый фрагмент.
Но это если нет записей вообще, хотя не факт что это так - это я исходу из того, что (судя по сообщению с другого места) поиск производился по начальной сигнатуре файловой записи. Но в случае каких то сбоев бывают различные ситуации, в том числе такие, при которых файловая запись смещается на несколько байтов, или бывает вкрапление мусорных байтов. Если же какие то записи всё таки найдены, то хоть и суперничтожный, но шанс имеется. Это относится к сильнофрагментным файлам; причём таким, которые подвергались дефрагментации штатными средствами винды. В этом случае запись о размещении файла находится в нескольких записях и если даже нет начальной, то можно найти остальные (главное знать номер родительской записи). В случае недефрагментированного файла здесь можно уповать лишь на то, что потеряна лишь начальная запись, в которой хранятся данные только первого фрагмента и именно его уже нашли. Если же дефрагментация делалась, но тут может образоваться квазиконструкция при которой файл будет записан практически одним фрагментом, но при этом иметь кучу записей, в каждой из которых будет запись об одном фрагменте. Это связано с тем, что виндовый дефрагментатор не может избавится от расширенного атрибута. Ну и всё это, конечно же, актуально для файла расположенного на определяемом адресном пространстве - типа одного физического диска или собранного массива. PS. Кстати, в другом месте тебе написали про "чудоторящий" DE и что с ним никто рядом не стоял. Спору нет, программа уникальная, но она сама ничего не сделает. Да и есть не факт что нужны суперспособности - а случаи когда та же R-studio находила участников массива тоже имеются. PS. ответ написан до появления твоего сообщения и уже не буду менять его а добавлю следующее. В DMDE смотрел результаты поиска не открытием тома а просмотром записей MFT, причём с включением и мелких? Лог хотя бы одного поиска имеется? Добавлено через 1 минуту Цитата
(druoleg) »
в начале каждого находится запись "INDX(" (49 4E 44 58 28 00)
Добавлено через 8 минут Опять же, предположим что ты найдёшь все такие блоки и они будут относиться к базе. А есть ли в них что то, что позволит однозначно идентифицировать их расположение в структуре? Ну вот типа как у той же MFT есть номера записей (вариант того что могут быть дублирующие мусорные записи пока не рассматриваю).. Добавлено через 13 минут Цитата
(druoleg) »
посмотрел на тестовом стенде хранение данных в $MFT на примере БД в 10 ГБ.
|
![]() |
![]() |
![]() |
[включить плавающее окно] #5 |
![]() Автор темы Регистрация: 23.04.2019
|
![]()
Спасибо за помощь.
Данные восстановить не удалось. Но удалось выяснить, что перед поломкой RAID отработал DiscCrypt (злоумышленникам привет). Очень качественный провал. Базы рабочей нет, смотрели на полугодовой бекап. |
![]() |
![]() |
![]() |
[включить плавающее окно] #6 |
![]() Регистрация: 30.12.2004
Адрес: Новосибирск
|
Цитата
(druoleg) »
Очень качественный провал.
Цитата
(druoleg) »
Осталось админов сжечь, тогда
__________________
С уважением, Олег Р. Смирнов |
![]() |
![]() |
![]() |
[включить плавающее окно] #7 |
![]() Регистрация: 08.02.2019
|
Цитата
(Smirnoff) »
Всячески одобряю.
Ты же вроде сам админишь. Неужели до сих пор не сталкивался с таковыми? |
![]() |
![]() |
![]() |
[включить плавающее окно] #8 |
![]() Регистрация: 31.10.2003
Адрес: Москва / GPON 100мбит
|
А что за тип рейда?
У меня бывало терялись данные и обычные программы для восстановления не доставали ничего кроме картинок. Но для дисков Seagate есть прога достающая всё вообще и без потерь. Seagate_FILE_RECOVERY_v2.0 рекомендуется. Работает на ура только с дисками Seagate. |
![]() |
![]() |
![]() |
[включить плавающее окно] #9 |
![]() Регистрация: 29.06.2004
|
Цитата
(geran) »
А что за тип рейда?
Цитата
(druoleg) »
3. тип RAID и состав дисков не известен
__________________
Хочешь помочь новичку — делай вместе с ним. Хочешь помочь старику — делай вместо него. Хочешь помочь мастеру — отойди и не мешай. А хочешь помочь Таргитаю — сам Таргитай. |
![]() |
![]() |
![]() |
[включить плавающее окно] #10 |
![]() Регистрация: 08.02.2019
|
geran
Не стоит давать столь громогласные заявления не уточняя подробности ситуации. Потому как подобное потом тиражируется и некоторые даже верят в истинность написанного. Один из примеров подобного - то что переформатирование помогает восстановлению данных. Не исключаю что одному из миллиарда такое и "помогло", но вот остальным это только ухудшило ситуацию. |
![]() |
![]() |
![]() |
[включить плавающее окно] #11 |
![]() Регистрация: 31.10.2003
Адрес: Москва / GPON 100мбит
|
Цитата
(9285) »
Не стоит давать столь громогласные заявления
Цитата
Один из примеров подобного - то что переформатирование помогает восстановлению данных.
|
![]() |
![]() |
![]() |
[включить плавающее окно] #12 |
![]() Регистрация: 08.02.2019
|
geran
Это никак не получится. Надо просто пользоваться нормальным ПО и всё возможное восстановится. А формат физически удаляет некоторый обьём данных - тут всё зависит от конкретной ситуации. Из более менее свежего - на хоботе был случай, когда кроме формата пострадавший ещё и переразметил диск в другом стиле, плюс ещё яндекс диск успел кое-что переписать. Как результат - примерно 170 тысяч записей MFT унеслись в нирвану. |
![]() |
![]() |
![]() |
[включить плавающее окно] #13 |
![]() Регистрация: 31.10.2003
Адрес: Москва / GPON 100мбит
|
Да, всё плохо. А вот как забекапить MFT я так и не нашел. Я читал что запись MFT присутствует не ровно в самом начале а где-то со смещением и тогда вероятность перезаписи ее при быстром форматировании очень мала. Длинные файлы конечно не удасться восстановить а размером с кластер или последовательно ряд кластеров в одном файле это вполне. по моему
Кабы не писали матерьялы по этому вопросу эзоповым языком то и всем было бы легче. Последний раз редактировалось geran; 27.04.2019 в 14:07. |
![]() |
![]() |
![]() |
[включить плавающее окно] #14 |
![]() Регистрация: 08.02.2019
|
geran
А смысл если она динамично изменяется? Или если произошли какие то деструкции при том же изменении размера раздела и часть даже свежих записей имеет неактуальные сведения? Бэкапить надо сами данные. Ну а если всё таки хочется забэкапить MFT то это можно сделать в дисковых редакторах - в том же DMDE, в "папке" Metadata он есть целиком (не считая списков расширенных атрибутов). Добавлено через 7 минут Расположение записи и её фрагментация зависит от используемого форматера. Воздействие последующего формата тоже зависит от него же. При этом не стоит забывать что кроме перезаписи какой то части записей MFT перезаписывается, как минимум, поляна двух крупных метафайлов - $LogFile и $Bitmap. Первый занимает примерно 64 мега - и вот если он попадёт на бывший фрагмент MFT, то накроется 64 тысячи записи. Или не попадёт на записи MFT а на те же однокластерные файлы - прикинь сколько их уничтожится. PS. Дело не в языке, а в том что надо знать хотя бы базовые моменты и то, что многое зависит от конкретной ситуации (как в случае используемых форматеров). |
![]() |
![]() |
![]() |
[включить плавающее окно] #15 |
![]() Регистрация: 30.12.2004
Адрес: Новосибирск
|
Цитата
(9285) »
Во всех остальных случаях виновником является хозяин-скупердыяй.
Ты же вроде сам админишь. Неужели до сих пор не сталкивался с таковыми? Цитата
(druoleg) »
1. сервер с бекапами не выполнял свою функцию;
Про пп 2. и 3. - даже говорить бессмысленно; что толку обсуждать ушлёпков, возомнивших себя админами? Цитата
(geran) »
Кабы не писали матерьялы по этому вопросу эзоповым языком то и всем было бы легче.
![]()
__________________
С уважением, Олег Р. Смирнов |
![]() |
![]() |
![]() |
[включить плавающее окно] #16 |
![]() Регистрация: 08.02.2019
|
Smirnoff
СПОЙЛЕР »
Я читаю внимательно, в том числе и в других местах (*), к тому же знаю что не всегда стоит верить написанному.
![]() Полугодовой бэкап то есть - а за полгода мало ли что сменилось. В том числе могли старых админов сократить а нанять таких, которые за миску супа не могут разобраться. Не, в "жирные" годы я бы согласился с тобой, но сейчас есть немало примеров когда и вполне серьёзные организации начинают экономить (в том числе на IT). (*) Цитата с другого места (осзона) Руководство не мое, я тут в роли "спасителя" после "женских докторов". Для нашей организации это репутационные потери (хотя мы 3 года не допускались к этим серверам теми же безопасниками и уже спасали их 3 года назад после шифровальщика на том же сервере), а для заказчика кадровые. Не хочется чтобы автор темы воспринял написанное в свой адрес (тем более что в жизни был случай когда я тоже "затыкал пробоину"), но если речь идёт о репутационных потерях, то почему не посылают человека понимающего типа того, что написано выше про MFT, а по большому счёту - спеца, в том числе со своим оборудованием (те же писи3000 есть и внешние), который может от имени фирмы поработать на месте? Дорого? А как же репутация? |
![]() |
![]() |
![]() |
[включить плавающее окно] #17 |
![]() Регистрация: 30.12.2004
Адрес: Новосибирск
|
__________________
С уважением, Олег Р. Смирнов |
![]() |
![]() |
![]() |
[включить плавающее окно] #18 |
![]() Регистрация: 08.02.2019
|
Smirnoff
СПОЙЛЕР »
Причём здесь безопасники и клиентские тараканы?
Ну да, админы-кАзлы и всё уже случилось. но если всё так серьёзно, то почему не посылается человек, который не будет спрашивать на форумах (не такие уж и сложные) вопросы? Тем более если речь идёт о репутационных "прибылях"? |
![]() |
![]() |
![]() |
[включить плавающее окно] #19 |
![]() Регистрация: 30.12.2004
Адрес: Новосибирск
|
СПОЙЛЕР »
Цитата
(9285) »
почему не посылается человек, который не будет спрашивать на форумах (не такие уж и сложные) вопросы?
![]()
__________________
С уважением, Олег Р. Смирнов |
![]() |
![]() |
![]() |
[включить плавающее окно] #20 |
![]() Регистрация: 08.02.2019
|
Smirnoff
СПОЙЛЕР »
Я думаю что уже написал ранее. Если их не допускали, то о каких репутационных потерях речь?
Если нет штатного спеца, то таковой нанимается. Это если реально хочется подтвердить репутацию а не изображать херню". |
![]() |
![]() |