Комментарии 14
Интересно было бы послушать про особенности файловых систем, скользких мест и.т.д. Может, напишите цикл небольшой? А то этот пост немного рассказывает, хотелось бы больше.
Я могу написать про то же самое, но уже с точки зрения программирования. То есть какими API-функциями управляются эти метаданные, как выглядят структуры, как правильно формировать буферы и т.п. Про расширенные атрибуты у меня уже был пост, а про Object ID'ы и Reparse Points, пожалуй, можно будет написать по посту.
Можно подробнее об отказе от NTFS Object ID в последующих версих Антивируса Касперского? Вот тут технология iSwift описана теми же самыми словами: support.kaspersky.ru/faq/?qid=208636752
Версия довольно новая.
Версия довольно новая.
Вот здесь они описывают суть проблемы и упоминают о том, что в 8-й версии собираются изменить механизм работы iSwift. Я наблюдал за работой KIS 2011, при включенном iSwift никаких Object Id'ов не создаётся. При обзоре форумов видно, что сообщения о проблеме датируются 2008-м годом. Значит, проблема была исправлена после этого срока. Скорее всего (не берусь утвержать точно), вместо Object Id'ов теперь там применяются другие идентификаторы файла, которые не требуется создавать, а которые уже изначально имеются у каждого файла на NTFS, возможно это IndexNumber из структуры FILE_INTERNAL_INFORMATION.
amdf, у Вас уже несколько статей по внутренностям NTFS.
А вот представьте, я делаю небольшой раздел, например, 100 Мб. Затем форматирую его в NTFS, создаю на нём несколько директорий, пишу несколько файлов разного размера, играюсь с правами на файлы. Затем перегружаюсь в Linux и копирую командой dd весь NTFS раздел в файл. Затем образ NTFS раздела переношу в Windows, запускаю MS Viusal Studio С++, делаю mapping NTFS образа в память и…
Собственно говоря, мне нужно реализовать следующие функции: open, read, write, close, lseek, chdir, opendir, readdir, closedir, mkdir, remove, rmdir.
Иными словами, есть непреодолимое желание поработать с образом NTFS напрямую, без использования операционной системы.
Вопросы: Насколько реально? С чего начать? Где взять документацию на NTFS?
p.s. Использовать реализацию NTFS из ядра Linux по некоторым соображениям невозможно.
А вот представьте, я делаю небольшой раздел, например, 100 Мб. Затем форматирую его в NTFS, создаю на нём несколько директорий, пишу несколько файлов разного размера, играюсь с правами на файлы. Затем перегружаюсь в Linux и копирую командой dd весь NTFS раздел в файл. Затем образ NTFS раздела переношу в Windows, запускаю MS Viusal Studio С++, делаю mapping NTFS образа в память и…
Собственно говоря, мне нужно реализовать следующие функции: open, read, write, close, lseek, chdir, opendir, readdir, closedir, mkdir, remove, rmdir.
Иными словами, есть непреодолимое желание поработать с образом NTFS напрямую, без использования операционной системы.
Вопросы: Насколько реально? С чего начать? Где взять документацию на NTFS?
p.s. Использовать реализацию NTFS из ядра Linux по некоторым соображениям невозможно.
Можно не из ядра, можно ntfs-3g, которая на FUSE.
Можно смотреть исходники NTFS-3G, ещё можно посмотреть исходники NTFS Progs gnuwin32.sourceforge.net/packages/ntfsprogs.htm
Как минимум, разобраться со структурами и пробовать ими манипулировать.
Ещё можно почитать вот это: www.insidepro.com/kk/044/044r.shtml там в конце практическоая иллюстрация техники разбора файловой записи NTFS «руками».
Как минимум, разобраться со структурами и пробовать ими манипулировать.
Ещё можно почитать вот это: www.insidepro.com/kk/044/044r.shtml там в конце практическоая иллюстрация техники разбора файловой записи NTFS «руками».
Ещё можно почитать вот это: www.insidepro.com/kk/044/044r.shtml там в конце практическоая иллюстрация техники разбора файловой записи NTFS «руками».
Спасибо. Первый раз вижу подобную информацию на русском языке.
Здравствуйте. Использовав эту тулзу у меня возник один вопрос… Допустим я знаю object_id, как мне открыть файл или путь, на который ссылается этот самый object_id средствами системы? Т.е. без использования нештатных утилит, а именно штатных. Т.е. допустим я делаю файлы, делаю к ним object_id и забываю их имена, но потом хочу какрыть их, беря id из какого-либо текстового файла. Как это можно сделать?
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Четыре вида метаданных NTFS