Dies ist eine alte Version des Dokuments!
Wird eine schon archivierte E-Mail erneut importiert, wird dieses mit Hilfe der Duplikatserkennung festgestellt. In diesem Fall wird die archivierte Datei nicht verändert und die zu importierende E-Mail wird mit Hilfe des Tokenizers analysiert. Anschließend wird der Index-Eintrag der E-Mail gelöscht und durch die aktualisierten Index-Daten des Tokenizers neu beschrieben.
Dieses Vorgehen kann beispielsweise sinnvoll werden, wenn der Tokenizer ein vorher nicht bekanntes Dateiformat unterstützt und E-Mails mit diesen Anhängen besser gefunden werden sollen.
Zur Re-Indexierung eines Containers müssen alle E-Mails einmal neu gelesen und indexiert werden.
Um einen Container komplett zu re-indexen, ist es erforderlich, alle E-Mails aus dem Repository erneut zu importieren. Für den Re-Import werden die E-Mails aus dem Repository in das Inbox-Verzeichnis übertragen.
Im Repository-Verzeichnis liegen die E-Mails als gezippte Dateien in einem erweiterten RFC822-Format. Die Dateien enthalten einen speziellen Header mit internen Metainformationen sowie die eigentliche E-Mail.
Für den Re-Index muss zuerst dieser Header abgetrennt werden. Danach muss die E-Mail "atomar" in die Inbox geschrieben werden.
Zur Vereinfachung des Imports stellen wir das Perl-Script benno-bennobox2eml zur Verfügung. Dieses durchsucht das Repo-Verzeichnis nach den Archivdateien, extrahiert die Header und schreibt die E-Mails atomar in das Inbox-Verzeichnis.
Usage: ./benno-bennobox2eml [-h] [-d] [-v] [-m <num>] -a <archive directory>
[-e <export directory]
-a archive directory
-e export files to this directory (default current archive directory)
-d dry run
-m <num> max files in inbox directory
-v verbose
Beispiel-Aufruf:
./benno-bennobox2eml -a /srv/benno/archive/repo -e /srv/benno/inbox