Re: procmail - generell und Mails archivieren
Hallo Liste! yosuke.tomoe@gmx.net, suse-linux@suse.com wrote:
Nichts, nur wollte ich es halt mal händisch probieren, und das Proggie beendet sich halt nicht von selbst. Wenn ich das jetzt noch in die .forward-Datei aufnehme und diese Datei z. B. durch fetchmail alle 10 min. ausgeführt wird habe ich innerhalb von 10 Stunden 60x procmail laufen die sich nicht mehr beenden. Deshalb auch meine Frage wieso sich procmail bei mir nicht beendet.
Wie schon richtig geschrieben wurde wartet procmail auf eine Eingabe von stdin! Und die .forward wird natürlich nicht aufgerufen sondern lediglich vom MTA ausgewertet. Wenn Du dann einen procmail Eintrag hast (Habe ich jetzt nicht griffbereit, aber sollte irgendwie " | procmail ...." aussehen), dann besagt dieses, dass procmail gestartet wird und die Mail an per STDIN an procmail geht. Halt sowas wie ein cat email | procmail ....! Und nach der Auswertung der eMail beendet sich dann procmail. Somit wird procmail für jede eMail aufgerufen. Wenn Du fetchmail alle 10 min aufrufst, dann wird nicht automatisch procmail alle 10 min gestartet! Wenn Du aber bei einem Aufruf 1000 eMail bekommst, dann wird Procmail 1000 mal gestartet (Oder ist dies optimiert worden? Akzeptiert procmail mehrere eMails hintereinander? Trennung per "." wie bei SMTP das Ende-Zeichen????) Das nur als kleine Erläuterung der Geschehnisse ... Konrad ----- SoftMediaTec GmbH Rudolfstr. 19 60327 Frankfurt / Main Tel: 069 / 27 22 09 25
On Die, Dez 04, 2001 at 07:47:32 +0000, Konrad Neitzel wrote:
Hallo Liste!
Wie schon richtig geschrieben wurde wartet procmail auf eine Eingabe von stdin! Und die .forward wird natürlich nicht aufgerufen sondern lediglich vom MTA ausgewertet.
Wenn Du dann einen procmail Eintrag hast (Habe ich jetzt nicht griffbereit, aber sollte irgendwie " | procmail ...." aussehen), dann besagt dieses, dass procmail gestartet wird und die Mail an per STDIN an procmail geht. Halt sowas wie ein cat email | procmail ....!
Und nach der Auswertung der eMail beendet sich dann procmail.
Somit wird procmail für jede eMail aufgerufen.
Wenn Du fetchmail alle 10 min aufrufst, dann wird nicht automatisch procmail alle 10 min gestartet! Wenn Du aber bei einem Aufruf 1000 eMail bekommst, dann wird Procmail 1000 mal gestartet
Und was ist wenn ich procmail mit "procmail &" starte? Dann gibt es procmail nur einmal. Das zwar die ganze Zeit aber es wird nicht dauernd gestartet und beendet. Wäre das bei großem Mailaufkommen nicht besser und schneller? mfg Martin
Moin, * Yosuke Tomoe <yosuke.tomoe@gmx.net> [01-12-05 13:46]:
On Die, Dez 04, 2001 at 07:47:32 +0000, Konrad Neitzel wrote:
Wenn Du fetchmail alle 10 min aufrufst, dann wird nicht automatisch procmail alle 10 min gestartet! Wenn Du aber bei einem Aufruf 1000 eMail bekommst, dann wird Procmail 1000 mal gestartet Und was ist wenn ich procmail mit "procmail &" starte? Dann gibt es procmail nur einmal. Das zwar die ganze Zeit aber es wird nicht dauernd gestartet und beendet. Wäre das bei großem Mailaufkommen nicht besser und schneller? In deisem Fall hast Du 1001 Procmails. Procmail erwartet eine Eingabe von stdin, die ein Programm im Hintergrund nicht bekommen kann.
Thorsten -- I've been accused of vulgarity. I say that's bullshit. - Mel Brooks
On Mit, Dez 05, 2001 at 01:31:00 +0100, Thorsten Haude wrote:
Moin,
* Yosuke Tomoe <yosuke.tomoe@gmx.net> [01-12-05 13:46]:
On Die, Dez 04, 2001 at 07:47:32 +0000, Konrad Neitzel wrote:
Wenn Du fetchmail alle 10 min aufrufst, dann wird nicht automatisch procmail alle 10 min gestartet! Wenn Du aber bei einem Aufruf 1000 eMail bekommst, dann wird Procmail 1000 mal gestartet Und was ist wenn ich procmail mit "procmail &" starte? Dann gibt es procmail nur einmal. Das zwar die ganze Zeit aber es wird nicht dauernd gestartet und beendet. Wäre das bei großem Mailaufkommen nicht besser und schneller? In deisem Fall hast Du 1001 Procmails. Procmail erwartet eine Eingabe von stdin, die ein Programm im Hintergrund nicht bekommen kann. Das würde bedeuten, daß das procmail das bei mir im Hintergrund läuft dauernd /var/mail/$USER untersucht und wenn da was drinnen ist sich selbst für jede Mail nochmal startet?
mfg Martin
Am Mit, 05 Dez 2001 schrieb Yosuke Tomoe:
On Mit, Dez 05, 2001 at 01:31:00 +0100, Thorsten Haude wrote:
* Yosuke Tomoe <yosuke.tomoe@gmx.net> [01-12-05 13:46]:
On Die, Dez 04, 2001 at 07:47:32 +0000, Konrad Neitzel wrote:
Wenn Du fetchmail alle 10 min aufrufst, dann wird nicht automatisch procmail alle 10 min gestartet! Wenn Du aber bei einem Aufruf 1000 eMail bekommst, dann wird Procmail 1000 mal gestartet Und was ist wenn ich procmail mit "procmail &" starte? Dann gibt es procmail nur einmal. Das zwar die ganze Zeit aber es wird nicht dauernd gestartet und beendet. Wäre das bei großem Mailaufkommen nicht besser und schneller? In deisem Fall hast Du 1001 Procmails. Procmail erwartet eine Eingabe von stdin, die ein Programm im Hintergrund nicht bekommen kann. Das würde bedeuten, daß das procmail das bei mir im Hintergrund läuft dauernd /var/mail/$USER untersucht und wenn da was drinnen ist sich selbst für jede Mail nochmal startet?
Nein, Procmail untersucht nicht /var/mail/$USER. Procmail bekommt eine Mail von a) fetchmail b) sendmail c)indirekt über .forward über STDIN übergeben und sortiert sie ein, es überwacht gar nichts, sondern wird mit genau 1 Mail als Eingabe aufgerufen. Gruß Christoph -- Christoph Maurer - 52072 Aachen - Tux#194235 mailto:christoph-maurer@gmx.de - http://www.christophmaurer.de Auf der Homepage u.a.: Installation von SuSE 7.0 auf Notebook Acer Travelmate 508 T, Elektrotechnik an der RWTH Aachen
Moin, * Christoph Maurer <christoph-maurer@gmx.de> [01-12-05 14:27]:
Nein, Procmail untersucht nicht /var/mail/$USER. Procmail bekommt eine Mail von a) fetchmail b) sendmail c)indirekt über .forward über STDIN übergeben und sortiert sie ein, es überwacht gar nichts, sondern wird mit genau 1 Mail als Eingabe aufgerufen. Schade.
Thorsten -- Profanity is the inevitable linguistic crutch of the inarticulate motherfucker. - Bruce Sherrod
On Mit, Dez 05, 2001 at 02:27:26 +0100, Christoph Maurer wrote:
Am Mit, 05 Dez 2001 schrieb Yosuke Tomoe:
On Mit, Dez 05, 2001 at 01:31:00 +0100, Thorsten Haude wrote:
* Yosuke Tomoe <yosuke.tomoe@gmx.net> [01-12-05 13:46]:
On Die, Dez 04, 2001 at 07:47:32 +0000, Konrad Neitzel wrote:
Wenn Du fetchmail alle 10 min aufrufst, dann wird nicht automatisch procmail alle 10 min gestartet! Wenn Du aber bei einem Aufruf 1000 eMail bekommst, dann wird Procmail 1000 mal gestartet Und was ist wenn ich procmail mit "procmail &" starte? Dann gibt es procmail nur einmal. Das zwar die ganze Zeit aber es wird nicht dauernd gestartet und beendet. Wäre das bei großem Mailaufkommen nicht besser und schneller? In deisem Fall hast Du 1001 Procmails. Procmail erwartet eine Eingabe von stdin, die ein Programm im Hintergrund nicht bekommen kann. Das würde bedeuten, daß das procmail das bei mir im Hintergrund läuft dauernd /var/mail/$USER untersucht und wenn da was drinnen ist sich selbst für jede Mail nochmal startet?
Nein, Procmail untersucht nicht /var/mail/$USER. Procmail bekommt eine Mail von a) fetchmail b) sendmail c)indirekt über .forward über STDIN übergeben und sortiert sie ein, es überwacht gar nichts, sondern wird mit genau 1 Mail als Eingabe aufgerufen.
Als ich gerade mit ps -ax nachgesehen habe, fand ich gar kein procmail mehr. Es hat sich anscheinend irgendwann selbst gekilled... Was mir allerdings komisch vorkommt: a) Ich habe keine ~/.forward Datei. b) Ich habe nichts in der config von fetchmail geändert c) Ich habe nichts in der config von sendmail geändert -> Das einzige was sich geändert hat, ist das ich im Homeverzeichnis eine .procmailrc habe. Wieso wird das jetzt verwendet, bzw. wer verwendet es (ich nehme an es ist fetchmail) und woher weiß fetchmail jetzt, daß es die Mails filtern soll? Und das noch dazu mit procmail? mfg Martin PS: Wieso kann procmail eine Mail von sendmail erhalten? Sendmail ist doch nur zum senden da, und wenn es eine Mail gesendet hat ist doch nichts mehr da, das es senden könnte, oder habe ich da gerade einen kleinen Denkfehler?
Moin, * Yosuke Tomoe <yosuke.tomoe@gmx.net> [01-12-05 19:30]:
-> Das einzige was sich geändert hat, ist das ich im Homeverzeichnis eine .procmailrc habe. Wieso wird das jetzt verwendet, bzw. wer verwendet es (ich nehme an es ist fetchmail) und woher weiß fetchmail jetzt, daß es die Mails filtern soll? Und das noch dazu mit procmail? Bei SuSE wird Procmail als MDA für Sendmail benutzt.
PS: Wieso kann procmail eine Mail von sendmail erhalten? Sendmail ist doch nur zum senden da, und wenn es eine Mail gesendet hat ist doch nichts mehr da, das es senden könnte, oder habe ich da gerade einen kleinen Denkfehler? Eine Denklücke. Vielleicht wird es klarer, wenn Du www.vranx.de/mail/mail.html liest.
Thorsten -- Fear leads to anger. Anger leads to hate. Hate leads to using Windows NT for mission-critical applications.
Am Mit, 05 Dez 2001 schrieb Yosuke Tomoe:
On Mit, Dez 05, 2001 at 02:27:26 +0100, Christoph Maurer wrote:
Am Mit, 05 Dez 2001 schrieb Yosuke Tomoe:
On Mit, Dez 05, 2001 at 01:31:00 +0100, Thorsten Haude wrote:
* Yosuke Tomoe <yosuke.tomoe@gmx.net> [01-12-05 13:46]:
On Die, Dez 04, 2001 at 07:47:32 +0000, Konrad Neitzel wrote:
Wenn Du fetchmail alle 10 min aufrufst, dann wird nicht automatisch procmail alle 10 min gestartet! Wenn Du aber bei einem Aufruf 1000 eMail bekommst, dann wird Procmail 1000 mal gestartet Und was ist wenn ich procmail mit "procmail &" starte? Dann gibt es procmail nur einmal. Das zwar die ganze Zeit aber es wird nicht dauernd gestartet und beendet. Wäre das bei großem Mailaufkommen nicht besser und schneller? In deisem Fall hast Du 1001 Procmails. Procmail erwartet eine Eingabe von stdin, die ein Programm im Hintergrund nicht bekommen kann. Das würde bedeuten, daß das procmail das bei mir im Hintergrund läuft dauernd /var/mail/$USER untersucht und wenn da was drinnen ist sich selbst für jede Mail nochmal startet?
Nein, Procmail untersucht nicht /var/mail/$USER. Procmail bekommt eine Mail von a) fetchmail b) sendmail c)indirekt über .forward über STDIN übergeben und sortiert sie ein, es überwacht gar nichts, sondern wird mit genau 1 Mail als Eingabe aufgerufen.
Als ich gerade mit ps -ax nachgesehen habe, fand ich gar kein procmail mehr. Es hat sich anscheinend irgendwann selbst gekilled... Was mir allerdings komisch vorkommt: a) Ich habe keine ~/.forward Datei.
Standard!
b) Ich habe nichts in der config von fetchmail geändert
Dann übergibt fetchmail die Mails standardmäßig an einen auf Port25 lauerenden SMTP-Daemon, i.e. sendmail.
c) Ich habe nichts in der config von sendmail geändert
Dann übergibt Sendmail die lokalen Mails zur Auslieferung an Procmail. So ist das bei SuSE standardmäßig geregelt. Gruß Christoph -- Christoph Maurer - 52072 Aachen - Tux#194235 mailto:christoph-maurer@gmx.de - http://www.christophmaurer.de Auf der Homepage u.a.: Installation von SuSE 7.0 auf Notebook Acer Travelmate 508 T, Elektrotechnik an der RWTH Aachen
Moin, * Christoph Maurer <christoph-maurer@gmx.de> [01-12-06 08:41]:
Am Mit, 05 Dez 2001 schrieb Yosuke Tomoe:
a) Ich habe keine ~/.forward Datei. Standard! Geht so. Ich habe die auch erst, seit ich Mail::Audit einsetze.
Thorsten -- There's no such thing as a stupid question. Only stupid people. - User Friendly
Am Don, 06 Dez 2001 schrieb Thorsten Haude:
* Christoph Maurer <christoph-maurer@gmx.de> [01-12-06 08:41]:
Am Mit, 05 Dez 2001 schrieb Yosuke Tomoe:
a) Ich habe keine ~/.forward Datei. Standard! Geht so. Ich habe die auch erst, seit ich Mail::Audit einsetze.
War vielleicht mißverständlich formuliert, meinte, es sei durchaus üblich, keine .forward zu haben. Gruß Christoph -- Christoph Maurer - 52072 Aachen - Tux#194235 mailto:christoph-maurer@gmx.de - http://www.christophmaurer.de Auf der Homepage u.a.: Installation von SuSE 7.0 auf Notebook Acer Travelmate 508 T, Elektrotechnik an der RWTH Aachen
Moin, * Yosuke Tomoe <yosuke.tomoe@gmx.net> [01-12-05 15:09]:
In deisem Fall hast Du 1001 Procmails. Procmail erwartet eine Eingabe von stdin, die ein Programm im Hintergrund nicht bekommen kann. Das würde bedeuten, daß das procmail das bei mir im Hintergrund läuft dauernd /var/mail/$USER untersucht und wenn da was drinnen ist sich selbst für jede Mail nochmal startet? Wie, bei Dir läuft ein Procmail im Hintergrund? Bist Du sicher, daß der benutzt wird? Schick dem Ding doch mal ein SIGUSR und sieh im Logfile nach, ob das honoriert wird. Wenn man einen MDA als Daemon betreiben kann, fände ich das recht interessant.
Ach so, kann man mit ~/.forward vielleicht in ein FIFO pipen? Wie sieht denn Deine ~/.forward aus? Thorsten -- Auch Hunger ist Krieg. - Willy Brandt
Am Mit, 05 Dez 2001 schrieb Yosuke Tomoe:
On Die, Dez 04, 2001 at 07:47:32 +0000, Konrad Neitzel wrote:
Wenn Du fetchmail alle 10 min aufrufst, dann wird nicht automatisch procmail alle 10 min gestartet! Wenn Du aber bei einem Aufruf 1000 eMail bekommst, dann wird Procmail 1000 mal gestartet
Und was ist wenn ich procmail mit "procmail &" starte? Dann gibt es procmail nur einmal. Das zwar die ganze Zeit aber es wird nicht dauernd gestartet und beendet. Wäre das bei großem Mailaufkommen nicht besser und schneller?
Das eine Procmail im Hintergrund macht überhaupt nichts außer etwas Rechenzeit und Speicher fressen, da es keinen Input von STDIN bekommt. Für jede Mail wird trotzdem ein neuer Procmailprozeß gestartet. Gruß Christoph -- Christoph Maurer - 52072 Aachen - Tux#194235 mailto:christoph-maurer@gmx.de - http://www.christophmaurer.de Auf der Homepage u.a.: Installation von SuSE 7.0 auf Notebook Acer Travelmate 508 T, Elektrotechnik an der RWTH Aachen
participants (4)
-
Christoph Maurer
-
Konrad Neitzel
-
Thorsten Haude
-
Yosuke Tomoe