1.9 KiB
Mail-Graveyard — bauen & benutzen
1. Bauen
./compile.sh
Holt htmx ins frontend-js/dist, macht go mod tidy und baut ein statisches
Binary für Linux und Windows (mail-graveyard / mail-graveyard.exe).
2. Konfig
cp config.json.example config.json
config.json (bleibt lokal, ist ge-.gitignore-t) setzt nur App-Sachen:
Bind/Port, Admin-Login, DB-Pfad, mbox-Wurzel und das Forward-SMTP (nur fürs
manuelle Weiterleiten aus dem Viewer). Die Umzugs-Konten legst du im Browser
an, nicht hier.
3. Starten (Web)
./mail-graveyard # lauscht auf 127.0.0.1:8087
Browser auf http://127.0.0.1:8087, mit Admin-Login aus config.json.
Oberfläche im Outlook-2013-Look: Reiter Postfächer (Konten anlegen: Quelle
alt → Ziel neu, Sicherheits-Modus tls/starttls/none, „Test" prüft beide
Logins), Reiter Umzug (starten + Fortschritt), Reiter Betrachten
(lokale mbox durchsehen, einzeln weiterleiten).
4. Starten (CLI — Cutover)
Ohne Web, z. B. als Cronjob oder Dauerlauf im Umzugsfenster:
./mail-graveyard --run all # einmalig alle Konten (Delta)
./mail-graveyard --run dr-gold --watch # ein Konto, Delta-Schleife bis Stop
Dank Message-ID-Cache kopiert jeder Lauf nur Neues — beliebig oft wiederholbar
ohne Dubletten. Für den Dauerlauf reicht nohup/systemd/Aufgabenplanung.
5. Sicherheit
Tool hält fremde IMAP-Passwörter und kann Mails senden → Default bind
127.0.0.1. Falls remote nötig: hinter Caddy + /vadmin-Mail-2FA. config.json
und *.db nie committen.
6. Reihenfolge bei einem echten Umzug
- Ziel-Postfächer beim neuen Hoster anlegen (
archiv-…,temp-…). - Konten im Browser eintragen, „Test" grün.
--runlaufen lassen, im Betrachten-Reiter / mbox stichprobenartig prüfen.- Während der Umstellung
--watchfür das Delta laufen lassen. - Domain portieren; danach zeigt der neue Hoster auf die Zielpostfächer.