Server Fault is a question and answer site for system and network administrators. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

I've set up dovecot with sieve:

protocol lda {
  # Address to use when sending rejection mails.
  #postmaster_address =

  # Hostname to use in various parts of sent mails, eg. in Message-Id.
  # Default is the system's real hostname.
  #hostname = 

  log_path = /var/mail/dovecot-deliver.log
  info_log_path = /var/mail/dovecot-deliver.log

  # Support for dynamically loadable plugins. mail_plugins is a space separated
  # list of plugins to load.
  mail_plugins = cmusieve
  mail_plugin_dir = /usr/lib/dovecot/modules/lda

  # If user is over quota, return with temporary failure instead of
  # bouncing the mail.
  #quota_full_tempfail = no

  # Format to use for logging mail deliveries. You can use variables:
  #  %$ - Delivery status message (e.g. "saved to INBOX")
  #  %m - Message-ID
  #  %s - Subject
  #  %f - From address
  #deliver_log_format = msgid=%m: %$

  # Binary to use for sending mails.
  #sendmail_path = /usr/lib/sendmail

  # Subject: header to use for rejection mails. You can use the same variables
  # as for rejection_reason below.
  #rejection_subject = Automatically rejected mail

  # Human readable error message for rejection mails. You can use variables:
  #  %n = CRLF, %r = reason, %s = original subject, %t = recipient
  #rejection_reason = Your message to <%t> was automatically rejected:%n%r

  # UNIX socket path to master authentication server to find users.
  #auth_socket_path = /var/run/dovecot/auth-master

I've enabled it with:

protocols = imap imaps managesieve lda

I've verified that /usr/lib/dovecot/modules/lda/ exists, and there are files in it:

ls	lib90_cmusieve_plugin.a

I've adjusted postfix so that delivery happens via LDA:

dovecot   unix  -       n       n       -       -       pipe
  flags=DRhu user=:5000:5000 argv=/usr/lib/dovecot/deliver -d ${recipient}

And I've set the transport maps for the domain to use dovecot:.

I've restarted dovecot, but never see anything in the logs about cmusieve. What should I be looking for to fix this problem?

share|improve this question
up vote 0 down vote accepted

Try to set:


and check what it logs when trying to deliver a mail.

Also make sure that if you're logging to syslog, you need to write to the syslog socket (usually /dev/log) check that deliver has write permissions.

If you're logging to Dovecot's default log files, you'll need to give enough write permissions to the log files for deliver.

If you post your log it will be much easier to help finding out the problem.

share|improve this answer
mail_debug=yes is already set. I will try to get some log information posted shortly. – Glen Solsberry Sep 29 '09 at 15:38
Could you be more specific @rkthkr about "give right permission to deliver" ? or anyone could explain please? – MikRut Apr 10 '15 at 16:46

Your Answer


By posting your answer, you agree to the privacy policy and terms of service.

Not the answer you're looking for? Browse other questions tagged or ask your own question.