Trying to migrate a bunch of users with mbox format to maildir format. dsync creates some directories, but otherwise does nothing. (Complained about the lack of "/" as separator until I added that to config, now is silent when running dsync except with the -D flag)
I have tried dumping all the dovecot that came with my OS and built the latest sources, hoping I'd at least get a little better debug information out... but no luck.
Lots of hopefully useful output below.
What am I doing wrong?
Matthew Kaufman
# dovecot -n # 2.2.5: /usr/local/etc/dovecot/dovecot.conf # OS: Linux 3.2.0-4-amd64 x86_64 Debian 7.1 ext4 auth_mechanisms = plain login first_valid_uid = 4999 mail_gid = 5000 mail_location = maildir:/var/mail/%d/%n mail_privileged_group = mail mail_uid = 5000 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 = separator = / } passdb { args = /etc/dovecot/dovecot-sql.conf.ext driver = sql } plugin { antispam_allow_append_to_spam = YES antispam_backend = dspam antispam_dspam_args = --user;%u;--deliver=;--source=error antispam_dspam_binary = /usr/bin/dspam antispam_dspam_notspam = --class=innocent antispam_dspam_result_header = X-DSPAM-Result antispam_dspam_spam = --class=spam antispam_signature = X-DSPAM-Signature antispam_signature_missing = error antispam_spam = Spam;Junk antispam_trash = trash;Trash sieve = ~/.dovecot.sieve sieve_dir = ~/sieve } postmaster_address = postmaster@eeph.com protocols = imap lmtp service auth-worker { user = mail } service auth { unix_listener /var/spool/postfix/private/auth { group = postfix mode = 0666 user = postfix } unix_listener auth-userdb { mode = 0600 user = mail } user = dovecot } service imap-login { inet_listener imap { port = 0 } } service lmtp { unix_listener /var/spool/postfix/private/dovecot-lmtp { group = postfix mode = 0666 user = postfix } user = mail } service pop3-login { inet_listener pop3 { port = 0 } } ssl_cert = </etc/ssl/local/....crt ssl_key = </etc/ssl/local/....key userdb { args = uid=5000 gid=5000 home=/var/mail/%d/%n driver = static } protocol lmtp { mail_plugins = " sieve" } protocol imap { mail_plugins = " antispam" }
# rm -r /var/mail/matthew.at # /usr/local/bin/dsync -D -u matthew@matthew.at mirror mbox:./Mail:INBOX=./matthew doveadm(root): Debug: Loading modules from directory: /usr/local/lib/dovecot/doveadm doveadm(root): Debug: Skipping module doveadm_acl_plugin, because dlopen() failed: /usr/local/lib/dovecot/doveadm/lib10_doveadm_acl_plugin.so: undefined symbol: acl_user_module (this is usually intentional, so just ignore this message) doveadm(root): Debug: Skipping module doveadm_expire_plugin, because dlopen() failed: /usr/local/lib/dovecot/doveadm/lib10_doveadm_expire_plugin.so: undefined symbol: expire_set_deinit (this is usually intentional, so just ignore this message) doveadm(root): Debug: Skipping module doveadm_quota_plugin, because dlopen() failed: /usr/local/lib/dovecot/doveadm/lib10_doveadm_quota_plugin.so: undefined symbol: quota_user_module (this is usually intentional, so just ignore this message) doveadm(root): Debug: Skipping module doveadm_fts_plugin, because dlopen() failed: /usr/local/lib/dovecot/doveadm/lib20_doveadm_fts_plugin.so: undefined symbol: fts_backend_rescan (this is usually intentional, so just ignore this message) doveadm(matthew@matthew.at): Debug: Effective uid=5000, gid=5000, home=/var/mail/matthew.at/matthew doveadm(matthew@matthew.at): Debug: Home dir not found: /var/mail/matthew.at/matthew doveadm(matthew@matthew.at): Debug: Namespace inbox: type=private, prefix=, sep=/, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:/var/mail/matthew.at/matthew doveadm(matthew@matthew.at): Debug: maildir++: root=/var/mail/matthew.at/matthew, index=, indexpvt=, control=, inbox=/var/mail/matthew.at/matthew, alt= doveadm(matthew@matthew.at): Debug: Namespace : /var/mail/matthew.at/matthew doesn't exist yet, using default permissions doveadm(matthew@matthew.at): Debug: Namespace : Using permissions from /var/mail/matthew.at/matthew: mode=0700 gid=default dsync(matthew@matthew.at): Debug: Effective uid=5000, gid=5000, home=/var/mail/matthew.at/matthew dsync(matthew@matthew.at): Debug: Namespace inbox: type=private, prefix=, sep=/, inbox=yes, hidden=no, list=yes, subscriptions=yes location=mbox:./Mail:INBOX=./matthew dsync(matthew@matthew.at): Debug: fs: root=./Mail, index=, indexpvt=, control=, inbox=./matthew, alt= dsync(matthew@matthew.at): Debug: Namespace : ./Mail doesn't exist yet, using default permissions dsync(matthew@matthew.at): Debug: Namespace : Using permissions from ./Mail: mode=0700 gid=default dsync(matthew@matthew.at): Debug: brain M: in state=master_recv_handshake dsync(matthew@matthew.at): Debug: brain M: out state=send_mailbox_tree changed=1 dsync(matthew@matthew.at): Debug: brain S: out state=send_mailbox_tree changed=1 dsync(matthew@matthew.at): Debug: brain M: in state=send_mailbox_tree dsync(matthew@matthew.at): Debug: brain M: out state=send_mailbox_tree_deletes changed=1 dsync(matthew@matthew.at): Debug: brain S: in state=send_mailbox_tree dsync(matthew@matthew.at): Debug: brain S: out state=send_mailbox_tree_deletes changed=1 dsync(matthew@matthew.at): Debug: brain M: in state=send_mailbox_tree_deletes dsync(matthew@matthew.at): Debug: brain M: out state=recv_mailbox_tree changed=1 dsync(matthew@matthew.at): Debug: brain S: in state=send_mailbox_tree_deletes dsync(matthew@matthew.at): Debug: brain S: out state=recv_mailbox_tree changed=1 dsync(matthew@matthew.at): Debug: brain M: in state=recv_mailbox_tree dsync(matthew@matthew.at): Debug: brain M: out state=recv_mailbox_tree_deletes changed=1 dsync(matthew@matthew.at): Debug: brain S: in state=recv_mailbox_tree dsync(matthew@matthew.at): Debug: brain S: out state=recv_mailbox_tree_deletes changed=1 dsync(matthew@matthew.at): Debug: brain M: in state=recv_mailbox_tree_deletes dsync(matthew@matthew.at): Debug: brain M: out state=master_send_mailbox changed=1 dsync(matthew@matthew.at): Debug: brain S: in state=recv_mailbox_tree_deletes dsync(matthew@matthew.at): Debug: brain S: out state=slave_recv_mailbox changed=1 dsync(matthew@matthew.at): Debug: brain M: in state=master_send_mailbox dsync(matthew@matthew.at): Debug: brain M: out state=done changed=1 dsync(matthew@matthew.at): Debug: brain S: in state=slave_recv_mailbox dsync(matthew@matthew.at): Debug: brain S: out state=done changed=1 dsync(matthew@matthew.at): Debug: brain M: in state=done dsync(matthew@matthew.at): Debug: brain M: out state=done changed=1 dsync(matthew@matthew.at): Debug: brain S: in state=done dsync(matthew@matthew.at): Debug: brain S: out state=done changed=1 # # ls -l /var/mail/matthew.at total 4 drwx--S--- 3 vmail vmail 4096 Sep 24 17:50 matthew # ls -l /var/mail/matthew.at/matthew total 4 drwx--S--- 2 vmail vmail 4096 Sep 24 17:50 Mail # ls -l /var/mail/matthew.at/matthew/Mail total 0