Das Programmpaket benno-archive-tool stellt Werkzeuge zum direkten Bearbeiten des Indexes oder Repositories zur Verfügung. Mit dem Kommando
apt install benno-archive-tool
wird das Programm installiert.
Der Index ist durch den Benno Archive Daemon gelockt und muss vor der Arbeit mit diesem Tool gestoppt werden. Wir empfehlen vor Arbeiten am Index oder dem Repo, ein aktuelles Backup oder ein Snapshot des Systems zu erstellen.
systemctl stop benno-archivesystemctl start benno-archiveDie ID einer einzelnen E-Mail kann ein Benutzer mit der Rolle ADMIN per Web-Interface ermitteln. Hierfür suchen Sie die E-Mail im Archiv und zeigen per Menüpunkt „Original“ den Quelltext der E-Mail an. Im Kopf des Popup-Fensters wird die Benno-Id angezeigt (hier: 2017:01A44237B194DB22106EE00BF2E8B25C001B793E85AD1CCB27CB59D70209A29E00)
Eine größere Liste von E-Mails kann über das Logfile oder per Konsole mit dem Kommando benno-client mittels Suchanfrage erstellt werden. Die Liste aller E-Mails aus dem Jahr 2011 erstellen Sie wie folgt:
benno-client --limit 10000000 -q '(Date:[20110010000 TO 201131122359])' > /tmp/2011.list
Achtung: Der Parameter –limit gibt an, wieviele E-Mail IDs maximal ausgegeben werden sollen. Daher muss er größer als die Anzahl der E-Mails im fraglichen Zeitraum.
Falls die E-Mails eines anderen Containers als dem Standard-Container BennoContainer ermittelt werden sollen, wird dieser mittels -C $CONTAINERNAME übergeben.
Mit dem Benno-Archive-Tool ist es möglich, Operationen auf dem Index von Benno auszufüren. Hierbei geht es primär um das Löschen aus dem Index, Duplikatsuche und das Hinzufügen eines Tags
Mit dem Parameter -m wird die BennoID der zu löschenden E-Mail übergeben.
Mail löschen, wenn Aufbewahrungsfrist vorbei ist (10 Jahre).
benno-archive-tool -D -m 2020:12345678...
Der Zeitraum der Aufbewahrungsfrist berechnet sich aus der Differenz zum Index-Timestamp der E-Mail und dem aktuellen Zeitpunkt. Der Index-Timestamp wird mit Archivieren oder mit Re-Indexieren der E-Mail neu gesetzt.
Mit dem Schalter -md, bzw. --maildate wird der Zeitraum anhand des Date-Headers der E-Mail berechnet.
benno-archive-tool -md -D -m 2020:12345678...
benno-archive-tool -D -f -m 2020:12345678...
benno-archive-tool --delete --maillist mails.txtbenno-archive-tool --delete --maildate --maillist mails.txtbenno-archive-tool --delete --force --maillist mails.txtHiermit werden die E-Mails ausgeblendet und können nicht mehr gefunden werden. Die jeweilige E-Mail ist noch im Repo vorhanden und kann durch einen Re-Index wieder gefunden werden. Dieser Aufruf ist erheblich schneller und bietet sich bei einer großen Anzahl von E-Mails an.
'benno-archive-tool --INDEX-DELETE --maillist mails.txtCurrent Journal Datei liegt in einem anderen Ordner (seltener Fall. Standard ist das aktuelle Jahr vom Server)
benno-archive-tool -md -D -m 2020:12345678 -jy 2021
-D,--delete Delete mails from index and repo
-Do,--deleteorphans Delete orphan entries from index
-f,--force Delete mails without checking
retention period
-fe,--fileextension <FILEEXTENSION> File extension of the mail
-h,--help print this description
-i,--indexpath <INDEXPATH> Path of Index directory (default:
/srv/benno/archive/index)
-id,--INDEX-DELETE Delete only index entry without
checking repo
-j,--journalpath <JOURNALPATH> Path of Journal directory (default:
/srv/benno/archive/repo)
-jy,--journalyear <JOURNALYEAR> Current year to determine the
current.journal
-m,--mailid <MAIL> Select mailid
--maillist <MAILLIST> Select maillist file with mailids
-md,--maildate Take as retention period parameter
the mail date
-r,--repopath <REPOPATH> Path of Repo directory (default:
/srv/benno/archive/repo)
-s,--subdirs <SUBDIRS> Set the total amount of
Subdirectories
-sl,--subdirlen <SUBDIRLEN> Subdirlength
-tk,--tagkey <TAGKEY> Set Tagkey name here (Currently
only invisible possible)
-tv,--tagvalue <TAGVALUE> Set Tagvalue name here (Currently
only 1 or 0 possible)