Exchange edb на Linux - PullRequest
       31

Exchange edb на Linux

2 голосов
/ 11 сентября 2010

У меня есть файл edb 60 ГБ, и я хочу разбить базу данных на отдельные электронные письма. У меня нет никакой исходной информации о домене, поэтому я не могу просто запустить сервер 2k8 vm и подключить его там. Я добился некоторого прогресса в наивном подходе - извлекать двоичные данные (байты не 0x09, 0x0a, 0x0d и 0x20 - 0x7f) из файла (от 60 до 30 ГБ), а затем разбивать их на очевидные заголовки SMTP. Этот подход, похоже, не работает, потому что Exchange не хранит всю электронную почту вместе в непрерывном блоке, и он, кажется, дублирует большую часть электронной почты (это, вероятно, является артефактом обработки всего файла как файловой системы, а не выполнения что-то более разумное, например, позволить файловой системе быть файловой системой и просто хранить электронные письма в / var / mail или тому подобное).

Итак, вопрос в том, какие инструменты и документы для формата файлов базы данных Exchange скрыты в мире, который Google не может или не покажет мне?

1 Ответ

3 голосов
/ 11 марта 2011

Взгляните на работу Иоахима Меца. Он реверс-инжиниринг формата EDB и проанализировал базу данных обмена в ограниченном объеме. Это открытый исходный код, и даже есть некоторая документация по таблицам и столбцам:

http://sourceforge.net/projects/libesedb/files/

Однако это не делает больше, чем вы, казалось бы, достигли. Экспортирует все таблицы edb в отдельные файлы. Вам придется использовать предоставленную документацию и самостоятельно составлять электронные письма из битов и байтов, которые вы экспортируете из базы данных. Имейте в виду, что информация об электронных письмах и прикрепленных файлах довольно разбросана, и все столбцы имеют довольно загадочные названия. Вы должны сделать некоторые исследования и провести обратный инжиниринг самостоятельно, чтобы пройти через эти джунгли данных.

Поскольку проект с открытым исходным кодом, вы можете корректировать или расширять код и добираться туда, куда вы хотите, довольно легко.

...