Migration Process o...
 
Notifications
Clear all

[Sticky] Migration Process of Carbonio Community Edition

46 Posts
15 Users
16 Reactions
6,386 Views
(@urs_s)
Joined: 11 months ago
Posts: 2
 

Hi
I am trying to migrate from Zimbra with zextras suit to Carbonio CE

Is it correct that things like user Settings COS, extra Persona, email signatures etc. are not migrated at all? Only emails, contacts an calendar of the main account not the extra Personas???

Or what is the best way to migrate?It seems there are different bath to migrate?

Thanks for any help!


   
ReplyQuote
(@hippiecool)
Joined: 11 months ago
Posts: 8
 

I am doing a fairly large migration from Zimbra to Carbonio in my test environment.  I've been using Zimbra OSE since 2015 and love it.  But I realize we need to migrate.  No migration is perfect, they never are.  But I really want to give Carbonio a try so I am writing this post to help the Zextras Community. 

Below are a few suggestions for anyone who is trying to manually migrate LARGE Zimbra User data to Carbonio and find that it keeps failing.

By LARGE, I mean a Zimbra mailbox > 10GB.  I have some users who have mailboxes 50GB+ in size.

(DISCLAIMER: These steps worked for me and are not warranted to work for you.  Do your homework.  Only migrate to a test environment first, not straight to a production environment so you validate that these steps work.  I am posting this because the only way I am going to use Carbonio is if the migration from Zimbra can successfully move all Users, regardless of mailbox size.  If I cannot successfully migrate all Users to the new platform, I will not use it.  Maybe you feel the same way.  If so, continue reading.)

 

PROBLEM: 

I have experienced that importing a LARGE .tgz files are problematic with the suggested method (zmmailbox) described on this site and its forums.  This is also a known limitation documented by Zimbra in KB24494.   https://wiki.zimbra.com/wiki/index.php?curid=24494

For example, my own mailbox is 10.5GB = 5.9GB tgz. No matter what you do, the zmmailbox commands will experience a timeout and not successfully import all the data (emails, contacts, calendars, etc).  Grrrrrr!!!!!

The zmmailbox commands posted on this site work well for small mailbox users (.tgz < 1.0GB) but it's unreliable for anything larger. The Steps below will work for either small or large mailbox users, but my specific issue was getting the larger mailbox users to successfully import.  And it took some creative thinking to accomplish this but it finally worked.  

 

SOLUTION:  

These Steps do not address anything but Contacts, Calendar and Emails for LARGE Zimbra Mailboxes.  I do not peronally use or will try and solve Tasks, Briefcase, Calendar shares, Address Book shares with this procedure.  Though I am sure I can get them to work, I am fine with bringing them over to Carbonio later (manually if needed).

Follow these steps and you can successfully migrate LARGE (or small) mailbox users from Zimbra to Carbonio.  It's a more manual approach, and no special software is needed (i.e: IMAPSYNC). It just works.  

 

0. PRE-REQ: Ensure Migration Steps: Step 1 - 4 on the link below have already been successfully completed

https://community.zextras.com/how-to-use-script-to-migrate-zimbra-to-carbonio-carbonio-ce/

Especially Step 4:
- Restore all Domains
- Create/Restore all email accounts with old passwords and user data in the Carbonio CE server.

You must have your target LARGE Users established on Carbonio CE server.

NOTE: You may have already successfully imported SMALLER User accounts, passwords, emails, contacts and calendar events with the commands described in the link above. That's fine. However, these commands will fail on LARGE user accounts. So ensure that the LARGE user accounts are created and EMPTY in Carbonio to avoid conflicts or duplicates. Meaning, you can logon to Carbonio WebUI with a username/password but there are no Emails, Contacts or Calendar events in any LARGE user account. The below EXPORT/ IMPORT steps will take care of that in a few moments.

 

1. EXPORT FROM ZIMBRA

Export data from Zimbra using the WebUI (especially for each LARGE mailbox User). It's just easier and it worked flawlessly.

1A. Logon as the User to Zimbra WebUI then go to: Preferences: Import/Export

You can see how here: https://kb.diadem.in/how-to-export-import-emails-contacts-from-zimbra-panel_1317.html

1B. Export Emails

- Choose Type = Account
- Check Advanced settings
- Check ONLY Mail
- Date: Start 1/1/2011 End On: 12/31/2011
(one year at a time to avoid creating a LARGE .tgz over 1.0GB which will fail upon using zmmailbox commands into Carbonio)
- Click EXPORT - once downloaded, rename as: youraccount@yourdomain.tld_20xx.tgz
- Repeat these steps for each YEAR! 2011.tgz, 2012.tgz, etc... (trust me, this works very well later on when we need to import.)

1C. Export Calendar

- Choose Type = Calendar
- Source = Select Calendar (or the calendar you want to Export. This will export all past and future appointments in this Calendar).
- Click EXPORT - once downloaded, rename as: youraccount@yourdomain.tld.ics

1D. Export Contacts

- Choose Type = Contacts - choose 'Account Contacts'
- Source = Select 'Contacts' (if you select 'Emailed Contacts', they will import as <No Data> in the Carbonio Contacts listing because they only have email addresses. You may not need these contacts anyway, your choice whether to export them).
- Click EXPORT - once downloaded, rename as: youraccount@yourdomain.tld.csv

Repeat the above steps for any LARGE (or small) mailbox user. I realize it's tedious, but it works and ensures that the LARGE mailbox user's data will import nicely.

You have now successfully EXPORTED your LARGE user data from Zimbra.

1E.  RSYNC or SCP the Zimbra Source Files (.ics, .csv and .tgz) (as Root) to Carbonio into /opt/backups/zmigrate/MBOX/

# scp /opt/backups/zmigrate/MBOX/youraccount@yourdomain.tld*.* root@<carbonio_ip>/opt/backups/zmigrate/MBOX/

 

2. IMPORT INTO CARBONIO

PRE-REQ: Again, please ensure Migration Steps: Step 1 - 4 on the link below have already been successfully completed

https://community.zextras.com/how-to-use-script-to-migrate-zimbra-to-carbonio-carbonio-ce/

Especially Step 4:
- Restore all Domains
- Create/Restore all email accounts with old passwords and user data in the Carbonio CE server.

You must have your target LARGE User accounts established on Carbonio CE server for this to work.

When ready, you can continue:

2A. Logon to Carbonio server (as Root)

# cd /opt/backups/zmigrate/MBOX/

CHOWN to the Source Files to copied over to zextras:zextras (as Root)

# chown zextras:zextras youraccount@yourdomain.tld*.*

2B. Run ZMMAILBOX commands (as Zextras)

# su - zextras
$ cd /opt/backups/zmigrate/MBOX/
$ ls -lah (to ensure you see your Zimbra source files and they are zextras:zextras owned).  Here are some examples:

-rw-r--r-- 1 zextras zextras 341M Feb 8 20:49 youraccount@yourdomain.tld_2011.tgz

-rw-r--r-- 1 zextras zextras 284M Feb 8 20:49 youraccount@yourdomain.tld_2012.tgz

-rw-r--r-- 1 zextras zextras 379K Feb 8 20:54 youraccount@yourdomain.tld.csv

-rw-r--r-- 1 zextras zextras 52M Feb 8 20:52 youraccount@yourdomain.tld.ics

 

2C. IMPORT CALENDAR - (.ICS)

$ zmmailbox -z -m youraccount@yourdomain.tld postRestURL '/Calendar?fmt=ics' /opt/backups/zmigrate/MBOX/youraccount@yourdomain.tld.ics

2D. IMPORT CONTACTS - (.CSV)

$ zmmailbox -z -m youraccount@yourdomain.tld postRestURL '/Contacts?fmt=csv' /opt/backups/zmigrate/MBOX/youraccount@yourdomain.tld.csv

2E. IMPORT EMAILS - THE (.TGZ) FOR EACH YEAR - notice the YEAR Source File will be different in each command line you perform (i.e: 2011.tgz and 2012.tgz).

I imported in REVERSE order to ensure oldest to newest emails was ingested properly. After each year was completed, I actually logged on to see if they were intact, and they were.

$ zmmailbox -z -m youraccount@yourdomain.tld -t 0 postRestURL "/?fmt=tgz&resolve=skip" /opt/backups/zmigrate/MBOX/youraccount@yourdomain.tld_2011.tgz

$ zmmailbox -z -m youraccount@yourdomain.tld -t 0 postRestURL "/?fmt=tgz&resolve=skip" /opt/backups/zmigrate/MBOX/youraccount@yourdomain.tld_2012.tgz

and so on....until all YEARS.tgz are completed.

Each .tgz file will take about 5-10 to import without throwing any errors.  Yay!  Again, you can logon to the Carbonio WebUI to validate ingestion after each command, if you wish.

 

3. LOGON TO CARBONIO WEBUI
Once completed, you can now logon as the LARGE Mailbox User to Carbonio WebUI and see the Emails (including Inbox SubFolders), Contacts and Calendar events (past and future).

I hope this helps.
D.


   
ReplyQuote
(@raystinger)
Joined: 9 months ago
Posts: 37
 

how to import and export email group and distributions list ?


   
ReplyQuote
(@sharif)
Admin
Joined: 3 years ago
Posts: 593
Topic starter  

@raystinger 

Hi,

Try this:

https://community.zextras.com/forum/postid/7562/

Regards,

Sharif


   
ReplyQuote
(@raystinger)
Joined: 9 months ago
Posts: 37
 

@sharif thanks sir i will try it on my curent server . and i found my problem with my login with external ip on documentations of carbonio

i will read carefuly later 

Spoiler
site
 https://docs.zextras.com/carbonio/html/admincli/custom.html 

its containing about auth login on ngingx like this

location = /
{
  if ($http_cookie !~ "ZM_AUTH_TOKEN=") {
      return 307 "/static/login/";
  }

proxy_set_header X-CUSTOM-Forwarded-For "audit@example.com";
}

 

then its says must restart with zmproxyctl

 

can u helped me?

 

 


   
ReplyQuote
(@raystinger)
Joined: 9 months ago
Posts: 37
 

@sharif thanks sir i will try it on my curent server . and i found my problem with my login with external ip on documentations of carbonio

i will read carefuly later 

Spoiler
site
 https://docs.zextras.com/carbonio/html/admincli/custom.html 

its containing about auth login on ngingx like this

location = /
{
  if ($http_cookie !~ "ZM_AUTH_TOKEN=") {
      return 307 "/static/login/";
  }

proxy_set_header X-CUSTOM-Forwarded-For "audit@example.com";
}

 

then its says must restart with zmproxyctl

 

can u helped me?

 

 


   
ReplyQuote
(@sharif)
Admin
Joined: 3 years ago
Posts: 593
Topic starter  

@raystinger 

Hi,

Is there any reason you are following Carbonio documentation rather than Carbonio  CE documentation? Regardless of your server IP (Public or Private), if the network connectivity is proper, then you should be able to access the server using both private and public IP addresses.

Regards,

Sharif


   
ReplyQuote
(@raystinger)
Joined: 9 months ago
Posts: 37
 

@sharif Hi sir , sometimes the official documentations of carbonio not clear to understand

i have been follow the documentations of carbonio but im fail and im success after follow this fresh install from your post here and now my server its live after migrations from zimbra 8.6 centos

i can access both private and public IP but the main problem its login problem on my post here

hope you can assist me for my main problem and i will contribute more for this forum later


   
ReplyQuote
(@arukashi)
Joined: 2 years ago
Posts: 25
 
/opt/zimbra/backup# /opt/zimbra/common/sbin/slapcat -F /opt/zimbra/data/ldap/config -b "" -H ldap:///???(&(!(entryDN:dnSubTreeMatch:=cn=zimbra))) > /opt/zimbra/backup/provisioning.ldif

 

Hi. Does anybody knows how to export LDAP information for particular domains, for example, i have domain1, domain2 and domain3, but only need to export Domain1

Thank you


   
ReplyQuote
(@anahuac)
Joined: 2 years ago
Posts: 326
 

May I suggest you to try Z2C?

https://www.anahuac.eu/zimbra-to-carbonio-z2c/

It exports all domains together and also separated. It's ready to use =)

You may want to join us in Telegram: https://t.me/CarbonioMail


   
arukashi reacted
ReplyQuote
(@arukashi)
Joined: 2 years ago
Posts: 25
 

@anahuac I'll take a look, thank you.

Anyway, i decided just delete unnecessary domains and corresponding stuff right on the destination server.


   
anahuac reacted
ReplyQuote
correoweb
(@correoweb)
Joined: 2 years ago
Posts: 8
 

Hi @anahuac  !

I am going to start the migration of our ZIMBRA server to CARBONIO, I read the details of the original SCRIPT of BktechBrazil and I think they are fantastic.

The script that you adapted, is it updated to 2024 or do we have to check it again ?

Thanks for sharing.


   
ReplyQuote
(@anahuac)
Joined: 2 years ago
Posts: 326
 

@correoweb it is ready to use... go ahead and enjoy!


   
ReplyQuote
correoweb
(@correoweb)
Joined: 2 years ago
Posts: 8
 

@anahuac 

Thank you very much !

We are going to do it...


   
ReplyQuote
(@arukashi)
Joined: 2 years ago
Posts: 25
 

Posted by: @zottel

 

  • Tasks. Those are in the export, but will not be imported. Error in the logs: "misc - ArchiveFormatter addError:Cannot invoke "com.zimbra.cs.mailbox.MailItem.getType()" because "mi" is null: path=/Tasks/"
  • Briefcase documents. Same error as with tasks with different path.

 

Hello. Experience the same problem, still did not managed to import tasks exported from zimbra9 as tgz (no way to export in any other format except zip). Same error. Any workaround for this problem? Thank you


   
ReplyQuote
Page 3 / 4