Dsync migration with shared folders

George Dimakopoulos g.dimakopoulos at sophimail.com
Mon Feb 6 16:08:25 UTC 2017


Hi everyone,

We discovered that the migration path from a VPS to our 2XHP replication server environment with shared folders should be:

1) Rsync all domains from the VPS to serverA. Then rsync all domains from ServerA to ServerB. ServerA & ServerB are in a identical state.
2) Create an empty directory for the shared indexes 
3) Start dovecot on both machines.

If we did not sync both machines then dsync could not replicate the domains that contained shared folders.

What is the right migration process for domains with shared folders ?

Regards,
George

dovecot -n
-------------------------
# 2.2.27 (c0f36b0): /usr/local/etc/dovecot/dovecot.conf
# Pigeonhole version 0.4.16 (fed8554)
# OS: FreeBSD 11.0-RELEASE-p2 amd64  zfs
auth_mechanisms = plain login
auth_verbose = yes
default_client_limit = 2560
default_process_limit = 512
dict {
 acl = mysql:/usr/local/etc/dovecot/dovecot-shared-sql.conf.ext
 quota = mysql:/usr/local/etc/dovecot/dovecot-dict-sql.conf.ext
}
doveadm_password =  # hidden, use -P to show it
doveadm_port = 12345
log_path = /var/log/dovecot.log
mail_debug = yes
mail_home = /usr/local/vhosts/mail/%d/%n
mail_location = maildir:/usr/local/vhosts/mail/%d/%n:LAYOUT=fs
mail_max_userip_connections = 70
mail_plugins = quota acl notify replication
mail_privileged_group = vmail
mail_shared_explicit_inbox = yes
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 index ihave duplicate mime foreverypart extracttext
mbox_write_locks = fcntl
namespace {
 inbox = no
 list = children
 location = maildir:/usr/local/vhosts/mail/%%d/%%n:LAYOUT=fs:INDEX=/usr/local/vhosts/indexes/%d/%n/shared/%%u:INDEXPVT=/usr/local/vhosts/indexes/%d/%n/shared/%%u
 prefix = shared/%%d/%%n/
 separator = /
 subscriptions = no
 type = shared
}
namespace inbox {
 inbox = yes
 list = yes
 location = 
 mailbox Drafts {
   auto = subscribe
   special_use = \Drafts
 }
 mailbox Junk {
   auto = subscribe
   special_use = \Junk
 }
 mailbox Sent {
   auto = subscribe
   special_use = \Sent
 }
 mailbox Trash {
   auto = subscribe
   special_use = \Trash
 }
 prefix = 
 separator = /
 type = private
}
passdb {
 args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
 driver = sql
}
plugin {
 acl = vfile
 acl_shared_dict = proxy::acl
 mail_replica = tcp:mx1
 quota = dict:User quota::proxy::quota
 quota_rule2 = Trash:storage=+100M
 sieve = /usr/local/vhosts/mail/%d/%n/.dovecot.sieve
 sieve_before = /usr/local/vhosts/sieve/before.d/
 sieve_dir = /usr/local/vhosts/mail/%d/%n
 sieve_global_dir = /usr/local/vhosts/sieve/%d
 sieve_global_path = /usr/local/vhosts/sieve/%d/default.sieve
}
protocols = imap lmtp sieve sieve
service aggregator {
 fifo_listener replication-notify-fifo {
   mode = 0666
   user = vmail
 }
 unix_listener replication-notify {
   mode = 0666
   user = vmail
 }
}
service auth-worker {
 user = vmail
}
service auth {
 unix_listener /var/spool/postfix/private/auth {
   group = postfix
   mode = 0666
   user = postfix
 }
 unix_listener auth-userdb {
   mode = 0600
   user = vmail
 }
 user = dovecot
}
service config {
 unix_listener config {
   user = vmail
 }
}
service dict {
 unix_listener dict {
   mode = 0600
   user = vmail
 }
}
service doveadm {
 inet_listener {
   port = 12345
 }
 user = vmail
}
service imap-login {
 inet_listener imap {
   port = 143
 }
}
service lmtp {
 unix_listener /var/spool/postfix/private/dovecot-lmtp {
   group = postfix
   mode = 0600
   user = postfix
 }
}
service managesieve-login {
 inet_listener sieve {
   port = 4190
 }
 process_min_avail = 0
 service_count = 1
 vsz_limit = 64 M
}
service replicator {
 unix_listener replicator-doveadm {
   mode = 0666
 }
}
userdb {
 args = /usr/local/etc/dovecot/dovecot-sql.conf.ext
 driver = sql
}
protocol lmtp {
 mail_plugins = quota acl notify replication sieve
}
protocol lda {
 mail_plugins = quota acl notify replication sieve acl
 postmaster_address = root
}
protocol imap {
 imap_client_workarounds = tb-extra-mailbox-sep
 mail_plugins = quota acl notify replication imap_quota imap_acl
}
ssl_cert =
ssl_key =


More information about the dovecot mailing list