Показать сообщение отдельно
Непрочитано 26.05.2019, 17:55   #9
9285
Мужской Бывалый
 
Регистрация: 08.02.2019
Ну а теперь обещанное.
Для лучшего понимания написанного далее сделал пару образов диска" (запакованы в отдельные архивы) с небольшим разделом на котором записан один файл.

Если посмотреть его запись MFT в исходном состоянии (образ original.bin) то можно увидеть что его данные начинаются в кластере 2556. И если открываем этот файл то убеждаемся что в указанном кластере заголовок соответствующего файла. Попутно замечаем какое значение LBA у начального сектора кластера - в данном примере 20511 (скриншот 0-original.png)

Теперь представим что поставлена задача изменить размер раздела за счёт сдвижки начала (как нужно было тебе).
И тут рассмотрим два варианта.

1. Нужно сдвинуть начало раздела на 24000 секторов (3000 типичных 8 секторных кластеров).
Учитывая что файл расположен ранее, его необходимо переместить в новое место. Программа определяет что есть свободное место в (условном) кластере 3142 и далее и вносит изменение в запись файла, прописывая этот кластер.
Но само перемещение файла ещё не сделано и, в силу каких то "препятствий", происходит сбой. Откат координат не сделан и в дальнейшем, при открытии файла увидим нули а не искомые байты (скриншот 1-resizev1.png).

2. Опять же, нужно сдвинуть начало радела, но теперь его начало будет в районе кластера 1556. Программа оставляет файл на месте, но изменяет его стартовый кластер в записи MFT относительно нового начал раздела. Делает изменение и опять срыв -имитация такого состояния в образе resize_v2.bin
По карте кластеров как бы файл в нужном месте, но при открытии аналогично первому случаю (2-resizev2.png)

Оба приведённые варианта смоделированы и приведены просто для понимания как это может происходить и почему может возникать сдвиг, о котором я предположил.

Ну а теперь собственно что делать в этой ситуации чтобы определить размер сдвига.
1. Нужно найти контрольный файл, причём этот файл должен быть на исследуемом участке в единственном экземпляре.
В методе Antech за таковой принимается текстовый файл, но можно взять любой, который позволяет однозначно понимать что найденный далее файл именно тот, запись которого есть в MFT.
В данном примере будем считать что на диске как бы есть много файлов, но в качестве контрольного (реперного) файла выбираем Снимок.png
При выборе файла надо учесть то, что он должен относится к тем форматам у которых есть характерные сигнатуры, так как будет использоваться сигнатурный поиск (кстати, текстовый фал к таковым не относится).

2. Запускаем программу, позволяющую искать файлы по сигнатурам.
В моём примере я использую скриншоты с DMDE, но можно использовать и другие, тем более что у DMDE нет предпросмотра найденного и потребуется сначала восстанавливать файлы а потом просматривать. В таком случае удобнее использовать программы имеющие предварительный просмотр - главное чтобы эти программы находили нужное и показывали данные о его размещении.

Итак, запускаем сканирование, по окончании которого видно найденный файл. Открываем результаты RAW-сканирования и находим указанный файл. Видно что его начало находится в секторе 20511 (эта цифра фигурирует и в имени файла и в его ID) - что собственно и было замечено в самом начале .
После чего сравниваем это значение с тем что показывает при открытии этого же файла при простом открывании его через запись MFT.
Разница значений и есть смещение.
Естественно, желательно найти несколько таких контрольных файлов, если смещение идентично то это позволит сделать нужный сдвиг в массиве и получить нужные данные у которых именно такое смещение.
Как то так.
Миниатюры
Нажмите на изображение для увеличения
Название: 0-original.png
Просмотров: 87
Размер:	43.2 Кб
ID:	55040   Нажмите на изображение для увеличения
Название: 1-resizev1.png
Просмотров: 76
Размер:	33.5 Кб
ID:	55041   Нажмите на изображение для увеличения
Название: 2-resizev2.png
Просмотров: 82
Размер:	31.0 Кб
ID:	55043   Нажмите на изображение для увеличения
Название: 3-full-scan.png
Просмотров: 81
Размер:	13.9 Кб
ID:	55044   Нажмите на изображение для увеличения
Название: 4-open_file.png
Просмотров: 91
Размер:	28.5 Кб
ID:	55045  

9285 вне форума  
Ответить с цитированием