ok user at domain.com needs to exist before any operations can be done on it. I discovered that dovecot does not consider a virtual mailbox active until it is returned in the user database see : doveadm user '*' both accounts MUST be returned in the list (user at .net & user at .com) from there it should work as expected. i went through this with my django email user interface as the user was not being saved in the database until the django model had completing saving a new entry, thus when creating the new account i had to put a delay check in my create email account that continued to loop until django had finished it's processing, very anoying (not dovecot's issue) but i think you are facing something similiar? it seems you might be renaming the mbox ? again both user at .net & user at .com must exist along the way before the account(s) can be accessed. if renaming the mbox is your intention than add the user at .com account move should now work then delete the user at .net account. Happy Tuesday !!! Thanks - paul Paul Kudla Scom.ca Internet Services <http://www.scom.ca> 004-1009 Byron Street South Whitby, Ontario - Canada L1N 4S3 Toronto 416.642.7266 Main?1.866.411.7266 Fax?1.888.892.7266 Email?paul at scom.ca On 8/2/2022 6:49 AM, Simon B wrote:> I have a production Dovecot problem and although I searched the mailing > lists, I could not find an answer and I hope you can give me a quick > answer/pointer in the right direction. > > > I have mails for a user (user at domain.net <mailto:user at domain.net>) > under?/var/spool/mail/virtual/domain.net/user <http://domain.net/user> > and I want to move ALL the mails to > /var/spool/mail/virtual/domain.com/user <http://domain.com/user> > > If I use > > #doveadm -Dv move -u user at domain.net > <mailto:user at domain.net>??Maildir:/var/spool/mail/virtual/domain.net/user <http://domain.net/user>? Maildir:/var/spool/mail/virtual/domain.com/user <http://domain.com/user>?ALL > > I get > doveadm(root): Fatal: Unknown argument > MAILDIR:/var/spool/mail/virtual/domain.com/user <http://domain.com/user> > > if I use > #doveadm -Dv move -uuser at domain.net > <mailto:user at domain.net>?Maildir:/var/spool/mail/virtual/domain.net/user > <http://domain.net/user> /var/spool/mail/virtual/domain.com/user > <http://domain.com/user>ALL > > doveadm(root): Fatal: Unknown argument > /var/spool/mail/virtual/domain.com/user <http://domain.com/user> > > What the hell am I doing wrong!? :) > > Thanks. > > Simon > > > > -- > This message has been scanned for viruses and > dangerous content by *MailScanner* <http://www.mailscanner.info/>, and is > believed to be clean.
On Tue, 2 Aug 2022 at 12:58, Paul Kudla (SCOM.CA Internet Services Inc.) <paul at scom.ca> wrote:> > > ok user at domain.com needs to exist before any operations can be done on it. > > I discovered that dovecot does not consider a virtual mailbox active > until it is returned in the user database > > see : doveadm user '*' > > both accounts MUST be returned in the list (user at .net & user at .com) > > from there it should work as expected. > > i went through this with my django email user interface as the user was > not being saved in the database until the django model had completing > saving a new entry, thus when creating the new account i had to put a > delay check in my create email account that continued to loop until > django had finished it's processing, very anoying (not dovecot's issue) > but i think you are facing something similiar? > > > it seems you might be renaming the mbox ? > > again both user at .net & user at .com must exist along the way before the > account(s) can be accessed. > > if renaming the mbox is your intention than add the user at .com account > > move should now work > > then delete the user at .net account.Thanks Paul. I finally got around to looking at this again, and for my own benefit, and perhaps anyone else in the future, the format that eventually worked was: doveadm -Dv move -u user at destination.com INBOX user user @source.net MAILBOX INBOX ALL However... the -v option does NOT as the man page indicates produce any kind of progress counter. -v Enables verbosity, including progress counter. On a medium mailbox (~1000 messages) it took about 3 minutes, with no indication anything was being done until the prompt returned. Maybe I need -D -v and not -Dv? AND, it moved all the mails from /var/spool/mail/virtual/source.net/user/cur but none of the emails from /var/spool/mail/virtual/source.net/user/new And I have not been able to figure how to move those... Simon