[Dovecot] Migrating to mdbox

Chris Wilson chris-dovecot-110112 at aptivate.org
Thu Mar 17 13:26:33 EET 2011

Hi Timo,

On Wed, 16 Mar 2011, Timo Sirainen wrote:
> On Wed, 2011-03-16 at 15:23 +0000, Chris Wilson wrote:
> > chris at one-mail(~)$ sudo dsync -v -u chris backup mdbox:/home/chris/mdbox
> > [sudo] password for chris: 
> > dsync(chris): Error: open() failed with mbox file /home/chris/mail/admin: 
> > Permission denied
> Well, this is the problem. dsync aborts early because it can't open the
> mailbox.. Fixing it in the code didn't look as simple as I hoped, so
> since this is unlikely to be a common problem, maybe you could just
> remove the symlink for now or give enough permissions for the duration
> of dsync..

Thanks, I removed this symlink and one other, and fixed a similar problem 
where dsync would abort on my gzipped archive mailboxes, and this time it 
finished and seemed to be working well :)

Now I'm trying to migrate just my user account to mdbox, without affecting 
other users. I think I figured out that I have to use a SQL userdb with 
just an entry for me, falling back to the passwd userdb for everyone else. 
I think I got this configured, and Dovecot IMAP then appears to open my 
mdbox when I connect, but deliver still delivers to /var/spool/mail/chris. 

doveconf -m lda doesn't pick up anything about the SQL userdb, so I don't 
see how deliver could even know that it should look here to pick up my 
mail location, but I think it should work out where the user is expecting 
their mail to be stored in order to deliver it to the correct place, 
shouldn't it? What am I missing?

chris at one-mail(~)$ doveconf -n
# 2.0.8: /etc/dovecot/dovecot.conf
doveconf: Warning: service anvil { client_limit=100 } is lower than 
required under max. load (203)
# OS: Linux 2.6.18-164.10.1.el5xen x86_64 CentOS release 5.5 (Final) 
auth_mechanisms = plain login
auth_verbose = yes
auth_worker_max_count = 10
default_client_limit = 100
mail_location = mbox:~/mail:INBOX=/var/mail/%u
mail_privileged_group = mail
mbox_write_locks = fcntl
mdbox_preallocate_space = yes
mdbox_rotate_size = 16 M
passdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
passdb {
  driver = pam
service auth-worker {
  user = $default_internal_user
service imap-login {
  process_min_avail = 2
service imap {
  process_limit = 80
service pop3 {
  process_limit = 10
ssl_cert = </etc/pki/dovecot/certs/mail.aptivate.org.chain.crt
ssl_key = </etc/pki/dovecot/certs/mail.aptivate.org.key
userdb {
  args = /etc/dovecot/dovecot-sql.conf.ext
  driver = sql
userdb {
  driver = passwd
verbose_proctitle = yes
protocol imap {
  mail_max_userip_connections = 10

Cheers, Chris.
Aptivate | http://www.aptivate.org | Phone: +44 1223 760887
The Humanitarian Centre, Fenner's, Gresham Road, Cambridge CB1 2ES

Aptivate is a not-for-profit company registered in England and Wales
with company number 04980791.

More information about the dovecot mailing list