QMail: Mails älter als 14 Tage löschen?!
-
- Posts: 21
- Joined: 2004-12-24 00:27
QMail: Mails älter als 14 Tage löschen?!
Hallo,
ich betreibe einen virtuellen Server (SuSE) wo QMail als Mailserver läuft.
Nun werden einige Postfächer schlicht nie abgerufen. Um ein Überlaufen zu verhindern, sollen alle Mails älter als 14 Tage gelöscht werden.
Gibt es da eine "fertige" Lösung (cron-script zum einbinden?)?
Wenn nein: reicht es die entsprechenden Dateien unter /var/qmail/mailnames/domain.de/name/Maildir/cur/ zu löschen?
Viele Grüße,
Basti
ich betreibe einen virtuellen Server (SuSE) wo QMail als Mailserver läuft.
Nun werden einige Postfächer schlicht nie abgerufen. Um ein Überlaufen zu verhindern, sollen alle Mails älter als 14 Tage gelöscht werden.
Gibt es da eine "fertige" Lösung (cron-script zum einbinden?)?
Wenn nein: reicht es die entsprechenden Dateien unter /var/qmail/mailnames/domain.de/name/Maildir/cur/ zu löschen?
Viele Grüße,
Basti
-
- Posts: 5923
- Joined: 2004-05-23 12:53
Re: QMail: Mails älter als 14 Tage löschen?!
Wenn das Postfächer von "Kunden" oder Mitbenutzern sind, würde ich mir das nochmal überlegen...Basti2003 wrote:Nun werden einige Postfächer schlicht nie abgerufen. Um ein Überlaufen zu verhindern, sollen alle Mails älter als 14 Tage gelöscht werden.
Wenn du "find" als fertige Lösung bezeichnest: Ja.Basti2003 wrote:Gibt es da eine "fertige" Lösung (cron-script zum einbinden?)?
Ja.Basti2003 wrote:Wenn nein: reicht es die entsprechenden Dateien unter /var/qmail/mailnames/domain.de/name/Maildir/cur/ zu löschen?
-
- Posts: 21
- Joined: 2004-12-24 00:27
Re: QMail: Mails älter als 14 Tage löschen?!
Danke für die Antwort.Roger Wilco wrote:Wenn das Postfächer von "Kunden" oder Mitbenutzern sind, würde ich mir das nochmal überlegen...Basti2003 wrote:Nun werden einige Postfächer schlicht nie abgerufen. Um ein Überlaufen zu verhindern, sollen alle Mails älter als 14 Tage gelöscht werden.
Wenn du "find" als fertige Lösung bezeichnest: Ja.Basti2003 wrote:Gibt es da eine "fertige" Lösung (cron-script zum einbinden?)?
Ja.Basti2003 wrote:Wenn nein: reicht es die entsprechenden Dateien unter /var/qmail/mailnames/domain.de/name/Maildir/cur/ zu löschen?
Handelt sich um den Server einer Schule und die Aktion wurde mit dem Schulleiter abgesprochen, also in die Richtung kein Problem ;-)
Zumal die Mails die dort eintreffen ja auch in Kopie weitergeleitet werden, aber eben dennoch im Postfach bleiben.
Funktioniert der hier beschriebene Lösungsweg?
http://www.rootforum.org/forum/viewtopi ... 243#264243
Code: Select all
`find /path/to/Maildir/Spam -ctime -30 -exec rm {} ;`
-
- Posts: 2138
- Joined: 2002-12-15 00:10
- Location: Bergheim
Re: QMail: Mails älter als 14 Tage löschen?!
Für soetwas gibt es Quota.
Ansonsten kann z.B. courier-imap alte eMails auch automatisch löschen.
Ansonsten kann z.B. courier-imap alte eMails auch automatisch löschen.
-
- Posts: 21
- Joined: 2004-12-24 00:27
Re: QMail: Mails älter als 14 Tage löschen?!
Aber was passiert denn, wenn in einem Postfach das vorhandene Limit von z.B. 20MB erreicht wird?oxygen wrote:Für soetwas gibt es Quota.
Ansonsten kann z.B. courier-imap alte eMails auch automatisch löschen.
Werden dann Mails abgewiesen?
Um das zu vermeiden, möchte ich ja alte "Restbestände" regelmäßig löschen....
Viele Grüße,
Basti
PS: Größere "Bastelaktionen" habe ich am Mailserver eigentlich nicht vor, da ich froh bin, dass der so stabil und zuverlässig läuft ;-) "Never change a running system" :-D
-
- Posts: 5923
- Joined: 2004-05-23 12:53
Re: QMail: Mails älter als 14 Tage löschen?!
Kommt auf die konkrete Konfiguration an. Wenn das Soft-Limit erreicht ist, erhält der Benutzer eine Warnung. Wenn das Hard-Limit erreicht ist, wird die Mail nicht mehr zugestellt. Dafür ist dann aber der MTA zuständig, nicht der IMAP-Server.Basti2003 wrote:Aber was passiert denn, wenn in einem Postfach das vorhandene Limit von z.B. 20MB erreicht wird?[
Werden dann Mails abgewiesen?
-
- Posts: 21
- Joined: 2004-12-24 00:27
Re: QMail: Mails älter als 14 Tage löschen?!
Aber um das zu vermeiden ist es doch der einfachste Weg, die Mails einfach regelmäßig zu löschen oder?Roger Wilco wrote:Kommt auf die konkrete Konfiguration an. Wenn das Soft-Limit erreicht ist, erhält der Benutzer eine Warnung. Wenn das Hard-Limit erreicht ist, wird die Mail nicht mehr zugestellt. Dafür ist dann aber der MTA zuständig, nicht der IMAP-Server.Basti2003 wrote:Aber was passiert denn, wenn in einem Postfach das vorhandene Limit von z.B. 20MB erreicht wird?[
Werden dann Mails abgewiesen?
-
- Posts: 2138
- Joined: 2002-12-15 00:10
- Location: Bergheim
Re: QMail: Mails älter als 14 Tage löschen?!
Eine gelöschte Mail fällt nach dem Gesetz unter Unterdrückung. Siehe:Basti2003 wrote: Aber um das zu vermeiden ist es doch der einfachste Weg, die Mails einfach regelmäßig zu löschen oder?
Eine Mail abzuweisen ist dagegen in Ordnung, da der Sender ja hierüber informiert wird (mailbox full).§ 303a StGB Datenveränderung:
(1) Wer rechtswidrig Daten (§ 202a Abs. 2) löscht, unterdrückt, unbrauchbar macht oder verändert, wird mit Freiheitsstrafe bis zu zwei Jahren oder mit Geldstrafe bestraft.
-
- Posts: 21
- Joined: 2004-12-24 00:27
Re: QMail: Mails älter als 14 Tage löschen?!
Funktioniert denn techn. gesehen dieser Weg?
http://www.rootforum.org/forum/viewtopi ... 243#264243
Habe so Grundkenntnisse, aber bin nun wirklich kein Profi ;-)
http://www.rootforum.org/forum/viewtopi ... 243#264243
Code: Select all
`find /path/to/Maildir/Spam -ctime -30 -exec rm {} ;`
-
- Posts: 21
- Joined: 2004-12-24 00:27
Re: QMail: Mails älter als 14 Tage löschen?!
Code: Select all
# `find /var/qmail/mailnames/domain.de/username/Maildir/cur -ctime -30 -exec rm {} ;`
rm: cannot remove `/var/qmail/mailnames/domain.de/username/Maildir/cur': Is a directory
-
- Posts: 5923
- Joined: 2004-05-23 12:53
Re: QMail: Mails älter als 14 Tage löschen?!
Schau dir den Parameter "-type" für find an.
-
- Posts: 21
- Joined: 2004-12-24 00:27
Re: QMail: Mails älter als 14 Tage löschen?!
Danke geht
-
- Posts: 21
- Joined: 2004-12-24 00:27
Re: QMail: Mails älter als 14 Tage löschen?!
Wie bekomme ich eine Schleife hin, dass im Ordner "mailnames/domain.de" den oben genannten Befehl für jeden benutzernamen ausführt`?
Der Befehl soll also auf UserA, UserB, UserC,.... alle angelegten Benutzer (=Ordner) angewendet werden.
Code: Select all
`find /var/qmail/mailnames/domain.de/userA/Maildir/cur/ -type f -ctime +30 -exec rm {} ;`
-
- Posts: 427
- Joined: 2006-10-03 01:31
Re: QMail: Mails älter als 14 Tage löschen?!
Code: Select all
echo /var/qmail/mailnames/domain.de/*/Maildir/cur/
-
- Posts: 538
- Joined: 2005-09-02 11:12
Re: QMail: Mails älter als 14 Tage löschen?!
Wie gesagt: Wenn ein Kunde sich irgendwann darüber beschwert das Du seine Mails gelöscht hast ist er im Recht und Du machst Dich strafbar (im schlimmsten Fall Knast für Dich). deshlab am besten wie schon gesagt Mails bei voller Mailbox nicht annehmen.
Sobald Du Mails annimmst bist Du (als Mailprovider dafür verantworlich das deine Kunde die bekommen.. und wenn der 6 Wochen in Uganda in Urlaub ist hat er trotzdem seine Unveränderten Mails vorzufinden..
Lass dir dringend von deinen Kunden schriftlich absegnen das sie ihre Mails gelöscht haben wollen, für mich wäre das ein ko Kriterium, da ich als Sammler auch noch Mails von 1998 habe)
Sobald Du Mails annimmst bist Du (als Mailprovider dafür verantworlich das deine Kunde die bekommen.. und wenn der 6 Wochen in Uganda in Urlaub ist hat er trotzdem seine Unveränderten Mails vorzufinden..
Lass dir dringend von deinen Kunden schriftlich absegnen das sie ihre Mails gelöscht haben wollen, für mich wäre das ein ko Kriterium, da ich als Sammler auch noch Mails von 1998 habe)
-
- Posts: 6
- Joined: 2006-11-28 00:22
Re: QMail: Mails älter als 14 Tage löschen?!
Basti2003 wrote:Wie bekomme ich eine Schleife hin, dass im Ordner "mailnames/domain.de" den oben genannten Befehl für jeden benutzernamen ausführt`?
Code: Select all
find /var/qmail/mailnames/domain.de/ -type d -mindepth 1 -maxdepth 1 -print0 | xargs -0 -iDIR find 'DIR/Maildir/cur/' -type f -ctime +30 -exec rm -f '{}' ;
Code: Select all
0 3 * * * root find /var/qmail/mailnames/domain.de/ -type d -mindepth 1 -maxdepth 1 -print0 | xargs -0 -iDIR find 'DIR/Maildir/cur/' -type f -ctime +30 -exec rm -f '{}' ;
Falls alle Maildateien ein gemeinsames Präfix oder Suffix aufweisen, sollte das sicherheitshalber in den zweiten find-Befehl mit rein, etwa so: -name "msg*"
Wenn es sich um kostenlose Mail-Accounts für Schüler einer bestimmten Schule handelt, ist das Löschen alter Mails sicher nicht ungerechtgertigt. Ich würde trotzdem darauf achten, daß den Usern dieser Umstand deutlich gemacht wird. (Welcome-Mails oder bei Webmail irgendwo statisch im HTML.) Das vermeidet Frust bei den Usern und hält dir dauernde Anfragen i.s.v. "Hilfe, meine Mails lösen sich auf!" vom Leib.
-
- Posts: 427
- Joined: 2006-10-03 01:31
Re: QMail: Mails älter als 14 Tage löschen?!
Wie wärs damit?
Code: Select all
find /var/qmail/mailnames/domain.de/*/Maildir/cur/ -type f -ctime +30 -exec rm {} ;
-
- Posts: 538
- Joined: 2005-09-02 11:12
Re: QMail: Mails älter als 14 Tage löschen?!
Auch da bin ich mir nicht sicher ob das nicht rechtlich bedenklich ist:ak wrote: Wenn es sich um kostenlose Mail-Accounts für Schüler einer bestimmten Schule handelt, ist das Löschen alter Mails sicher nicht ungerechtgertigt. Ich würde trotzdem darauf achten, daß den Usern dieser Umstand deutlich gemacht wird. (Welcome-Mails oder bei Webmail irgendwo statisch im HTML.) Das vermeidet Frust bei den Usern und hält dir dauernde Anfragen i.s.v. "Hilfe, meine Mails lösen sich auf!" vom Leib.
Taggen muß man sich schriftlich (Datenveränderung) genehmigen lassen, bei löschen ist es wohl immer dann problematisch, wenn es sich nicht um rein betriebliche Emails handelt (die eh alle dem Chef gehören).Die rechtlichen Schranken selbständiger Bekämpfungsaktionen durch die Anbieter liegen im Fernmeldegeheimnis, nach § 206 II StGB. Das Löschen oder Unterdrücken kann den Tatbestand der Datenunterdrückung nach § 303 a I StGB erfüllen.
Der Postbote darf auch nicht einfach deine Briefe wegschmeissen weil dein Postkasten voll ist.
Wo kein Kläger da kein Richter, ansonsten würde ich nen Anwalt konsultieren..
Siehe auch:
http://www.decus.de/slides/sy2005/05_04/1D04.pdf Seite 9
-
- Posts: 6
- Joined: 2006-11-28 00:22
Re: QMail: Mails älter als 14 Tage löschen?!
Das ist lesbarer, aber ich hielt es nicht für wünschenswert, weil sich der Ausdruck ab ca. 650 Usern in eine Shellzeile >32KB auflöst -- ein Wert, der in früheren Shells ein Limit darstellte.lucki2 wrote:Wie wärs damit?Code: Select all
find /var/qmail/mailnames/domain.de/*/Maildir/cur/ -type f -ctime +30 -exec rm {} ;
Aber wie ich selbst gerade herausgefunden habe, ist dieses Limit offenbar passé...
Nennen wir mein Beispiel also euphemistisch "portabel". 8)
Ähnliches gilt für das "-f" in "rm -f" -- wer will schon, daß ein cronjob hängt oder eine unnötige Fehlermeldung ausspuckt, nur weil ein User nachts um 3 ungünstigerweise seine Mailbox aufräumt.
-
- Posts: 427
- Joined: 2006-10-03 01:31
Re: QMail: Mails älter als 14 Tage löschen?!
Sorry aber Dein find macht nicht viel anderes: da kommt genau das selbe auf stdout und geht dann nach xargs. Find overhead + ein Prozess mehr + x spawns hast Du durch Deine Optimierung gewonnen! Super Erfolg!
Sonst mach's über wholename.
[ich würde das sowieso nicht so, sondern über eine Schleife in einem Script machen, weil mir das zu blöd wäre irgendwelche typos zu debuggen - ehrlich! Muß zack zack gehen. ].
Sonst mach's über wholename.
[ich würde das sowieso nicht so, sondern über eine Schleife in einem Script machen, weil mir das zu blöd wäre irgendwelche typos zu debuggen - ehrlich! Muß zack zack gehen. ].
-
- Posts: 6
- Joined: 2006-11-28 00:22
Re: QMail: Mails älter als 14 Tage löschen?!
Für alte Shells galt: mehr als 32KB in einem Ausdruck ist ein Problem. Mehr als 32KB durch eine Pipe natürlich nicht. Unter dieser Voraussetzung macht mein Script durchaus etwas anderes.lucki2 wrote:Sorry aber Dein find macht nicht viel anderes: da kommt genau das selbe auf stdout und geht dann nach xargs. Find overhead + ein Prozess mehr + x spawns hast Du durch Deine Optimierung gewonnen! Super Erfolg!
Aber ich gestand ja bereits ein, daß dieses Limit offenbar nicht mehr existiert.
Vielleicht ist meine Formulierung nicht ganz rübergekommen: mit "euphemistisch portabel" meinte ich: "konservativ und evtl. veraltet". (Ich selbst bin eigentlich auch kein Fan von find/xargs Konstruktionen.)
"*" die in einem wholename-Ausdruck vorkommen schlucken slashes, entsprechen also nicht 100%ig Shellsubstitution. Ein rm kann da böse ausgehen.Sonst mach's über wholename.
Na und eben meckert er mich noch wegen overhead und x spawns an...[ich würde das sowieso nicht so, sondern über eine Schleife in einem Script machen, weil mir das zu blöd wäre irgendwelche typos zu debuggen - ehrlich! Muß zack zack gehen. ].
Aber laß uns die Spitzfindigkeiten beenden. Für den OP (so er überhaupt noch mitliest) sind ja offenbar inzwischen genug Lösungswege genannt.