MailDir and Dbox (Multi-Dbox = mdbox)

serverfault.com: Migrating to postfix from qmail/vpopmail

catalyst2: MailDir and Mdbox
iRedMail: Change per-user mailbox format (e.g. maildir, mdbox)

dovecot

# pkg info | grep dovecot
dovecot2-2.2.20                Secure, fast and powerful IMAP and POP3 server

Doc

dbox Mailbox Format
Migrating mailboxes

Wiki

Migration/MailFormat: Converting between mailbox formats
Tools/Doveadm/Sync: Doveadm-Sync
Migrating from any IMAP/POP3 server to Dovecot via dsync

mail_location = maildir:/usr/local/vpopmail/domains/%d/%n/Maildir
/etc/dovecot/dovecot.conf
/etc/dovecot/dovecot-dict-auth.conf.ext
/etc/dovecot/dovecot-dict-sql.conf.ext
/etc/dovecot/dovecot-sql.conf.ext
/etc/dovecot/conf.d/10-auth.conf
/etc/dovecot/conf.d/10-director.conf
/etc/dovecot/conf.d/10-logging.conf
/etc/dovecot/conf.d/10-mail.conf
/etc/dovecot/conf.d/10-master.conf
/etc/dovecot/conf.d/10-ssl.conf
/etc/dovecot/conf.d/10-tcpwrapper.conf
/etc/dovecot/conf.d/15-lda.conf
/etc/dovecot/conf.d/15-mailboxes.conf
/etc/dovecot/conf.d/90-acl.conf
/etc/dovecot/conf.d/90-plugin.conf
/etc/dovecot/conf.d/90-quota.conf
/etc/dovecot/conf.d/auth-checkpassword.conf.ext
/etc/dovecot/conf.d/auth-deny.conf.ext
/etc/dovecot/conf.d/auth-dict.conf.ext
/etc/dovecot/conf.d/auth-master.conf.ext
/etc/dovecot/conf.d/auth-passwdfile.conf.ext
/etc/dovecot/conf.d/auth-sql.conf.ext
/etc/dovecot/conf.d/auth-static.conf.ext
/etc/dovecot/conf.d/auth-system.conf.ext
/etc/dovecot/conf.d/auth-vpopmail.conf.ext
/etc/systemd/system/multi-user.target.wants/dovecot.service → /lib/systemd/system/dovecot.service
$ doveadm backup -f -u info@xxx.com maildir:/home/andreas/MailBackup
doveadm(info@xxx.com): Error: userdb lookup: connect(/var/run/dovecot/auth-userdb) failed: Permission denied (euid=1001(andreas) egid=1001(andreas) missing +r perm: /var/run/dovecot/auth-userdb, dir owned by 0:0 mode=0755)
doveadm(info@xxx.com): Fatal: User lookup failed: Internal error occurred. Refer to server log for more information.

# doveadm backup -f -u info@xxx.com maildir:/home/andreas/MailBackup
dsync(info@xxx.com): Error: mkdir(/home/andreas/MailBackup/cur) failed: Permission denied (euid=89(vpopmail) egid=89(vchkpw) missing +w perm: /home/andreas/MailBackup, dir owned by 1001:1001 mode=0755)
dsync(info@xxx.com): Error: open(/home/andreas/MailBackup/maildirfolder, O_CREAT) failed: Permission denied
dsync(info@xxx.com): Error: mkdir(/home/andreas/MailBackup/cur) failed: Permission denied (euid=89(vpopmail) egid=89(vchkpw) missing +w perm: /home/andreas/MailBackup, dir owned by 1001:1001 mode=0755)
dsync(info@xxx.com): Error: Can't create mailbox INBOX: Internal error occurred. Refer to server log for more information. [2022-09-10 15:02:59]

# chown vpopmail:vchkpw /home/andreas/MailBackup
# doveadm backup -f -u info@xxx.com maildir:/home/andreas/MailBackup
# ls -la /home/andreas/MailBackup
drwxr-xr-x  5 vpopmail  vchkpw   512 Sep 10 15:14 .Trash
drwxr-xr-x  2 vpopmail  vchkpw   512 Sep 10 15:14 cur
-rw-r--r--  1 vpopmail  vchkpw   536 Sep 10 15:14 dovecot-uidlist
-rw-r--r--  1 vpopmail  vchkpw     8 Sep 10 15:14 dovecot-uidvalidity
-r--r--r--  1 vpopmail  vchkpw     0 Sep 10 15:14 dovecot-uidvalidity.631c8dab
-rw-r--r--  1 vpopmail  vchkpw  3524 Sep 10 15:14 dovecot.index.cache
-rw-r--r--  1 vpopmail  vchkpw   740 Sep 10 15:14 dovecot.index.log
-rw-r--r--  1 vpopmail  vchkpw    24 Sep 10 15:14 dovecot.mailbox.log
-rw-r--r--  1 vpopmail  vchkpw     0 Sep 10 15:14 maildirfolder
drwxr-xr-x  2 vpopmail  vchkpw   512 Sep 10 15:14 new
-rw-r--r--  1 vpopmail  vchkpw     6 Sep 10 15:14 subscriptions
drwxr-xr-x  2 vpopmail  vchkpw   512 Sep 10 15:14 tmp

# doveadm backup -f -u info@styleesh.com mdbox:/home/andreas/MailBackup
dsync(info@styleesh.com): Error: Mail locations must use the same virtual mailbox hierarchy separator (specify separator for the default namespace)

# doveadm backup -f -u info@styleesh.com -o mail_location=mdbox:/home/andreas/MailBackup/mdbox maildir:/home/andreas/MailBackup/maildir
doveadm: illegal option -- o
doveadm backup [-u <user>|-A] [-S <socket_path>] [-fPRU] [-l <secs>] [-r <rawlog path>] [-m <mailbox>] [-g <mailbox_guid>] [-n <namespace> | -N] [-x <exclude>] [-s <state>] -d|<dest>

# doveadm -D -o mail_location=mdbox:/home/andreas/MailBackup/mdbox backup -fR -u info@xxx.com maildir:/home/andreas/MailBackup/maildir
Debug: Loading modules from directory: /usr/local/lib/dovecot/doveadm
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)
Debug: Skipping module doveadm_expire_plugin, because dlopen() failed: /usr/local/lib/dovecot/doveadm/lib10_doveadm_expire_plugin.so: Undefined symbol "expire_set_lookup" (this is usually intentional, so just ignore this message)
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)
Debug: Module loaded: /usr/local/lib/dovecot/doveadm/lib10_doveadm_sieve_plugin.so
Debug: Skipping module doveadm_fts_plugin, because dlopen() failed: /usr/local/lib/dovecot/doveadm/lib20_doveadm_fts_plugin.so: Undefined symbol "fts_list_backend" (this is usually intentional, so just ignore this message)
doveadm(info@xxx.com): Debug: Effective uid=89, gid=89, home=/usr/local/vpopmail/domains/xxx.com/info
doveadm(info@xxx.com): Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=mdbox:/home/andreas/MailBackup/mdbox
doveadm(info@xxx.com): Debug: fs: root=/home/andreas/MailBackup/mdbox, index=, indexpvt=, control=, inbox=, alt=
doveadm(info@xxx.com): Debug: Namespace : Using permissions from /home/andreas/MailBackup/mdbox: mode=0755 gid=default
dsync(info@xxx.com): Debug: Effective uid=89, gid=89, home=/usr/local/vpopmail/domains/xxx.com/info
dsync(info@xxx.com): Debug: Namespace inbox: type=private, prefix=, sep=, inbox=yes, hidden=no, list=yes, subscriptions=yes location=maildir:/home/andreas/MailBackup/maildir
dsync(info@xxx.com): Debug: maildir++: root=/home/andreas/MailBackup/maildir, index=, indexpvt=, control=, inbox=/home/andreas/MailBackup/maildir, alt=
dsync(info@xxx.com): Error: Mail locations must use the same virtual mailbox hierarchy separator (specify separator for the default namespace)

doveadm(info@styleesh.com): Error: User initialization failed: namespace configuration error: list=yes requires prefix=backup to end with separator
doveadm(info@styleesh.com): Fatal: User init failed

doveadm(info@styleesh.com): Error: User initialization failed: namespace configuration error: All list=yes namespaces must use the same separator
doveadm(info@styleesh.com): Fatal: User init failed

# doveadm backup -f -u abc@xyz.ch mdbox:/home/andreas/dovecot_backup/xyz.ch/abc

/usr: write failed, filesystem is full
dsync(abc@xyz.ch): Error: write(/home/andreas/dovecot_backup/xyz.ch/abc/storage/.temp.1670767993.P88286Q1689M398392.ns2.xyz.ch) failed: No space left on device
dsync(abc@xyz.ch): Error: write(/home/andreas/dovecot_backup/xyz.ch/abc/storage/.temp.1670767993.P88286Q1689M398392.ns2.xyz.ch) failed: No space left on device
dsync(abc@xyz.ch): Error: write() failed for file /home/andreas/dovecot_backup/xyz.ch/abc/storage/.temp.1670767993.P88286Q1689M398392.ns2.xyz.ch: No space left on device

/usr: write failed, filesystem is full
dsync(abc@xyz.ch): Error: write(/home/andreas/dovecot_backup/xyz.ch/abc/storage/.temp.1670767993.P88286Q1690M398392.ns2.xyz.ch) failed: No space left on device
dsync(abc@xyz.ch): Error: Mailbox Trash: Saving failed: Internal error occurred. Refer to server log for more information. [2022-12-11 15:13:13]
dsync(abc@xyz.ch): Error: write(/home/andreas/dovecot_backup/xyz.ch/abc/storage/.temp.1670767993.P88286Q1690M398392.ns2.xyz.ch) failed: No space left on device

/usr: write failed, filesystem is full

/usr: write failed, filesystem is full
dsync(abc@xyz.ch): Error: write() failed for file /home/andreas/dovecot_backup/xyz.ch/abc/storage/.temp.1670767993.P88286Q1689M398392.ns2.xyz.ch: No space left on device
dsync(abc@xyz.ch): Error: Mailbox Trash: Save commit failed: Internal error occurred. Refer to server log for more information. [2022-12-11 15:13:13]

cyon

E-Mail-Konten von einem anderen Dienst zu cyon transferieren

Leave a Reply

Your email address will not be published. Required fields are marked *