Rekursives Löschen von Mail in Cyrus

Postfix, QMail, Sendmail, Dovecot, Cyrus, Courier, Anti-Spam
theomega
Userprojekt
Userprojekt
Posts: 704
Joined: 2003-01-27 14:36

Rekursives Löschen von Mail in Cyrus

Post by theomega » 2006-08-22 23:59

Hallo Leute,
ich habe in einem Cyrus 2.x Server ca. 100 Mail-Accounts mit teilweise mehreren Unterordnern. Ich möchte jetzt alle Accounts und alle Ordner nach Mails durchsuchen die eine bestimmte Zeichenkette im Titel tragen und diese Mails dann löschen.
Ich habe nun festgestellst das unter /var/spool/imap/... jede Mail in einer Datei gespeichert ist, wäre es also wirklich so einfach das ich mit einem grep prüfe ob der String vorkommt und wenn ja die Datei lösche? Gibt es nicht noch eine Datenbank die dann kaputt ist weil die Mails fehlen? Wie löst man sowas richtig?

Danke
TO

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Rekursives Löschen von Mail in Cyrus

Post by Roger Wilco » 2006-08-23 00:08

Du kannst die einzelnen Dateien von Cyrus löschen, musst dann aber die Metadaten mit (cyr)reconstruct neu aufbauen. ipurge(8) kann leider nicht nach bestimmten Subjects löschen.

theomega
Userprojekt
Userprojekt
Posts: 704
Joined: 2003-01-27 14:36

Re: Rekursives Löschen von Mail in Cyrus

Post by theomega » 2006-08-23 00:27

Hy,
danke für den Tipp, leider habe ich keinen befehl der cyr-reconstruct oder so ähnlich heißt, genausowenig einen Befehl der nur reconstruct heißt wie in der Doku erwäht. Die Frage ist: Welches Paket muss man auf einem Gentoo-System installieren um diese Binary zu erhalten. Oder ist es etwa garkeine Binary sondern ein Script?

Was ich aber gefunden habe ich der Befehl "reconstruct [mailbox]" im cyradm. Das Problem dort ist nur: Ich muss den Befehl für jeden Ordner erneut ausführen. Wäre zwar mit einem Script auch möglich aber geht es nicht simpler?

Danke
TO

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Rekursives Löschen von Mail in Cyrus

Post by Roger Wilco » 2006-08-23 00:30

theomega wrote:leider habe ich keinen befehl der cyr-reconstruct oder so ähnlich heißt, genausowenig einen Befehl der nur reconstruct heißt wie in der Doku erwäht.

Code: Select all

$ equery b /usr/lib/cyrus/reconstruct
[ Searching for file(s) /usr/lib/cyrus/reconstruct in *... ]
net-mail/cyrus-imapd-2.2.12-r4 (/usr/lib/cyrus/reconstruct)
theomega wrote:Wäre zwar mit einem Script auch möglich aber geht es nicht simpler?
AFAIK nein.

theomega
Userprojekt
Userprojekt
Posts: 704
Joined: 2003-01-27 14:36

Re: Rekursives Löschen von Mail in Cyrus

Post by theomega » 2006-08-23 01:52

Hy,
oki, hatte keine komplette suche durchgeführt, ging davon aus das es im Path liegt. Dank dir, sollte ich hinbekommen.

Wie siehts aus wenn ich folgendes machen will "Lösche alle Mails die ungelesen sind und die "SPAM" im Titel haben"? Geht das? Weil in den Dateien steht leider das flag "gelesen" nicht, da bringt mir also das löschen wenig!

Gruß
TO

rootsvr
Posts: 538
Joined: 2005-09-02 11:12

Re: Rekursives Löschen von Mail in Cyrus

Post by rootsvr » 2006-08-23 09:41

Ich hoffe das sind alles Deine Mailaccounts, oder deinen Kunden haben unterschrieben, das Du ihnen (wenn dein SA versagt hat) vielleicht wichtige Mails weglöschen darfst..

Ohne Schriftliches ja Du darfst würde ich das nicht machen.. können die einzelnen User doch wunderbar per Sieve Script selber machen

theomega
Userprojekt
Userprojekt
Posts: 704
Joined: 2003-01-27 14:36

Re: Rekursives Löschen von Mail in Cyrus

Post by theomega » 2006-08-23 11:57

Jein, es sind zwar nicht meine Accounts, aber die Leute haben mir die volle Administration zugesichert die auch enthält das ich zu "Administrativen" Zwecken Mails löschen darf.
Um das Problem zu spezifizieren: Ich vergebe kostenlose Mailaccounts mit POP3 und Imap und einer Mailadresse mit meiner (recht bekannten) Seite als Domains. Die sind recht begehrt. Das Problem ist nur: Die Leute holen sich die Mailadresse, holen dann aber ihre Accounts nie ab. Teilweise geht das seit mehreren Jahren so. Dementsprechend viele Mails (zu 99% natürlich Spam) haben sich dort teilweise angesammelt. Ich will jetzt zumindest die Mails löschen die mein Spamchecker als Spam erkannt hat, dann will ich Quotas setzten.

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Rekursives Löschen von Mail in Cyrus

Post by Roger Wilco » 2006-08-23 12:12

Ich würde das dann aber anders machen. Als Spam erkannte Mails in einen eigenen IMAP-Folder verschieben (etwa INBOX.Spam) und diesen dann alle 90 Tage oder so löschen bzw. die Mails, die 90 Tage alt sind und darin liegen. Das geht wunderbar mit ipurge(8).

sledge0303
RSAC
Posts: 767
Joined: 2005-09-16 00:06
Location: Berlin-Reinickendorf

Re: Rekursives Löschen von Mail in Cyrus

Post by sledge0303 » 2006-08-23 12:13

An deiner Stelle würde ich das so machen:

Den Spamordner nach einigen Tagen automatisch nach Eingang der Mails aufräumen lassen. Wenn du Mailaccounts vergibst, wirst den Leuten ja sowas wie eine AGB vorlegen, entweder akzeptieren oder ablehnen.
Schreibst du rein, dass Spammails nach 14 Tagen automatisch gelöscht werden, diese Regel mit Anerkenntnis akzeptieren, bist auf der sicheren Seite.
Bestehende Postfachbenutzer werden mit Änderungen in den AGBs bekannt gemacht, sollten diese Leute sich innerhalb einer gesetzten Frist nicht akzeptieren, könntest theoretischerweise das gesamte Konto löschen.
Kommt aber immer drauf an, wie deine vorherige AGB aufgebaut wurde.
Hast du weder eine AGB noch irgendetwas anderes mit deinen Usern vereinbart, wird es schwierig ...

theomega
Userprojekt
Userprojekt
Posts: 704
Joined: 2003-01-27 14:36

Re: Rekursives Löschen von Mail in Cyrus

Post by theomega » 2006-08-23 12:26

Hallo,
wie ich es in Zukunft mache ist mir klar, nur habe ich im Moment die Situation das ich ca. 5GB Spammails in den 100 Accounts rumfliegen habe. Die Leute scheinen Ihre Accounts garnichtmehr abzurufen. Ich vermute ich gebe jedem 30 Tage Zeit der Account aufzuräumen und wer sich nicht innerhalb von 30 Tagen einloggt dessen Account lösch ich einfach!

Mal ne andere Frage:
Was passiert wenn ich jetzt auf die riesigen Postfächer ein Quota setzte (kleiner als der jetzige Bedarf)? Klar, derjenige kann keine neuen Mails mehr bekommen, aber werden dann alte gelöscht?

Danke
TO

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Rekursives Löschen von Mail in Cyrus

Post by Roger Wilco » 2006-08-23 12:45

theomega wrote:Mal ne andere Frage:
Was passiert wenn ich jetzt auf die riesigen Postfächer ein Quota setzte (kleiner als der jetzige Bedarf)? Klar, derjenige kann keine neuen Mails mehr bekommen, aber werden dann alte gelöscht?
http://cyrusimap.web.cmu.edu/imapd/over ... #quotamail

theomega
Userprojekt
Userprojekt
Posts: 704
Joined: 2003-01-27 14:36

Re: Rekursives Löschen von Mail in Cyrus

Post by theomega » 2006-08-23 13:05

Hy,
das beantwortet doch aber imho meine Frage nicht oder? Mir ist klar was passiert wenn eine neue Mail ankommt, aber was passiert mit den Vorhandenen? Werden die gelöscht bis die Mailbox-Größe wieder kleiner als die Quotas sind?

Danke
TO

Roger Wilco
Administrator
Administrator
Posts: 6001
Joined: 2004-05-23 12:53

Re: Rekursives Löschen von Mail in Cyrus

Post by Roger Wilco » 2006-08-23 13:17

theomega wrote:Werden die gelöscht bis die Mailbox-Größe wieder kleiner als die Quotas sind?
Nein. Der Benutzer kann aber erst wieder Mails empfangen, wenn die Größe der Mails < zugeweisene Quota ist.