Anyone? What are the steps to take to migrate from dot-to slash-separator with LAYOUT=fs?
> On 11.10.2016, at 00:06, Simeon Ott <simeon....@onnet.ch> wrote: > > Hello, > > I stumbled across a 5-year-old post on the dovecot list about changing the > dovecot hierarchy separator to enable shared mailboxes > (http://www.dovecot.org/list/dovecot/2011-January/056201.html > <http://www.dovecot.org/list/dovecot/2011-January/056201.html>). > At the moment I’m stuck in a pretty similar situation. Migrated from courier > to dovecot 2 years ago and preserved the dot-separator. > Because I’m using the e-mail adress as a username, the dots for folder > separation and the dots in the email adresses getting messed up - > > I do have a pretty small mailserver with about 150 accounts. The Maildir > filestructur of a typical mail account looks like this: > drwx------ 2 vmail vmail 4096 Oct 10 20:02 cur > drwx------ 5 vmail vmail 4096 Oct 3 07:48 .Daten.Administration > drwx------ 5 vmail vmail 4096 Oct 3 09:51 .Daten.Anfragen, Werbung > drwx------ 5 vmail vmail 4096 Oct 3 08:02 .Daten > drwx------ 5 vmail vmail 4096 Oct 6 09:57 .Daten.Intern > drwx------ 5 vmail vmail 4096 Oct 3 08:03 .Daten.Intern.Fahrzeuge > drwx------ 5 vmail vmail 4096 Oct 6 12:57 .Daten.Intern.Infos, FileMaker > etc > drwx------ 5 vmail vmail 4096 Oct 3 09:19 .Daten.Intern.Sonstiges > drwx------ 5 vmail vmail 4096 Oct 3 07:47 .Daten.Kunden > drwx------ 5 vmail vmail 4096 Sep 16 08:29 .Daten.Lieferanten > drwx------ 5 vmail vmail 4096 Oct 3 08:28 .Daten.Marketing > drwx------ 2 vmail vmail 4096 Oct 10 20:02 new > drwx------ 5 vmail vmail 4096 Oct 10 18:00 .Sent > drwx------ 5 vmail vmail 4096 Oct 10 18:00 .Spam > drwx------ 5 vmail vmail 4096 Oct 10 18:00 .Trash > > When changing the separator in my inbox namespace the documentation mentions > that the filestructur doesn’t change. This means I will get the same problems > when using shared boxes with email adresses as usernames. I definitly need to > change to maildir:~/Maildir:LAYOUT=fs > When changing to LAYOUT=fs i need to convert all the mailboxes manually, is > that correct? Is dsync is the way to go? > Or is it better to leave the separator and change to a different username > schema (without dots in it) and advise the clients to change their > credentials? > > I know there are people out there who successfully converted this - but I > can’f find that many information about this subject. > > doveconf -n: > # 2.1.7: /etc/dovecot/dovecot.conf > # OS: Linux 3.2.0-4-amd64 x86_64 Debian 7.11 > auth_mechanisms = plain login > auth_verbose = yes > lda_mailbox_autocreate = yes > lda_mailbox_autosubscribe = yes > listen = * > login_log_format_elements = user=<%u> method=%m rip=%r lip=%l mpid=%e %c > mail_gid = 5000 > mail_location = maildir:~/Maildir > mail_plugins = zlib quota acl > mail_uid = 5000 > managesieve_notify_capability = mailto > managesieve_sieve_capability = fileinto reject envelope encoded-character > vacation subaddress comparator-i;ascii-numeric relational regex imap4flags > copy include variables body enotify environment mailbox date ihave > namespace inbox { > inbox = yes > location = > mailbox Drafts { > auto = subscribe > special_use = \Drafts > } > mailbox Sent { > auto = subscribe > special_use = \Sent > } > mailbox "Sent Messages" { > special_use = \Sent > } > mailbox Spam { > auto = subscribe > special_use = \Junk > } > mailbox Trash { > auto = subscribe > special_use = \Trash > } > prefix = INBOX. > separator = . > } > passdb { > args = /etc/dovecot/dovecot-ldap.conf > driver = ldap > } > plugin { > acl = vfile > acl_shared_dict = file:/var/spool/postfix/virtual/shared-mailboxes > quota = maildir:User quota > quota_exceeded_message = 4.2.2 Mailbox full > quota_rule = *:storage=1G > quota_rule2 = INBOX.Trash:storage=+100M > quota_rule3 = INBOX.Spam:ignore > quota_warning = storage=95%% quota-warning 95 %u > sieve = ~/.dovecot.sieve > sieve_before = /var/lib/dovecot/sieve/default.sieve > sieve_dir = ~/sieve > sieve_max_actions = 32 > sieve_max_redirects = 4 > sieve_max_script_size = 1M > sieve_quota_max_scripts = 0 > sieve_quota_max_storage = 0 > } > protocols = " imap lmtp sieve pop3" > service auth { > group = dovecot > unix_listener /var/spool/postfix/private/auth { > group = postfix > mode = 0660 > user = postfix > } > unix_listener auth-master { > group = vmail > mode = 0660 > user = vmail > } > user = dovecot > } > service lmtp { > unix_listener lmtp { > mode = 0666 > } > } > service managesieve-login { > inet_listener sieve { > port = 4190 > } > inet_listener sieve_deprecated { > port = 2000 > } > process_min_avail = 1 > service_count = 1 > vsz_limit = 64 M > } > ssl_cert = </etc/ssl/private/startssl-onnet.ch > <http://startssl-onnet.ch/>-chain.crt > ssl_cipher_list = > ECDHE-RSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-RSA-AES128-SHA256:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA:AES256-SHA:DHE-RSA-CAMELLIA128-SHA:DHE-RSA-CAMELLIA256-SHA:CAMELLIA128-SHA:CAMELLIA256-SHA:ECDHE-RSA-DES-CBC3-SHA:DES-CBC3-SHA:!SSLv2 > ssl_key = </etc/ssl/private/startssl-onnet.ch.key > userdb { > args = /etc/dovecot/dovecot-ldap.conf > driver = ldap > } > protocol lmtp { > mail_plugins = zlib quota acl sieve > } > protocol lda { > auth_socket_path = /var/run/dovecot/auth-master > deliver_log_format = msgid=%m: %$ > mail_plugins = zlib quota acl sieve > postmaster_address = postmas...@onnet.ch <mailto:postmas...@onnet.ch> > } > protocol imap { > mail_plugins = zlib quota acl imap_quota imap_acl > } > protocol sieve { > info_log_path = /var/log/sieve.log > log_path = /var/log/sieve.log > mail_max_userip_connections = 10 > managesieve_implementation_string = Dovecot Pigeonhole > managesieve_logout_format = bytes=%i/%o > managesieve_max_compile_errors = 5 > managesieve_max_line_length = 65536 > } > … parts of the ldap config > user_attrs = > homeDirectory=home=/var/spool/postfix/virtual/%$,uidNumber=uid,gidNumber=gid,quota=quota_rule=*:bytes=%$ > user_filter = (&(objectClass=CourierMailAccount)(mail=%u)) > > … my shared configuration is currently commented out. > # namespace { > # type = shared > # separator = . > # prefix = shared.%%u. > # location = maildir:%h/Maildir:INDEX=~/Maildir/shared/%%u > # subscriptions = yes > # list = children > #} > > thanks in advance for any help > > Sincerely, > Simeon - onnet.ch <http://onnet.ch/>