Sam Kuper
2020-May-13 07:11 UTC
Convert standalone mbox to standalone Maildir with Dsync - hierarchy separator error
Dear Dovecot users/devs, I have the following mbox file: /tmp/dsync_test/mbox/2002-September I would like to convert it to a Maildir: /tmp/dsync_test/maildir (Currently, the latter is just an empty directory.) I am attempting this on an old PC running Debian 9 ("Stretch"). I installed the dovecot-core package in order to make the `dsync` tool available on that PC. I have not otherwise done anything with Dovecot on that PC; for instance, I have not created or edited any Dovecot config files. `man dsync` gives the Dovecot version as 2.2. Inspired by the man page and the Dovecot wiki, here was my first attempt to perform the conversion. (I have added newlines between each line of the output, for readability.) $ dsync -Dv -o 'mail_location=maildir:/tmp/dsync_test/maildir' \ backup \ mbox:/tmp/dsync_test/mbox/:INBOX=/tmp/dsync_test/mbox/2002-September Debug: Loading modules from directory: /usr/lib/dovecot/modules/doveadm Debug: Skipping module doveadm_acl_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib10_doveadm_acl_plugin.so: undefined symbol: acl_lookup_dict_iterate_visible_next (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_expire_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib10_doveadm_expire_plugin.so: undefined symbol: expire_set_deinit (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_quota_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib10_doveadm_quota_plugin.so: undefined symbol: quota_user_module (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_fts_lucene_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_lucene_plugin.so: undefined symbol: lucene_index_iter_deinit (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_fts_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_plugin.so: undefined symbol: fts_user_get_language_list (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_mail_crypt_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/libdoveadm_mail_crypt_plugin.so: undefined symbol: mail_crypt_box_get_pvt_digests (this is usually intentional, so just ignore this message) doveadm(sampablokuper): Debug: Effective uid=1000, gid=1000, home=/home/sampablokuper doveadm(sampablokuper): Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:/tmp/dsync_test/maildir doveadm(sampablokuper): Debug: maildir++: root=/tmp/dsync_test/maildir, index=, indexpvt=, control=, inbox=/tmp/dsync_test/maildir, alt doveadm(sampablokuper): Debug: Namespace : Using permissions from /tmp/dsync_test/maildir: mode=0755 gid=default dsync(sampablokuper): Debug: Effective uid=1000, gid=1000, home=/home/sampablokuper dsync(sampablokuper): Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=mbox:/tmp/dsync_test/mbox/:INBOX=/tmp/dsync_test/mbox/2002-September dsync(sampablokuper): Debug: fs: root=/tmp/dsync_test/mbox, index=, indexpvt=, control=, inbox=/tmp/dsync_test/mbox/2002-September, alt dsync(sampablokuper): Error: Mail locations must use the same virtual mailbox hierarchy separator (specify separator for the default namespace) As you can see, it ends with "Error: Mail locations must use the same virtual mailbox hierarchy separator (specify separator for the default namespace)". So, I tried specifying a hierarchy separator, but this failed too: $ dsync -Dv \ -o 'separator=.' \ -o 'mail_location=maildir:/tmp/dsync_test/maildir' \ backup \ mbox:/tmp/dsync_test/mbox/:INBOX=/tmp/dsync_test/mbox/2002-September Debug: Loading modules from directory: /usr/lib/dovecot/modules/doveadm Debug: Skipping module doveadm_acl_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib10_doveadm_acl_plugin.so: undefined symbol: acl_lookup_dict_iterate_visible_next (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_expire_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib10_doveadm_expire_plugin.so: undefined symbol: expire_set_deinit (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_quota_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib10_doveadm_quota_plugin.so: undefined symbol: quota_user_module (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_fts_lucene_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_lucene_plugin.so: undefined symbol: lucene_index_iter_deinit (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_fts_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_plugin.so: undefined symbol: fts_user_get_language_list (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_mail_crypt_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/libdoveadm_mail_crypt_plugin.so: undefined symbol: mail_crypt_box_get_pvt_digests (this is usually intentional, so just ignore this message) doveadm(sampablokuper): Debug: Effective uid=1000, gid=1000, home=/home/sampablokuper doveadm(sampablokuper): Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:/tmp/dsync_test/maildir doveadm(sampablokuper): Debug: maildir++: root=/tmp/dsync_test/maildir, index=, indexpvt=, control=, inbox=/tmp/dsync_test/maildir, alt doveadm(sampablokuper): Debug: Namespace : Using permissions from /tmp/dsync_test/maildir: mode=0755 gid=default dsync(sampablokuper): Debug: Effective uid=1000, gid=1000, home=/home/sampablokuper dsync(sampablokuper): Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=mbox:/tmp/dsync_test/mbox/:INBOX=/tmp/dsync_test/mbox/2002-September dsync(sampablokuper): Debug: fs: root=/tmp/dsync_test/mbox, index=, indexpvt=, control=, inbox=/tmp/dsync_test/mbox/2002-September, alt dsync(sampablokuper): Error: Mail locations must use the same virtual mailbox hierarchy separator (specify separator for the default namespace) I got the same error again when I tried the command above with "/" instead of "." as the hierarchy separator. Forgive me for my ignorance, but how should I correct the invocation I used above? In other words: using dsync, how can I extract/copy the emails from the mbox to the new Maildir? Thank you! -- A: When it messes up the order in which people normally read text. Q: When is top-posting a bad thing? () ASCII ribbon campaign. Please avoid HTML emails & proprietary /\ file formats. (Why? See e.g. https://v.gd/jrmGbS ). Thank you.
Aki Tuomi
2020-May-13 08:03 UTC
Convert standalone mbox to standalone Maildir with Dsync - hierarchy separator error
> On 13/05/2020 10:11 Sam Kuper <sampablokuper at posteo.net> wrote: > > > Dear Dovecot users/devs, > > I have the following mbox file: > > /tmp/dsync_test/mbox/2002-September > > I would like to convert it to a Maildir: > > /tmp/dsync_test/maildir > > (Currently, the latter is just an empty directory.) > > I am attempting this on an old PC running Debian 9 ("Stretch"). I > installed the dovecot-core package in order to make the `dsync` tool > available on that PC. I have not otherwise done anything with Dovecot > on that PC; for instance, I have not created or edited any Dovecot > config files. `man dsync` gives the Dovecot version as 2.2. > > Inspired by the man page and the Dovecot wiki, here was my first attempt > to perform the conversion. (I have added newlines between each line of > the output, for readability.) > > > $ dsync -Dv -o 'mail_location=maildir:/tmp/dsync_test/maildir' \ > backup \ > mbox:/tmp/dsync_test/mbox/:INBOX=/tmp/dsync_test/mbox/2002-September > > Debug: Loading modules from directory: > /usr/lib/dovecot/modules/doveadm > > Debug: Skipping module doveadm_acl_plugin, because dlopen() failed: > /usr/lib/dovecot/modules/doveadm/lib10_doveadm_acl_plugin.so: > undefined symbol: acl_lookup_dict_iterate_visible_next (this is > usually intentional, so just ignore this message) > > Debug: Skipping module doveadm_expire_plugin, because dlopen() > failed: > /usr/lib/dovecot/modules/doveadm/lib10_doveadm_expire_plugin.so: > undefined symbol: expire_set_deinit (this is usually intentional, so > just ignore this message) > > Debug: Skipping module doveadm_quota_plugin, because dlopen() > failed: > /usr/lib/dovecot/modules/doveadm/lib10_doveadm_quota_plugin.so: > undefined symbol: quota_user_module (this is usually intentional, so > just ignore this message) > > Debug: Skipping module doveadm_fts_lucene_plugin, because dlopen() > failed: > /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_lucene_plugin.so: > undefined symbol: lucene_index_iter_deinit (this is usually > intentional, so just ignore this message) > > Debug: Skipping module doveadm_fts_plugin, because dlopen() failed: > /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_plugin.so: > undefined symbol: fts_user_get_language_list (this is usually > intentional, so just ignore this message) > > Debug: Skipping module doveadm_mail_crypt_plugin, because dlopen() > failed: > /usr/lib/dovecot/modules/doveadm/libdoveadm_mail_crypt_plugin.so: > undefined symbol: mail_crypt_box_get_pvt_digests (this is usually > intentional, so just ignore this message) > > doveadm(sampablokuper): Debug: Effective uid=1000, gid=1000, > home=/home/sampablokuper > > doveadm(sampablokuper): Debug: Namespace inbox: type=private, > prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes > location=maildir:/tmp/dsync_test/maildir > > doveadm(sampablokuper): Debug: maildir++: > root=/tmp/dsync_test/maildir, index=, indexpvt=, control=, > inbox=/tmp/dsync_test/maildir, alt> > doveadm(sampablokuper): Debug: Namespace : Using permissions from > /tmp/dsync_test/maildir: mode=0755 gid=default dsync(sampablokuper): > Debug: Effective uid=1000, gid=1000, home=/home/sampablokuper > > dsync(sampablokuper): Debug: Namespace inbox: type=private, prefix=, > sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes > location=mbox:/tmp/dsync_test/mbox/:INBOX=/tmp/dsync_test/mbox/2002-September > > dsync(sampablokuper): Debug: fs: root=/tmp/dsync_test/mbox, index=, > indexpvt=, control=, inbox=/tmp/dsync_test/mbox/2002-September, alt> > dsync(sampablokuper): Error: Mail locations must use the same > virtual mailbox hierarchy separator (specify separator for the > default namespace) > > > As you can see, it ends with "Error: Mail locations must use the same > virtual mailbox hierarchy separator (specify separator for the default > namespace)". > > So, I tried specifying a hierarchy separator, but this failed too: > > > $ dsync -Dv \ > -o 'separator=.' \ > -o 'mail_location=maildir:/tmp/dsync_test/maildir' \ > backup \ > mbox:/tmp/dsync_test/mbox/:INBOX=/tmp/dsync_test/mbox/2002-September > > Debug: Loading modules from directory: > /usr/lib/dovecot/modules/doveadm > > Debug: Skipping module doveadm_acl_plugin, because dlopen() failed: > /usr/lib/dovecot/modules/doveadm/lib10_doveadm_acl_plugin.so: > undefined symbol: acl_lookup_dict_iterate_visible_next (this is > usually intentional, so just ignore this message) > > Debug: Skipping module doveadm_expire_plugin, because dlopen() > failed: > /usr/lib/dovecot/modules/doveadm/lib10_doveadm_expire_plugin.so: > undefined symbol: expire_set_deinit (this is usually intentional, so > just ignore this message) > > Debug: Skipping module doveadm_quota_plugin, because dlopen() > failed: > /usr/lib/dovecot/modules/doveadm/lib10_doveadm_quota_plugin.so: > undefined symbol: quota_user_module (this is usually intentional, so > just ignore this message) > > Debug: Skipping module doveadm_fts_lucene_plugin, because dlopen() > failed: > /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_lucene_plugin.so: > undefined symbol: lucene_index_iter_deinit (this is usually > intentional, so just ignore this message) > > Debug: Skipping module doveadm_fts_plugin, because dlopen() failed: > /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_plugin.so: > undefined symbol: fts_user_get_language_list (this is usually > intentional, so just ignore this message) > > Debug: Skipping module doveadm_mail_crypt_plugin, because dlopen() > failed: > /usr/lib/dovecot/modules/doveadm/libdoveadm_mail_crypt_plugin.so: > undefined symbol: mail_crypt_box_get_pvt_digests (this is usually > intentional, so just ignore this message) > > doveadm(sampablokuper): Debug: Effective uid=1000, gid=1000, > home=/home/sampablokuper > > doveadm(sampablokuper): Debug: Namespace inbox: type=private, > prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes > location=maildir:/tmp/dsync_test/maildir > > doveadm(sampablokuper): Debug: maildir++: > root=/tmp/dsync_test/maildir, index=, indexpvt=, control=, > inbox=/tmp/dsync_test/maildir, alt> > doveadm(sampablokuper): Debug: Namespace : Using permissions from > /tmp/dsync_test/maildir: mode=0755 gid=default > > dsync(sampablokuper): Debug: Effective uid=1000, gid=1000, > home=/home/sampablokuper > > dsync(sampablokuper): Debug: Namespace inbox: type=private, prefix=, > sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes > location=mbox:/tmp/dsync_test/mbox/:INBOX=/tmp/dsync_test/mbox/2002-September > > dsync(sampablokuper): Debug: fs: root=/tmp/dsync_test/mbox, index=, > indexpvt=, control=, inbox=/tmp/dsync_test/mbox/2002-September, alt> > dsync(sampablokuper): Error: Mail locations must use the same > virtual mailbox hierarchy separator (specify separator for the > default namespace) > > > I got the same error again when I tried the command above with "/" > instead of "." as the hierarchy separator. > > Forgive me for my ignorance, but how should I correct the invocation I > used above? In other words: using dsync, how can I extract/copy the > emails from the mbox to the new Maildir? > > Thank you! > > -- > A: When it messes up the order in which people normally read text. > Q: When is top-posting a bad thing? > > () ASCII ribbon campaign. Please avoid HTML emails & proprietary > /\ file formats. (Why? See e.g. https://v.gd/jrmGbS ). Thank you.Edit your dovecot.conf and add namespace { inbox = yes # or use '.' here. separator = / } Aki
Sam Kuper
2020-May-21 03:16 UTC
Convert standalone mbox to standalone Maildir with Dsync - hierarchy separator error
On Wed, May 13, 2020 at 11:03:37AM +0300, Aki Tuomi wrote:> Edit your dovecot.conf and add > > namespace { > inbox = yes > # or use '.' here. > separator = / > }Thanks for the suggestion! I added those lines to the bottom of /etc/dovecot/dovecot.conf . However, when I attempted the mbox to maildir conversion afterwards, I still received an error, albeit a different one: $ dsync -Dv \ -o 'mail_location=maildir:/tmp/dsync_test/maildir' \ backup \ mbox:/tmp/dsync_test/mbox/:INBOX=/tmp/dsync_test/mbox/2002-September Debug: Loading modules from directory: /usr/lib/dovecot/modules/doveadm Debug: Skipping module doveadm_acl_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib10_doveadm_acl_plugin.so: undefined symbol: acl_lookup_dict_iterate_visible_next (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_expire_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib10_doveadm_expire_plugin.so: undefined symbol: expire_set_deinit (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_quota_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib10_doveadm_quota_plugin.so: undefined symbol: quota_user_module (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_fts_lucene_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_lucene_plugin.so: undefined symbol: lucene_index_iter_deinit (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_fts_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_plugin.so: undefined symbol: fts_user_get_language_list (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_mail_crypt_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/libdoveadm_mail_crypt_plugin.so: undefined symbol: mail_crypt_box_get_pvt_digests (this is usually intentional, so just ignore this message) doveadm(sampablokuper): Debug: Effective uid=1000, gid=1000, home=/home/sampablokuper doveadm(sampablokuper): Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:/tmp/dsync_test/maildir doveadm(sampablokuper): Debug: maildir++: root=/tmp/dsync_test/maildir, index=, indexpvt=, control=, inbox=/tmp/dsync_test/maildir, alt doveadm(sampablokuper): Debug: Namespace : type=private, prefix=, sep=/, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:/tmp/dsync_test/maildir doveadm(sampablokuper): Debug: maildir++: root=/tmp/dsync_test/maildir, index=, indexpvt=, control=, inbox=/tmp/dsync_test/maildir, alt doveadm(sampablokuper): Error: User initialization failed: namespace configuration error: Duplicate namespace prefix: "" doveadm(sampablokuper): Error: User init failed I was able to resolve this error by commenting out this line in my /etc/dovecot/dovecot.conf: include conf.d/*.conf Even after that, though, dsync still failed to migrate the source mbox's contents to the target maildir, but this time with a "Skipping unchanged mailbox" message. See below for full output. (Dsync did however replace the source mbox's contents with a dummy message: "This text is part of the internal format of your mail folder, and is not a real message. ...".) I would be grateful for assistance to make dsync convert the mbox to a maildir. Here is dsync's output: $ dsync -Dv -o mail_location=maildir:/tmp/dsync_test/maildir backup mbox:/tmp/dsync_test/mbox/:INBOX=/tmp/dsync_test/mbox/2002-September Debug: Loading modules from directory: /usr/lib/dovecot/modules/doveadm Debug: Skipping module doveadm_acl_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib10_doveadm_acl_plugin.so: undefined symbol: acl_lookup_dict_iterate_visible_next (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_expire_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib10_doveadm_expire_plugin.so: undefined symbol: expire_set_deinit (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_quota_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib10_doveadm_quota_plugin.so: undefined symbol: quota_user_module (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_fts_lucene_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_lucene_plugin.so: undefined symbol: lucene_index_iter_deinit (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_fts_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/lib20_doveadm_fts_plugin.so: undefined symbol: fts_user_get_language_list (this is usually intentional, so just ignore this message) Debug: Skipping module doveadm_mail_crypt_plugin, because dlopen() failed: /usr/lib/dovecot/modules/doveadm/libdoveadm_mail_crypt_plugin.so: undefined symbol: mail_crypt_box_get_pvt_digests (this is usually intentional, so just ignore this message) doveadm(sampablokuper): Debug: Effective uid=1000, gid=1000, home=/home/sampablokuper doveadm(sampablokuper): Debug: Namespace : type=private, prefix=, sep=/, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:/tmp/dsync_test/maildir doveadm(sampablokuper): Debug: maildir++: root=/tmp/dsync_test/maildir, index=, indexpvt=, control=, inbox=/tmp/dsync_test/maildir, alt doveadm(sampablokuper): Debug: Namespace : Using permissions from /tmp/dsync_test/maildir: mode=0755 gid=default dsync(sampablokuper): Debug: Effective uid=1000, gid=1000, home=/home/sampablokuper dsync(sampablokuper): Debug: Namespace : type=private, prefix=, sep=/, inbox=yes, hidden=no, list=yes, subscriptions=yes location=mbox:/tmp/dsync_test/mbox/:INBOX=/tmp/dsync_test/mbox/2002-September dsync(sampablokuper): Debug: fs: root=/tmp/dsync_test/mbox, index=, indexpvt=, control=, inbox=/tmp/dsync_test/mbox/2002-September, alt dsync(sampablokuper): Debug: Namespace : Using permissions from /tmp/dsync_test/mbox: mode=0755 gid=default dsync(sampablokuper): Debug: brain M: Local mailbox tree: INBOX guid=49147222caefc55e0851000041fea997 uid_validity=1590030282 uid_next=1 subs=no last_change=0 last_subs=0 dsync(sampablokuper): Debug: brain S: Local mailbox tree: INBOX guid=aa02c63478e7c55eff3a000041fea997 uid_validity=1590028152 uid_next=1 subs=no last_change=0 last_subs=0 dsync(sampablokuper): Debug: brain M: Remote mailbox tree: INBOX guid=aa02c63478e7c55eff3a000041fea997 uid_validity=1590028152 uid_next=1 subs=no last_change=0 last_subs=0 dsync(sampablokuper): Debug: brain S: Remote mailbox tree: INBOX guid=49147222caefc55e0851000041fea997 uid_validity=1590030282 uid_next=1 subs=no last_change=0 last_subs=0 dsync(sampablokuper): Debug: brain M: Remote mailbox tree deletion: guid=ab02c63478e7c55eff3a000041fea997 type=mailbox timestamp=1590028152 name= local update=not found dsync(sampablokuper): Debug: brain M: Mailbox INBOX: local=49147222caefc55e0851000041fea997/0/1, remote=aa02c63478e7c55eff3a000041fea997/0/1: GUIDs conflict - will be merged later dsync(sampablokuper): Debug: brain S: Mailbox INBOX: local=aa02c63478e7c55eff3a000041fea997/0/1, remote=49147222caefc55e0851000041fea997/0/1: GUIDs conflict - will be merged later dsync(sampablokuper): Debug: brain S: Deleting mailbox 'INBOX' (GUID aa02c63478e7c55eff3a000041fea997): UIDVALIDITY changed (1590030282 -> 1590028152) dsync(sampablokuper): Debug: Namespace : /tmp/dsync_test/mbox/2002-September doesn't exist yet, using default permissions dsync(sampablokuper): Debug: Namespace : Using permissions from /tmp/dsync_test/mbox: mode=0755 gid=default dsync(sampablokuper): Debug: Namespace : /tmp/dsync_test/mbox/2002-September doesn't exist yet, using default permissions dsync(sampablokuper): Debug: Namespace : Using permissions from /tmp/dsync_test/mbox: mode=0755 gid=default dsync(sampablokuper): Debug: brain S: Skipping unchanged mailbox 49147222caefc55e0851000041fea997 And here is my full /etc/dovecot/dovecot.conf : ## Dovecot configuration file # If you're in a hurry, see http://wiki2.dovecot.org/QuickConfiguration # "doveconf -n" command gives a clean output of the changed settings. Use it # instead of copy&pasting files when posting to the Dovecot mailing list. # '#' character and everything after it is treated as comments. Extra spaces # and tabs are ignored. If you want to use either of these explicitly, put the # value inside quotes, eg.: key = "# char and trailing whitespace " # Most (but not all) settings can be overridden by different protocols and/or # source/destination IPs by placing the settings inside sections, for example: # protocol imap { }, local 127.0.0.1 { }, remote 10.0.0.0/8 { } # Default values are shown for each setting, it's not required to uncomment # those. These are exceptions to this though: No sections (e.g. namespace {}) # or plugin settings are added by default, they're listed only as examples. # Paths are also just examples with the real defaults being based on configure # options. The paths listed here are for configure --prefix=/usr # --sysconfdir=/etc --localstatedir=/var # Enable installed protocols !include_try /usr/share/dovecot/protocols.d/*.protocol # A comma separated list of IPs or hosts where to listen in for connections. # "*" listens in all IPv4 interfaces, "::" listens in all IPv6 interfaces. # If you want to specify non-default ports or anything more complex, # edit conf.d/master.conf. #listen = *, :: # Base directory where to store runtime data. #base_dir = /var/run/dovecot/ # Name of this instance. In multi-instance setup doveadm and other commands # can use -i <instance_name> to select which instance is used (an alternative # to -c <config_path>). The instance name is also added to Dovecot processes # in ps output. #instance_name = dovecot # Greeting message for clients. #login_greeting = Dovecot ready. # Space separated list of trusted network ranges. Connections from these # IPs are allowed to override their IP addresses and ports (for logging and # for authentication checks). disable_plaintext_auth is also ignored for # these networks. Typically you'd specify your IMAP proxy servers here. #login_trusted_networks # Space separated list of login access check sockets (e.g. tcpwrap) #login_access_sockets # With proxy_maybe=yes if proxy destination matches any of these IPs, don't do # proxying. This isn't necessary normally, but may be useful if the destination # IP is e.g. a load balancer's IP. #auth_proxy_self # Show more verbose process titles (in ps). Currently shows user name and # IP address. Useful for seeing who are actually using the IMAP processes # (eg. shared mailboxes or if same uid is used for multiple accounts). #verbose_proctitle = no # Should all processes be killed when Dovecot master process shuts down. # Setting this to "no" means that Dovecot can be upgraded without # forcing existing client connections to close (although that could also be # a problem if the upgrade is e.g. because of a security fix). #shutdown_clients = yes # If non-zero, run mail commands via this many connections to doveadm server, # instead of running them directly in the same process. #doveadm_worker_count = 0 # UNIX socket or host:port used for connecting to doveadm server #doveadm_socket_path = doveadm-server # Space separated list of environment variables that are preserved on Dovecot # startup and passed down to all of its child processes. You can also give # key=value pairs to always set specific settings. #import_environment = TZ ## ## Dictionary server settings ## # Dictionary can be used to store key=value lists. This is used by several # plugins. The dictionary can be accessed either directly or though a # dictionary server. The following dict block maps dictionary names to URIs # when the server is used. These can then be referenced using URIs in format # "proxy::<name>". dict { #quota = mysql:/etc/dovecot/dovecot-dict-sql.conf.ext #expire = sqlite:/etc/dovecot/dovecot-dict-sql.conf.ext } # Most of the actual configuration gets included below. The filenames are # first sorted by their ASCII value and parsed in that order. The 00-prefixes # in filenames are intended to make it easier to understand the ordering. #!include conf.d/*.conf # A config file can also tried to be included without giving an error if # it's not found: !include_try local.conf # Added 16/5/2020, per Aki Tuomi advice: namespace { inbox = yes # or use '.' here. separator = / } Thank you again! -- A: When it messes up the order in which people normally read text. Q: When is top-posting a bad thing? () ASCII ribbon campaign. Please avoid HTML emails & proprietary /\ file formats. (Why? See e.g. https://v.gd/jrmGbS ). Thank you.
Apparently Analagous Threads
- Convert standalone mbox to standalone Maildir with Dsync - hierarchy separator error
- Convert standalone mbox to standalone Maildir with Dsync - hierarchy separator error
- dovecot fts hangs on search
- doveadm dsync-server doesn't use user parameter?
- doveadm expunge not expunging anymore