Repository navigation
MailBurg 1.7.8
Diese Fassung kommt fast vollständig aus dem ersten echten Serverbetrieb:
Am 5. und 6. Oktober 2026 ist ein Geschäftsarchiv mit 70.133 Mails auf
einen Windows Server 2025 gezogen. Was dabei aufgelaufen ist, steht hier.
Der Fehler, der sofort herausmusste
Der Abruf im Dienst ist nie gelaufen – seit es ihn gibt.
In server/abruf.py stand for k in Kontenliste(), und Kontenliste
ist kein Behälter, sondern hat einen (.konten). Das wirft in der
ersten Zeile jedes Durchgangs:
MailBurg-Abruf: Abruf fehlgeschlagen: 'Kontenliste' object is not iterable
Wie es aussah, ist dabei das Eigentliche. Der Fehler landet im weiten
except der Abrufschleife – das dort mit gutem Grund steht, damit ein
klemmendes Postfach den Faden nicht beendet – und von dort ins
Ereignisprotokoll. Der Dienst lief weiter, die Statusseite meldete
"abruf":"alle 30 Minuten", und das Archiv bekam nichts dazu.
Wer MailBurg als Dienst betreibt, sollte diese Fassung einspielen.
Ob es Sie betrifft, sagt ein Blick ins Ereignisprotokoll:
Get-WinEvent -FilterHashtable @{LogName='Application'; ProviderName='MailBurgServer'} -MaxEvents 20 |
Format-List TimeCreated, MessageSteht dort die Zeile oben, hat Ihr Dienst nie Post geholt. Das Archiv
ist unversehrt – es fehlt nur alles, was seitdem hätte dazukommen
sollen. Nach dem Update holt der erste Lauf es nach.
Dass kein Test das gefunden hat, hat einen Grund, der hierher gehört:
Es gab welche für Takt, Pause, ein klemmendes Postfach und dafür, dass
die Schleife einen Fehler überlebt – also für alles um die Funktion
herum, nie für den Weg hinein. Jetzt läuft einer mit einer echten
Kontenliste durch genau diese Zeile.
Ein Fenster für die Servereinrichtung
Bis hierher ging das nur über die Kommandozeile: zehn Schritte, acht
davon ein abgetippter PowerShell-Befehl. Startete der Dienst danach
nicht, stand der Grund in einem Ereignisprotokoll, das man mit einem
weiteren Befehl durchsucht – man musste nur wissen, dass es das gibt.
mailburg-server-einrichten zeigt stattdessen eine Prüfliste:
Betriebssystem, Python, Pakete, Rechte, Archiv, Zugänge, Dienst,
Tresor, Abruf, Weboberfläche. Wo etwas fehlt, steht der Knopf daneben,
der es behebt. Unter Windows auch als eigene Datei
MailBurg-Server-Einrichten.exe, dieselbe Liste als Text über
--pruefen.
Die Postfachspalte lässt sich zuschieben
Auf einem 5:4-Bildschirm lagen die Postfächer quer über der
Trefferliste – die Trefferzahlen standen mitten in den Betreffzeilen.
Ursache: Ein Grid-Feld wird nie schmaler als sein längstes unteilbares
Wort, und eine Mailadresse ist für den Browser ein Wort. Behoben, und
dazu gleich das, was im Betrieb gefehlt hat: Der Knopf Postfächer
neben der Trefferzahl schiebt die Spalte auf und zu, der Zustand bleibt
gespeichert. Zugeschoben ist die Vorgabe – gesucht wird ohnehin
über alle Postfächer, und wer gezielt in einem sucht, nimmt die
ausführliche Suche.
Zwei Befehle, die beim Umzug fehlten
mailburg tresor entfernen KENNUNG nimmt einen Eintrag aus dem Tresor.
Das fehlte, weil ein Tresor vom Arbeitsplatz alle dortigen
Anmeldungen mitbringt – die Kontenliste lässt sich vorher filtern, der
Tresor nicht, denn er kennt keine Archive. Jeder Eintrag ist einzeln
verschlüsselt: Herausnehmen lässt die übrigen lesbar und braucht keinen
neuen Hauptschlüssel.
mailburg zugaenge ARCHIV anzeigename NAME "Vor Nachname" ändert den
Klarnamen. Bisher ging das nur im Einrichtungsfenster – also an dem
Ort, den es auf einem Server gerade nicht gibt.
Weiteres aus dem Umzug
- Die gebündelten pypdf-Meldungen bündeln jetzt wirklich. Gezählt wurde
die fertige Meldung, und pypdf setzt in fast jede Zahlen ein – also
war jede ihr eigener Eintrag. - Fehlt
fonttools, sagt MailBurg das mit dem Befehl daneben. Ohne das
Paket kommt pypdf an die Zeichentabelle eingebetteter Schriften nicht
heran, und das trifft gewöhnliche Geschäftspost. - Unter Windows wird eine verwaiste Sperrdatei jetzt weggeräumt.
os.kill(pid, 0)ist dort kein Anklopfen; der Weg geht jetzt über
OpenProcess. - Die Anleitungen sagen, dass der erkannte Text aus Scans beim Umzug
mitkopiert werden muss – er entsteht nicht beim Indexbauen.
Gemessenes statt Geschätztes
An einem echten Geschäftsarchiv mit 70.133 Mails und vielen
PDF-Rechnungen, auf einem Windows Server 2025 ohne poppler:
| Indexlauf über pypdf | 6075 s (101 Minuten, 11,6 Mails je Sekunde) |
| Suchindex danach | 1,07 GB |
| Rohdaten im Archiv | 19,2 GB |
Mit pdftotext aus poppler ist der Indexlauf ein Bruchteil davon.
2203 Tests, CI grün.