Por que o dovecot 2.2.13 não está movendo e-mails de new / to cur /?

2

Estou usando o dovecot 2.2.13 no gentoo 64bit.

Quando chega um novo e-mail, ele permanece no novo diretório / em vez de ser movido para o diretório cur /. Eu li que maildir_empty_new = yes foi adicionado a /etc/dovecot/conf.d/10-mail.conf , mas isso não está funcionando. Tenho que descomentar outra coisa também para que isso funcione (ou comente alguma outra coisa)?

Isso é importante para mim porque o dovecot-uidlist é atualizado com o próximo UID somente quando eu verifico novos emails com meu cliente de email. Eu tenho alguns script pipe procmail e eu preciso de próximo uid (que eu estou obtendo analisando dovecot-uidlist).

Talvez eu possa usar doveadm junto com meu script de pipe para mudar de novo / para cur / e atualizar o dovecot-uidlist.

Este é o meu dovecot -n :

# 2.2.13: /etc/dovecot/dovecot.conf
# OS: Linux 3.16.5-gentoo x86_64 Gentoo Base System release 2.2
auth_mechanisms = plain login digest-md5
first_valid_gid = 500
last_valid_gid = 2000
last_valid_uid = 2000
login_greeting = Santa server is ready.
mail_gid = vmail
mail_location = /var/vmail/%d/%n/:INDEX=/var/vmail/%d/%n/indexes
mail_uid = vmail
maildir_empty_new = yes
managesieve_notify_capability = mailto
managesieve_sieve_capability = fileinto reject envelope encoded-character vacation subaddress comparator-i;ascii-numeric relational regex imap4flags copy include variables body enotify environment mailbox date ihave duplicate
namespace inbox {
  inbox = yes
  location =
  mailbox Drafts {
    special_use = \Drafts
  }
  mailbox Junk {
    special_use = \Junk
  }
  mailbox Sent {
    special_use = \Sent
  }
  mailbox "Sent Messages" {
    special_use = \Sent
  }
  mailbox Trash {
    special_use = \Trash
  }
  prefix =
}
passdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}
plugin {
  sieve = ~/.dovecot.sieve
  sieve_dir = ~/sieve
}
service auth-worker {
  user = vmail
}
service auth {
  unix_listener /var/spool/postfix/private/auth {
    group = postfix
    mode = 0666
    user = postfix
  }
  unix_listener auth-userdb {
    group = vmail
    mode = 0666
    user = vmail
  }
}
service lmtp {
  unix_listener /var/spool/postfix/private/dovecot-lmtp {
    group = postfix
    mode = 0666
    user = postfix
  }
}
ssl_ca = </etc/ssl/dovecot/server.in.crt
ssl_cert = </etc/ssl/dovecot/server.csr.rapid
ssl_key = </etc/ssl/dovecot/server.key.rapid
ssl_key_password = pass
userdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
}

UPDATE

Encontrei isso no site dovecot:

~/Maildir/new, ~/Maildir/cur and ~/Maildir/tmp directories contain the messages for INBOX. The tmp directory is used during delivery, new messages arrive in new and read shall be moved to cur by the clients.

Portanto, parece que mudar a nova mensagem não é um comportamento padrão dovecot.

Seria ótimo se eu pudesse fazer isso manualmente, mas com a atualização do dovecot-uidlist.

    
por pregmatch 03.12.2014 / 22:04

1 resposta

0

Se você quiser usar o formato maildir, é necessário especificar isso na sua configuração. Tente mudar:

mail_location = /var/vmail/%d/%n/:INDEX=/var/vmail/%d/%n/indexes

para:

mail_location = maildir:/var/vmail/%d/%n/:INDEX=/var/vmail/%d/%n/indexes

Eu uso o procmail com o MAILDIR especificado como $HOME/Maildir/ . O email é entregue para $HOME/Maildir/new com nomes como 1417748317.25141_1.myhost . Quando eu pego o e-mail dovecot, mova-os para $HOME/Maildir/new e acrescente :2, ao nome do arquivo. Quando o arquivo é lido, os sinalizadores são anexados. Eu não preciso saber o udo do dovecot para lidar com as mensagens. Eu tenho procmail filtragem de correio em outras caixas de correio, e esses são bem tratados sem saber UIDs dovecot para essa pasta.

    
por 04.12.2014 / 01:12