Hi,

I had an old dovecot server with a working backup script.

Basic concept was:
   - to dsync to a temp folder
   - using tar to preserve datetime
   - piping this 7z to benefit from my 16 core cpu
   - piping this through openssl to encrypt

Over time the size of all my mail grew from 3GB to about 70GB.
I used to keep the last 14 backups, but this uses a lot of space.

I now want to dsync my Maildir onto my NAS via NFS and use the backup
tool provided by Synology to have incremental compressed backup.

However I cannot get dsync to run.

root@mail:/mnt/backup_mail# dsync -f -u USER@DOMAIN backup maildir:/mnt/backup_mail/MAILSERVER_FQDN/DOMAIN/USER/mail
dsync(USER@DOMAIN): Error: User initialization failed: Namespace '': stat(/mnt/backup_mail/MAILSERVER_FQDN/DOMAIN/USER/mail) failed: Permission denied (euid=1001(vmail) egid=1001(vmail) missing +x perm: /mnt/backup_mail, UNIX perms appear ok (ACL/MAC wrong?))
root@mail:/mnt/backup_mail# dsync -u USER@DOMAIN backup maildir:/mnt/backup_mail/MAILSERVER_FQDN/DOMAIN/USER/mail
dsync(USER@DOMAIN): Error: User initialization failed: Namespace '': stat(/mnt/backup_mail/MAILSERVER_FQDN/DOMAIN/USER/mail) failed: Permission denied (euid=1001(vmail) egid=1001(vmail) missing +x perm: /mnt/backup_mail, dir owner missing perms)
———
Error message changed after removing „-f“. I then applied the folder permissions  (chmod +x backup_mail/) and I get a different error:

root@mail:/mnt/backup_mail# dsync -f -u USER@DOMAIN backup maildir:/mnt/backup_mail/MAILSERVER_FQDN/DOMAIN/USER/mail
dsync(USER@DOMAIN): Error: User initialization failed: namespace configuration error: All list=yes namespaces must use the same separator

I found something about the namespace issue, but did not quite understand I guess. (separators seem to differ)

From doveconf -n:
[...]
namespace {
  list = children
  location = maildir:/var/vmail/mailboxes/%%d/%%n/Maildir:INDEXPVT=~/Maildir/shared/%%u
  prefix = shared/%%u/
  separator = /
  subscriptions = yes
  type = shared
}
namespace inbox {
  inbox = yes
  location = 
  mailbox Drafts {
    auto = subscribe
    special_use = \Drafts
  }
  mailbox Sent {
    auto = subscribe
    special_use = \Sent
  }
  mailbox Spam {
    auto = subscribe
    autoexpunge = 30 days
    special_use = \Junk
  }
  mailbox Trash {
    auto = subscribe
    autoexpunge = 183 days
    special_use = \Trash
  }
  prefix = 
}
[…]
———
However I only set up the namespace for inbox. 

root@mail:/mnt/backup_mail# doveconf namespace gives

namespace {
  disabled = no
  hidden = no
  ignore_on_failure = no
  inbox = no
  list = children
  location = maildir:/var/vmail/mailboxes/%%d/%%n/Maildir:INDEXPVT=~/Maildir/shared/%%u
  order = 0
  prefix = shared/%%u/
  separator = /
  subscriptions = yes
  type = shared
}
namespace inbox {
  disabled = no
  hidden = no
  ignore_on_failure = no
  inbox = yes
  list = yes
  location = 
  mailbox Drafts {
    auto = subscribe
    autoexpunge = 0
    autoexpunge_max_mails = 0
    comment = 
    driver = 
    special_use = \Drafts
  }
  mailbox Sent {
    auto = subscribe
    autoexpunge = 0
    autoexpunge_max_mails = 0
    comment = 
    driver = 
    special_use = \Sent
  }
  mailbox Spam {
    auto = subscribe
    autoexpunge = 60 days
    autoexpunge_max_mails = 0
    comment = 
    driver = 
    special_use = \Junk
  }
  mailbox Trash {
    auto = subscribe
    autoexpunge = 60 days
    autoexpunge_max_mails = 0
    comment = 
    driver = 
    special_use = \Trash
  }
  order = 0
  prefix = 
  separator = 
  subscriptions = yes
  type = private
}

I guess here we see the config including defaults. Well… I think I only need the inbox namespace either way, so I tried:

root@mail:/mnt/backup_mail# dsync -f -u USER@DOMAIN backup maildir:/mnt/backup_mail/MAILSERVER_FQDN/DOMAIN/USER/mail/ -n inbox
dsync-local(USER@DOMAIN): Error: read(remote) failed: EOF (version not received)
doveadm(USER@DOMAIN): Fatal: execvp(maildir:/mnt/backup_mail/MAILSERVER_FQDN/DOMAIN/USER/mail/) failed: No such file or directory
dsync-local(USER@DOMAIN): Error: Remote command process isn't dying, killing it
dsync-local(USER@DOMAIN): Error: kill(15306, SIGKILL) failed: Operation not permitted

The folder (mnt/backup_mail/MAILSERVER_FQDN/DOMAIN/USER/mail) however does exist.

Can anybody tell me if there is something I miss?

Thanks in advance!

-M