Split mailboxes on server migration

Hiago Prata hcprata at ufpa.br
Fri Jan 19 07:53:31 EST 2018


Hello, everyone! 

I come to bring you some good news. 

Actually the problems I was facing had nothing to do with database stuff
at all. It was a single configuration line (DEFAULTDOMAIN) in IMAPD.CONF
that was set to DOMAIN.EXAMPLE while it was set to IMAP.DOMAIN.EXAMPLE
in the old server configuration file. 

Earlier, before figuring out what was the issue, I noticed that using
the wrong domain made Cyrus look for the mailboxes in
DEFAULTPARTITION/U/USER instead of looking in
DEFAULTPARTITION/DOMAIN/D/DOMAIN.EXAMPLE/U/USER. And thus, when creating
manually mailboxes, they were being created out of that domain
directory. 

While this solved my problem, it brought  me some really bad confusion.
I looked for an explanation in the Cyrus imapd.conf docs, but nothing
that related one thing to each other was found. 

Anyone could shed some light on this? I just can't let this pass with no
explanation. 

Thanks in advance! 

Em 2017-12-29 20:58, Hiago Prata escreveu:

> Hi, I'm trying split users mailboxes into two smaller servers running Cyrus-IMAP (for organizational purposes only). These servers are running the newest version of Cyrus-IMAP available to a Debian system (2.5.10-3), while the old server runs Cyrus on version 2.2.13-14. I've done the migration of another server running this same version to the newest version with no problems. 
> 
> Now, I need to do a migration to the new servers and split the mailboxes. This is what I did for the first server already: 
> 
> - Back up part of the mailboxes to the new server using RSYNC; 
> 
> - Back up the files contained in the /VAR/LIB/CYRUS/DOMAIN directory; 
> 
> - Dump the corresponding entries of the mailboxes.db using CTL_MBOXLIST -D; 
> 
> On the new server I did: 
> 
> - Remove the content of /VAR/LIB/CYRUS; 
> 
> - Run the MAKEDIRS command; 
> 
> - Imported the database entries using CTL_MBOXLIST -U; 
> 
> - Copy the domain content back into /VAR/LIB/CYRUS; 
> 
> - Reconstruct the databases using RECONSTRUCT -RF USER/* (got no output from this);
> 
> - Change the database indexes to max using RECONSTRUCT -V MAX (this one gave output for all the imported mailboxes) 
> 
> After all these steps, I noticed that no users had their quota set.
> And trying to set it manually told me the mailboxes don't exist.
> Though dumping the database show me otherwise. 
> 
> I've tried to create the mailboxes manually too, but after setting the users quota, 
> it was shown that there was no quota usage for any of the users. 
> 
> So, am I missing something in this procedure?  
> 
> What is the correct way of doing this? 
> 
> Holp you can help me. Thanks in advance! 
> ----
> Cyrus Home Page: http://www.cyrusimap.org/
> List Archives/Info: http://lists.andrew.cmu.edu/pipermail/info-cyrus/
> To Unsubscribe:
> https://lists.andrew.cmu.edu/mailman/listinfo/info-cyrus

-- 
Hiago Prata
Graduando em Engenharia da Computação
DataCenter da UFPA - CTIC
Faculdade de Engenharia da
Computação e Telecomunicações - ITEC
Universidade Federal do Pará
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.andrew.cmu.edu/pipermail/info-cyrus/attachments/20180119/7b12dafe/attachment.html>


More information about the Info-cyrus mailing list