LINUX.ORG.RU
ФорумAdmin

procmailrc, автоматические создание папки.


0

0

Изучаю и прикручиваю imap и procmail, уже не много удалось разобраться. Столкнулся с проблемой.

#cat /etc/procmailrc
MAILDIR=/var/spool/mail
DEFAULT=$MAILDIR/exim/$LOGNAME/
VERBOSE=on
LOGFILE=/var/log/procmail.log

:0
* ^X-Spam-Flag: Yes
$DEFAULT/.SPAM/new/
Хочу чтобы весь спам от spamassasin валился в imap папку каждого пользователя SPAM

Но тут проблема, по умолчанию у меня в imap такая папка не создана у пользователей и procmail почему-то её не создает.

From igorrtrubbof@yahoo.cn  Tue May 18 20:48:27 2010
 Subject: *****SPAM***** =?Windows-1251?B?1OjtYe1jb+L76SDz8e9leA==?=
  Folder: /var/spool/mail/exim/siv/new/1274204907.22520_0.inet.ua   5081
procmail: Match on "^X-Spam-Flag: Yes"
procmail: Unable to treat as directory "/var/spool/mail/exim/ksa//.SPAM/new"
procmail: Assigning "LASTFOLDER=/var/spool/mail/exim/ksa//.SPAM/new"
procmail: Opening "/var/spool/mail/exim/ksa//.SPAM/new"
procmail: Error while writing to "/var/spool/mail/exim/ksa//.SPAM/new"
procmail: Assigning "PATH=/var/spool/home/ksa/bin:/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/bin:/usr/X11R6/bin"
procmail: Assigning "LASTFOLDER=/var/spool/mail/exim/ksa/new/1274204907.22521_0.inet.ua"
procmail: Notified comsat: "ksa@0:/var/spool/mail/exim/ksa/new/1274204907.22521_0.inet.ua"

Как можно вылечить эту проблему?

 
]# ll /var/spool/mail/exim/ksa/
итого 40
drwx------ 2 ksa users  4096 Май 18 17:29 cur
-rw------- 1 ksa users   144 Май 18 17:29 dovecot.index
-rw------- 1 ksa users 16384 Май 18 17:29 dovecot.index.cache
-rw------- 1 ksa users  1636 Май 18 17:29 dovecot.index.log
-rw------- 1 ksa users   129 Май 18 17:29 dovecot-uidlist
drwx------ 2 ksa users  4096 Май 18 20:48 new
drwx------ 2 ksa users  4096 Май 18 20:48 tmp
#

Присоединяюсь к вопросу !!!

Tok ★★ ()

не понял, тебе написать скрипт, который всем пользователям каталоги посоздает? Или когда нового пользователя заводишь, чтобы каталог создавался? Или чтобы он каждый раз создавался при вызове процмейла?

На крайняк в процмейле отдавай письмо скрипту, а в скрипте проверяй наличие каталога и создание его при необходимости.

ansky ★★★★★ ()
Ответ на: комментарий от ansky

А можно скрипт чтобы при вызове фильтра spam он автоматом создавал каталог? только там будет еще нюанс, с какими права он будет создавать каталог?

InventoRs ()
Ответ на: комментарий от InventoRs

Вызов скрипта из .procmailrc
:0
* ^X-Spam-Flag: Yes
|/usr/local/bin/etd.sh

проверить/создать каталог:
NDIR=$HOME/.SPAM
if [ ! -d «$NDIR» ]; then
mkdir -m 0750 «$NDIR»
fi

В скрипт письмо поступает на stdin
FIL1=`/bin/mktemp «$NDIR»"/new_XXXXXX"`
/bin/cat > $FIL1

Достаточно?

ansky ★★★★★ ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.