How to merge two zimbra mailboxes

If you want to merge 2 zimbra mailboxes, you can simply export the source mailbox and import it to the target mailbox. This can be easilly achieved with a couple of zimbra commands.

  • SSH into your zimbra server.
  • Change to zimbra server:
    su - zimbra
  • Now type:
    /opt/zimbra/bin/zmmailbox -z -m [email protected] getRestURL "//?fmt=tgz" > /tmp/temp.tgz && /opt/zimbra/bin/zmmailbox -z -m [email protected] postRestURL "//?fmt=tgz&resolve=modify" /tmp/temp.tgz
    This is actually two commands in one line: first export to temp.tgz and, if export is successfull (&&), import to target mailbox.

Make sure you replace [email protected] and [email protected] with proper addresses.

If the old mailbox is big you may encounter the following error:

ERROR: zclient.IO_ERROR (Read timed out) (cause: Read timed out)

This is because the programmers of zmmailbox command have set a default timeout to avoid endless execution. Luckily for us, they have also supplied zmmailbox with the t option which let us specify the amount of time before the timeout error occurs. An infinite timeout is set with -t 0. So you may now want to rewrite the command like this:

/opt/zimbra/bin/zmmailbox -z -t 0 -m [email protected] getRestURL "//?fmt=tgz" > /tmp/temp.tgz && /opt/zimbra/bin/zmmailbox -z -t 0 -m [email protected] postRestURL "//?fmt=tgz&resolve=modify" /tmp/temp.tgz

Initially we have found the the idea in zimbra forums ( and we have also tried it many times in our own servers, especially with merging some multi giga byte accounts we manage and host.

Join the Conversation


Leave a comment

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

3 + 3 =