Ilya S. Sapytsky -> debian-russian@lists.debian.org @ Fri, 19 May 2006 13:44:48 +0400:
ISS> Return-Path: <[EMAIL PROTECTED]> ISS> X-Original-To: [EMAIL PROTECTED] ISS> Delivered-To: [EMAIL PROTECTED] ISS> Received: from localhost (localhost [127.0.0.1]) by castle.ran.pp.ru (Postfix) with ESMTP id 694D723347 for <[EMAIL PROTECTED]>; Fri, 19 May 2006 13:45:01 +0400 (MSD) ISS> Received: from castle.ran.pp.ru ([127.0.0.1]) by localhost (castle [127.0.0.1]) (amavisd-new, port 10024) with LMTP id 26048-05 for <[EMAIL PROTECTED]>; Fri, 19 May 2006 13:44:58 +0400 (MSD) ISS> Received: from murphy.debian.org (murphy.debian.org [70.103.162.31]) by castle.ran.pp.ru (Postfix) with ESMTP id 24C0823345 for <[EMAIL PROTECTED]>; Fri, 19 May 2006 13:44:56 +0400 (MSD) ISS> Received: from localhost (localhost [127.0.0.1]) by murphy.debian.org (Postfix) with QMQP id EAD0012A; Fri, 19 May 2006 04:44:52 -0500 (CDT) ISS> Old-Return-Path: <[EMAIL PROTECTED]> ISS> X-Original-To: debian-russian@lists.debian.org ISS> Received: from csd.lae.pp.ru (csd.lae.pp.ru [213.187.102.201]) by murphy.debian.org (Postfix) with ESMTP id A4A0536562 for <debian-russian@lists.debian.org>; Fri, 19 May 2006 04:44:49 -0500 (CDT) ISS> Received: by csd.lae.pp.ru (Postfix, from userid 1013) id 4A8B31FA7DA; Fri, 19 May 2006 13:44:48 +0400 (MSD) ISS> Date: Fri, 19 May 2006 13:44:48 +0400 ISS> From: "Ilya S. Sapytsky" <[EMAIL PROTECTED]> ISS> To: debian-russian@lists.debian.org ISS> Subject: Re: как imap папки автоматом обучать spamassassin по ночам? ISS> Message-ID: <[EMAIL PROTECTED]> ISS> Reply-To: debian-russian@lists.debian.org ISS> References: <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> <[EMAIL PROTECTED]> ISS> Mime-Version: 1.0 ISS> Content-Type: text/plain; charset=koi8-r ISS> Content-Disposition: inline ISS> Content-Transfer-Encoding: 8bit ISS> User-Agent: Mutt/1.2.5.1i ISS> In-Reply-To: <[EMAIL PROTECTED]>; from [EMAIL PROTECTED] on Fri, May 19, 2006 at 11:56:52AM +0400 ISS> X-Rc-Virus: 2005-11-10_01 ISS> X-Rc-Spam: 2006-04-09_01 ISS> Resent-Message-ID: <[EMAIL PROTECTED]> ISS> Resent-From: debian-russian@lists.debian.org ISS> X-Mailing-List: <debian-russian@lists.debian.org> archive/latest/54385 ISS> X-Loop: debian-russian@lists.debian.org ISS> List-Id: <debian-russian.lists.debian.org> ISS> List-Post: <mailto:debian-russian@lists.debian.org> ISS> List-Help: <mailto:[EMAIL PROTECTED]> ISS> List-Subscribe: <mailto:[EMAIL PROTECTED]> ISS> List-Unsubscribe: <mailto:[EMAIL PROTECTED]> ISS> Precedence: list ISS> Resent-Sender: [EMAIL PROTECTED] ISS> Resent-Date: Fri, 19 May 2006 04:44:52 -0500 (CDT) ISS> X-Virus-Scanned: by amavisd-new-20030616-p10 (Debian) at ran.pp.ru ISS> X-Spam-Status: No, hits=-2.6 tagged_above=-999.0 required=5.0 tests=AWL, BAYES_00 ISS> X-Spam-Level: ISS> On Fri, May 19, 2006 at 11:56:52AM +0400, Artem Chuprina wrote: >> Ilya S. Sapytsky -> debian-russian@lists.debian.org @ Fri, 19 May 2006 >> 08:40:18 +0400: >> >> >> > Что бы такого придумать чтобы автоматом и по всем >> >> > пользователям и паролями не светить? >> >> >> >> А courier общие папки поддерживает? У нас стоит dbmail и есть общая >> >> папка spam куда пользователи свой спам переносят - соотвественно >> >> fetchmail извлекает только из одной папки с одного аккаунта >> >> ISS> Courier этой возможности вроде как не поддерживает :( >> >> Который в sarge - уже вроде как поддерживает. Не пробовал, правда. Я >> поступаю проще - у меня на том же сервере есть еще и cron, и ему >> совершенно не в падлу запустить от имени и по поручению юзер скриптик, >> который ходит непосредственно в maildir и сует sa-learn письма оттуда. ISS> напишите плиз какой командой и с какими опциями вы делаете ISS> последнее? Работающий скрипт, запускается из юзерского кронтаба. Поскольку писем много, приходится еще использовать xargs. Живой нетривиальный конфиг показать не могу, поскольку вполне устраивает тривиальный :-) #!/usr/bin/perl use strict; chdir || die $!; my $debug = 0; # read config my %conf = ('.spam' => 'spam+delete', '.sa-spam' => 'skip', '.deleted' => 'delete'); if (-r ".spamassassin/teach-sa.cf") { open my $conf, ".spamassassin/teach-sa.cf" or die $!; while (<$conf>) { next if /^\s*(#|$)/; die "Incorrect line '$_'" unless /^\s*(\S+)\s*=\s*(.*?)\s*$/; $conf{".$1"} = $2; } } exit(0) unless -d 'Maildir'; opendir my $maildir, 'Maildir' or die $!; for (sort readdir $maildir) { next unless substr($_,0,1) eq '.'; next if /^\.\.?$/; next unless -d "Maildir/$_"; my $folder = substr($_,1); next if $conf{$_} && $conf{$_} eq 'skip'; my $type = ($conf{$_} && substr($conf{$_},0,4) eq 'spam') ? 'spam' : 'non-spam'; my $command = "| xargs " . ($debug?"echo ":"") . "sa-learn " . ($type eq 'spam' ? '--spam' : '--ham') . ' --file'; my @files = <Maildir/$_/{new,cur}/*>; if (@files) { print "Learning $type from $folder...\n"; open(my $sa_learn, $command) or die $!; print $sa_learn map "$_\n", @files; if (close($sa_learn) && $conf{$_} =~ /delete$/) { print "Deleting learned messages from $folder...\n"; unlink @files unless $debug; print "done.\n"; } } } -- Artem Chuprina RFC2822: <ran{}ran.pp.ru> Jabber: [EMAIL PROTECTED] If it's there and you can see it---it's real If it's not there and you can see it---it's virtual If it's there and you can't see it---it's transparent If it's not there and you can't see it---you erased it! IBM poster explaining virtual memory, circa 1978 -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]