2

I'm setting up a new dovecot server ("A") and I'm trying to migrate one mailbox from another IMAP server ("B", Dovecot as well).

On new server A my dovecot.conf looks like this:

[…]
mapc_host = mailserver.ZZZZZZ.com
imapc_user = YYYY@ZZZZZZ.com
imapc_password = XXXXXXXXXX
imapc_features = rfc822.size
# If you have Dovecot v2.2.8+ you may get a significant performance improvement with fetch-headers:
imapc_features = $imapc_features fetch-headers
# Read multiple mails in parallel, improves performance
mail_prefetch_count = 20
imapc_port = 993
imapc_ssl = imaps
#ssl_client_ca_dir = /etc/ssl
ssl_client_ca_file = /usr/local/share/certs/ca-root-nss.crt
#imapc_ssl_verify = yes

The uncommented parts in my conf.d/10-mail.conf in A are:

namespace inbox {
  separator = /
  inbox = yes
}

I'm then running the following command on A:

> doveadm -o mail_fsync=never backup -R -u YYYY@ZZZZZZ.com imapc:

dsync(YYYY@ZZZZZZ.com): Error: Mail locations must use the same virtual mailbox hierarchy separator (specify separator for the default namespace)

Server A uses sdbox, server B uses box and has no separators set (although I think that server B's settings shouldn't matter at this point? Server A's account ist empty. I'm using Dovecot 2.2.20 from the FreeBSD ports on server A.

Any hint on what I'm missing here? Is there a way to display the separate namespaces and their separators? A config I'm missing?


UPDATE

I added

namespace {
  separator = /
}

to conf.d/10-mail.conf as @moonhawk suggested (after the first entry).

The output of doveconf namespace is empty.

Now I first got this output:

> doveadm -o mail_fsync=never backup -R -u YYYY@ZZZZZZ.com imapc:

dsync(YYYY@ZZZZZZ.com): Error: imapc(YYYY@ZZZZZZ.com:993): connect(XX::XX::XX, 993) timed out after 30 seconds
dsync(YYYY@ZZZZZZ.com): Error: imapc: Authentication failed: Disconnected from server
dsync(YYYY@ZZZZZZ.com): Error: Mailbox listing for namespace '' failed: Internal error occurred. Refer to server log for more information. [YYY-MM-DD HH:MM:SS]

On the next try, I got the first error ('[…]specify separator[…]') again… The log on the other server shows successful logins but nothing else…

basbebe
  • 313
  • 2
  • 16

2 Answers2

3

Have you specified a separator for the default namespace (on "A")? You only mentioned the inbox namespace. Use the following to dump the namespaces from your config:

doveconf namespace

Look at "seperator = ..." for each namespace, it should be the same for all of them. Especially look at the default namespace

namespace {
  ...
  separator = /
  ...
}
moonhawk
  • 31
  • 4
  • the output of 'doveconf namespace' is empty… – basbebe Dec 11 '15 at 08:55
  • I added a unnamed namespace with a separator "/". Now the output is: `Mailbox listing for namespace '' failed: Internal error occurred. Refer to server log for more information.` – basbebe Dec 11 '15 at 09:01
  • it's odd that there is no output.. higher privileges? the output would be very helpfull. Maybe the dovecot namespace section in the dovecot doku helps: http://wiki.dovecot.org/Namespaces ... maybe setting the "list" option in the namespace, or looking at your location settings ... or try "doveconf -n" to see the none default values of your configuration – moonhawk Dec 11 '15 at 10:04
  • I forgot to add `!include conf.d/*.conf` to my `dovecot.conf`. I added the lines directly in my main cons file and now it seems to work. Thanks! – basbebe Dec 11 '15 at 12:14
0

If you add configurations inside Dovecot's conf.d/ directory don't forget to add !include conf.d/*.confto dovecot.confto include them!

basbebe
  • 313
  • 2
  • 16