2011-03-12 03:44:35 +01:00
|
|
|
NAME
|
2011-03-12 03:44:27 +01:00
|
|
|
imapsync - IMAP synchronisation, sync, copy or migration tool.
|
|
|
|
Synchronise mailboxes between two imap servers. Good at IMAP migration.
|
2011-03-12 03:44:57 +01:00
|
|
|
More than 36 different IMAP server softwares supported with success.
|
2011-03-12 03:39:59 +01:00
|
|
|
|
2011-09-25 22:31:48 +02:00
|
|
|
$Revision: 1.456 $
|
2011-03-12 03:44:57 +01:00
|
|
|
|
|
|
|
SYNOPSIS
|
|
|
|
To synchronise imap account "foo" on "imap.truc.org" to imap account
|
|
|
|
"bar" on "imap.trac.org" with foo password "secret1" and bar password
|
|
|
|
"secret2":
|
|
|
|
|
|
|
|
imapsync \
|
|
|
|
--host1 imap.truc.org --user1 foo --password1 secret1 \
|
|
|
|
--host2 imap.trac.org --user2 bar --password2 secret2
|
2011-03-12 03:39:59 +01:00
|
|
|
|
|
|
|
INSTALL
|
2011-03-12 03:44:32 +01:00
|
|
|
imapsync works fine under any Unix OS with perl.
|
2011-03-12 03:45:02 +01:00
|
|
|
imapsync works fine under Windows (2000, XP)
|
|
|
|
with Strawberry Perl 5.10 or 5.12
|
|
|
|
or as a standalone binary software imapsync.exe
|
2011-03-12 03:43:50 +01:00
|
|
|
|
2011-03-12 03:44:57 +01:00
|
|
|
imapsync is already available directly on the following distributions
|
2011-03-12 03:45:02 +01:00
|
|
|
(at least): FreeBSD, Debian, Ubuntu, Gentoo, Fedora, NetBSD, Darwin,
|
2011-03-12 03:45:04 +01:00
|
|
|
Mandriva and OpenBSD.
|
2011-03-12 03:44:32 +01:00
|
|
|
|
2011-03-12 03:43:49 +01:00
|
|
|
Get imapsync at
|
2011-03-12 03:44:57 +01:00
|
|
|
http://www.linux-france.org/prj/imapsync/
|
2011-03-12 03:43:49 +01:00
|
|
|
|
2011-03-12 03:45:04 +01:00
|
|
|
You'll receive a link to a compressed tarball called imapsync-x.xx.tgz
|
2011-03-12 03:43:49 +01:00
|
|
|
where x.xx is the version number. Untar the tarball where
|
2011-03-12 03:44:35 +01:00
|
|
|
you want (on Unix):
|
2011-03-12 03:43:49 +01:00
|
|
|
|
2011-03-12 03:44:11 +01:00
|
|
|
tar xzvf imapsync-x.xx.tgz
|
2011-03-12 03:43:49 +01:00
|
|
|
|
2011-03-12 03:44:35 +01:00
|
|
|
Go into the directory imapsync-x.xx and read the INSTALL file.
|
|
|
|
The INSTALL file is also at
|
2011-03-12 03:44:57 +01:00
|
|
|
http://www.linux-france.org/prj/imapsync/INSTALL
|
2011-03-12 03:39:59 +01:00
|
|
|
|
2011-03-12 03:44:57 +01:00
|
|
|
The freshmeat record is at http://freshmeat.net/projects/imapsync/
|
|
|
|
|
|
|
|
USAGE
|
|
|
|
imapsync [options]
|
2011-03-12 03:40:59 +01:00
|
|
|
|
2011-03-12 03:44:47 +01:00
|
|
|
To get a description of each option just run imapsync like this:
|
2011-03-12 03:44:32 +01:00
|
|
|
|
2011-03-12 03:40:59 +01:00
|
|
|
imapsync --help
|
|
|
|
imapsync
|
2011-03-12 03:39:59 +01:00
|
|
|
|
2011-03-12 03:44:47 +01:00
|
|
|
The option list:
|
2011-03-12 03:44:32 +01:00
|
|
|
|
2011-03-12 03:39:59 +01:00
|
|
|
imapsync [--host1 server1] [--port1 <num>]
|
2011-03-12 03:44:15 +01:00
|
|
|
[--user1 <string>] [--passfile1 <string>]
|
2011-03-12 03:39:59 +01:00
|
|
|
[--host2 server2] [--port2 <num>]
|
2011-03-12 03:44:15 +01:00
|
|
|
[--user2 <string>] [--passfile2 <string>]
|
2011-03-12 03:44:22 +01:00
|
|
|
[--ssl1] [--ssl2]
|
2011-03-12 03:44:51 +01:00
|
|
|
[--tls1] [--tls2]
|
2011-03-12 03:45:04 +01:00
|
|
|
[--authmech1 <string>] [--authmech2 <string>]
|
|
|
|
[--proxyauth1] [--proxyauth2]
|
|
|
|
[--domain1] [--domain2]
|
|
|
|
[--authmd51] [--authmd52]
|
2011-03-12 03:43:47 +01:00
|
|
|
[--folder <string> --folder <string> ...]
|
2011-03-12 03:44:30 +01:00
|
|
|
[--folderrec <string> --folderrec <string> ...]
|
2011-03-12 03:43:50 +01:00
|
|
|
[--include <regex>] [--exclude <regex>]
|
2011-03-12 03:44:19 +01:00
|
|
|
[--prefix2 <string>] [--prefix1 <string>]
|
2011-03-12 03:44:20 +01:00
|
|
|
[--regextrans2 <regex> --regextrans2 <regex> ...]
|
2011-03-12 03:43:48 +01:00
|
|
|
[--sep1 <char>]
|
|
|
|
[--sep2 <char>]
|
2011-03-12 03:44:47 +01:00
|
|
|
[--justfolders] [--justfoldersizes] [--justconnect] [--justbanner]
|
2011-03-12 03:43:50 +01:00
|
|
|
[--syncinternaldates]
|
2011-03-12 03:44:39 +01:00
|
|
|
[--idatefromheader]
|
2011-03-12 03:44:15 +01:00
|
|
|
[--syncacls]
|
2011-03-12 03:44:20 +01:00
|
|
|
[--regexmess <regex>] [--regexmess <regex>]
|
2011-03-12 03:43:50 +01:00
|
|
|
[--maxsize <int>]
|
2011-03-12 03:45:02 +01:00
|
|
|
[--minsize <int>]
|
2011-03-12 03:43:50 +01:00
|
|
|
[--maxage <int>]
|
2011-03-12 03:44:20 +01:00
|
|
|
[--minage <int>]
|
2011-03-12 03:43:54 +01:00
|
|
|
[--skipheader <regex>]
|
2011-03-12 03:44:15 +01:00
|
|
|
[--useheader <string>] [--useheader <string>]
|
2011-06-14 12:59:46 +02:00
|
|
|
[--nouid1] [--nouid2]
|
2011-03-12 03:45:04 +01:00
|
|
|
[--usecache]
|
2011-03-12 03:44:47 +01:00
|
|
|
[--skipsize] [--allowsizemismatch]
|
2011-03-12 03:44:25 +01:00
|
|
|
[--delete] [--delete2]
|
2011-03-12 03:44:47 +01:00
|
|
|
[--expunge] [--expunge1] [--expunge2] [--uidexpunge2]
|
2011-03-12 03:45:04 +01:00
|
|
|
[--delete2folders] [--delete2foldersonly] [--delete2foldersbutnot]
|
2011-03-12 03:44:53 +01:00
|
|
|
[--subscribed] [--subscribe] [--subscribe_all]
|
2011-03-12 03:44:15 +01:00
|
|
|
[--nofoldersizes]
|
2011-03-12 03:39:59 +01:00
|
|
|
[--dry]
|
2011-03-12 03:44:54 +01:00
|
|
|
[--debug] [--debugimap][--debugimap1][--debugimap2]
|
2011-03-12 03:44:15 +01:00
|
|
|
[--timeout <int>] [--fast]
|
2011-03-12 03:44:24 +01:00
|
|
|
[--split1] [--split2]
|
2011-03-12 03:44:47 +01:00
|
|
|
[--reconnectretry1 <int>] [--reconnectretry2 <int>]
|
2011-03-12 03:45:04 +01:00
|
|
|
[--noreleasecheck]
|
2011-03-12 03:44:54 +01:00
|
|
|
[--pidfile <filepath>]
|
|
|
|
[--tmpdir <dirpath>]
|
2011-03-12 03:39:59 +01:00
|
|
|
[--version] [--help]
|
2011-03-12 03:45:04 +01:00
|
|
|
[--tests] [--tests_debug]
|
2011-03-12 03:45:01 +01:00
|
|
|
|
2011-03-12 03:39:59 +01:00
|
|
|
DESCRIPTION
|
|
|
|
The command imapsync is a tool allowing incremental and recursive imap
|
|
|
|
transfer from one mailbox to another.
|
|
|
|
|
2011-03-12 03:44:47 +01:00
|
|
|
By default all folders are transferred, recursively.
|
2011-03-12 03:44:32 +01:00
|
|
|
|
2011-03-12 03:39:59 +01:00
|
|
|
We sometimes need to transfer mailboxes from one imap server to another.
|
|
|
|
This is called migration.
|
|
|
|
|
2011-03-12 03:44:47 +01:00
|
|
|
imapsync is a good tool because it reduces the amount of data
|
2011-03-12 03:44:29 +01:00
|
|
|
transferred by not transferring a given message if it is already on both
|
2011-03-12 03:44:57 +01:00
|
|
|
sides. Same headers and the transfer is done only once. All flags are
|
|
|
|
preserved, unread will stay unread, read will stay read, deleted will
|
|
|
|
stay deleted. You can stop the transfer at any time and restart it
|
|
|
|
later, imapsync works well with bad connections. imapsync is CPU hungry
|
|
|
|
so nice and renice commands can be a good help. imapsync can be memory
|
|
|
|
hungry too, especially with large messages.
|
2011-03-12 03:40:59 +01:00
|
|
|
|
|
|
|
You can decide to delete the messages from the source mailbox after a
|
2011-03-12 03:44:29 +01:00
|
|
|
successful transfer (it is a good feature when migrating). In that case,
|
2011-03-12 03:45:04 +01:00
|
|
|
use the --delete option. Option --delete implies also option --expunge
|
|
|
|
so all messages marked deleted on host1 will be really deleted. (you can
|
|
|
|
use --noexpunge to avoid this but I don't see any real world scenario
|
|
|
|
for the combinaison --delete --noexpunge).
|
2011-03-12 03:40:59 +01:00
|
|
|
|
|
|
|
You can also just synchronize a mailbox A from another mailbox B in case
|
2011-03-12 03:44:57 +01:00
|
|
|
you just want to keep a "live" copy of B in A (--delete2 may help)
|
2011-03-12 03:39:59 +01:00
|
|
|
|
|
|
|
OPTIONS
|
2011-03-12 03:44:32 +01:00
|
|
|
To get a description of each option just invoke:
|
|
|
|
|
|
|
|
imapsync --help
|
2011-03-12 03:39:59 +01:00
|
|
|
|
|
|
|
HISTORY
|
|
|
|
I wrote imapsync because an enterprise (basystemes) paid me to install a
|
2011-03-12 03:44:47 +01:00
|
|
|
new imap server without losing huge old mailboxes located on a far away
|
2011-03-12 03:44:53 +01:00
|
|
|
remote imap server accessible by a low bandwidth link. The tool imapcp
|
2011-03-12 03:39:59 +01:00
|
|
|
(written in python) could not help me because I had to verify every
|
2011-03-12 03:44:29 +01:00
|
|
|
mailbox was well transferred and delete it after a good transfer.
|
2011-03-12 03:44:47 +01:00
|
|
|
imapsync started life as a copy_folder.pl patch. The tool copy_folder.pl
|
|
|
|
comes from the Mail-IMAPClient-2.1.3 perl module tarball source (in the
|
|
|
|
examples/ directory of the tarball).
|
2011-03-12 03:39:59 +01:00
|
|
|
|
2011-03-12 03:44:21 +01:00
|
|
|
EXAMPLE
|
2011-03-12 03:39:59 +01:00
|
|
|
While working on imapsync parameters please run imapsync in dry mode (no
|
|
|
|
modification induced) with the --dry option. Nothing bad can be done
|
|
|
|
this way.
|
|
|
|
|
2011-03-12 03:44:55 +01:00
|
|
|
To synchronize the imap account "buddy" (with password "secret1") on
|
|
|
|
host "imap.src.fr" to the imap account "max" (with password "secret2")
|
|
|
|
on host "imap.dest.fr":
|
2011-03-12 03:39:59 +01:00
|
|
|
|
2011-03-12 03:44:55 +01:00
|
|
|
imapsync --host1 imap.src.fr --user1 buddy --password1 secret1 \
|
|
|
|
--host2 imap.dest.fr --user2 max --password2 secret2
|
2011-03-12 03:39:59 +01:00
|
|
|
|
2011-03-12 03:44:55 +01:00
|
|
|
Then you will have max's mailbox updated from buddy's mailbox.
|
2011-03-12 03:39:59 +01:00
|
|
|
|
2011-03-12 03:43:48 +01:00
|
|
|
SECURITY
|
2011-03-12 03:44:55 +01:00
|
|
|
You can use --passfile1 instead of --password1 to give the password
|
|
|
|
since it is safer. With --password1 option any user on your host can see
|
|
|
|
the password by using the 'ps auxwwww' command. Using a variable (like
|
|
|
|
$PASSWORD1) is also dangerous because of the 'ps auxwwwwe' command. So,
|
|
|
|
saving the password in a well protected file (600 or rw-------) is the
|
|
|
|
best solution.
|
2011-03-12 03:43:48 +01:00
|
|
|
|
2011-03-12 03:44:23 +01:00
|
|
|
imasync is not totally protected against sniffers on the network since
|
2011-03-12 03:44:47 +01:00
|
|
|
passwords may be transferred in plain text if CRAM-MD5 is not supported
|
2011-03-12 03:44:51 +01:00
|
|
|
by your imap servers. Use --ssl1 (or --tls1) and --ssl2 (or --tls2) to
|
|
|
|
enable encryption on host1 and host2.
|
2011-03-12 03:44:23 +01:00
|
|
|
|
|
|
|
You may authenticate as one user (typically an admin user), but be
|
|
|
|
authorized as someone else, which means you don't need to know every
|
|
|
|
user's personal password. Specify --authuser1 "adminuser" to enable this
|
2011-03-12 03:44:35 +01:00
|
|
|
on host1. In this case, --authmech1 PLAIN will be used by default since
|
|
|
|
it is the only way to go for now. So don't use --authmech1 SOMETHING
|
|
|
|
with --authuser1 "adminuser", it will not work. Same behavior with the
|
|
|
|
--authuser2 option.
|
2011-03-12 03:43:48 +01:00
|
|
|
|
2011-03-12 03:45:04 +01:00
|
|
|
When working on Sun/iPlanet/Netscape IMAP servers you must use
|
|
|
|
--proxyauth1 to enable administrative user to masquerade as another
|
|
|
|
user. Can also be used on destination server with --proxyauth2
|
|
|
|
|
2011-03-12 03:39:59 +01:00
|
|
|
EXIT STATUS
|
|
|
|
imapsync will exit with a 0 status (return code) if everything went
|
|
|
|
good. Otherwise, it exits with a non-zero status.
|
|
|
|
|
2011-03-12 03:44:47 +01:00
|
|
|
So if you have an unreliable internet connection, you can use this loop
|
|
|
|
in a Bourne shell:
|
2011-03-12 03:39:59 +01:00
|
|
|
|
|
|
|
while ! imapsync ...; do
|
|
|
|
echo imapsync not complete
|
|
|
|
done
|
|
|
|
|
|
|
|
LICENSE
|
2011-03-12 03:45:04 +01:00
|
|
|
imapsync is free, open source but not always gratis software cover by
|
|
|
|
the Do What The Fuck You Want To Public License (WTFPL). See COPYING
|
|
|
|
file included in the distribution or the web site
|
|
|
|
http://sam.zoy.org/wtfpl/COPYING
|
2011-03-12 03:39:59 +01:00
|
|
|
|
2011-03-12 03:44:37 +01:00
|
|
|
MAILING-LIST
|
2011-03-12 03:44:47 +01:00
|
|
|
The public mailing-list may be the best way to get support.
|
2011-03-12 03:44:37 +01:00
|
|
|
|
2011-03-12 03:44:47 +01:00
|
|
|
To write on the mailing-list, the address is:
|
|
|
|
<imapsync@linux-france.org>
|
2011-03-12 03:44:37 +01:00
|
|
|
|
2011-03-12 03:45:02 +01:00
|
|
|
To subscribe, send any message (even empty) to:
|
|
|
|
<imapsync-subscribe@listes.linux-france.org> then just reply to the
|
|
|
|
confirmation message.
|
2011-03-12 03:44:37 +01:00
|
|
|
|
|
|
|
To unsubscribe, send a message to:
|
2011-03-12 03:44:47 +01:00
|
|
|
<imapsync-unsubscribe@listes.linux-france.org>
|
2011-03-12 03:44:37 +01:00
|
|
|
|
|
|
|
To contact the person in charge for the list:
|
2011-03-12 03:44:47 +01:00
|
|
|
<imapsync-request@listes.linux-france.org>
|
2011-03-12 03:44:37 +01:00
|
|
|
|
|
|
|
The list archives may be available at:
|
|
|
|
http://www.linux-france.org/prj/imapsync_list/ So consider that the list
|
|
|
|
is public, anyone can see your post. Use a pseudonym or do not post to
|
|
|
|
this list if you want to stay private.
|
|
|
|
|
|
|
|
Thank you for your participation.
|
|
|
|
|
2011-03-12 03:44:47 +01:00
|
|
|
AUTHOR
|
|
|
|
Gilles LAMIRAL <lamiral@linux-france.org>
|
|
|
|
|
|
|
|
Feedback good or bad is always welcome.
|
|
|
|
|
|
|
|
The newsgroup comp.mail.imap may be a good place to talk about imapsync.
|
|
|
|
I read it when imapsync is concerned. A better place is the public
|
|
|
|
imapsync mailing-list (see below).
|
|
|
|
|
|
|
|
Gilles LAMIRAL earns his living writing, installing, configuring and
|
2011-03-12 03:45:04 +01:00
|
|
|
teaching free, open and often gratis softwares. Do not hesitate to pay
|
|
|
|
him for that services.
|
2011-03-12 03:44:47 +01:00
|
|
|
|
2011-03-12 03:44:53 +01:00
|
|
|
BUG REPORT GUIDELINES
|
2011-03-12 03:44:47 +01:00
|
|
|
Help us to help you: follow the following guidelines.
|
2011-03-12 03:43:46 +01:00
|
|
|
|
2011-03-12 03:44:57 +01:00
|
|
|
Report any bugs or feature requests to the public mailing-list or to the
|
|
|
|
author.
|
2011-03-12 03:44:51 +01:00
|
|
|
|
2011-03-12 03:44:47 +01:00
|
|
|
Before reporting bugs, read the FAQ, the README and the TODO files.
|
|
|
|
http://www.linux-france.org/prj/imapsync/
|
2011-03-12 03:44:35 +01:00
|
|
|
|
2011-03-12 03:44:53 +01:00
|
|
|
Upgrade to last imapsync release, maybe the bug is already fixed.
|
|
|
|
|
|
|
|
Upgrade to last Mail-IMAPClient Perl module.
|
2011-03-12 03:44:57 +01:00
|
|
|
http://search.cpan.org/dist/Mail-IMAPClient/ maybe the bug is already
|
|
|
|
fixed.
|
2011-03-12 03:44:53 +01:00
|
|
|
|
|
|
|
Make a good title with word "imapsync" in it (my spam filter won't
|
|
|
|
filter it), Don't write an email title with just "imapsync" or
|
|
|
|
"problem", a good title is made of keywords summary, not too long (one
|
|
|
|
visible line).
|
2011-03-12 03:44:35 +01:00
|
|
|
|
2011-03-12 03:44:47 +01:00
|
|
|
Don't write imapsync in uppercase in the email title, we'll know you run
|
2011-03-12 03:45:04 +01:00
|
|
|
Windows and you haven't read this README yet.
|
2011-03-12 03:44:39 +01:00
|
|
|
|
2011-03-12 03:44:47 +01:00
|
|
|
Help us to help you: in your report, please include:
|
2011-03-12 03:43:54 +01:00
|
|
|
|
2011-03-12 03:44:26 +01:00
|
|
|
- imapsync version.
|
2011-03-12 03:44:57 +01:00
|
|
|
|
|
|
|
- output given with --debug --debugimap near the failure point.
|
2011-03-12 03:44:57 +01:00
|
|
|
Isolate a message or two in a folder 'BUG' and use
|
2011-03-12 03:44:57 +01:00
|
|
|
|
|
|
|
imapsync ... --folder 'BUG' --debug --debugimap
|
|
|
|
|
|
|
|
- imap server software on both side and their version number.
|
|
|
|
|
|
|
|
- imapsync with all the options you use, the full command line
|
2011-03-12 03:44:39 +01:00
|
|
|
you use (except the passwords of course).
|
2011-03-12 03:44:57 +01:00
|
|
|
|
|
|
|
- IMAPClient.pm version.
|
|
|
|
|
2011-04-24 23:19:36 +02:00
|
|
|
- the run context. Do you run imapsync.exe, a unix binary or the perl script imapsync.
|
|
|
|
|
2011-03-12 03:44:57 +01:00
|
|
|
- operating system running imapsync.
|
|
|
|
|
2011-04-24 23:19:36 +02:00
|
|
|
- virtual software context (vmware, xen etc.)
|
|
|
|
|
2011-03-12 03:44:57 +01:00
|
|
|
- operating systems on both sides and the third side in case
|
2011-03-12 03:44:32 +01:00
|
|
|
you run imapsync on a foreign host from the both.
|
2011-03-12 03:44:57 +01:00
|
|
|
|
2011-03-12 03:44:57 +01:00
|
|
|
Most of those values can be found as a copy/paste at the begining of the
|
|
|
|
output.
|
|
|
|
|
|
|
|
One time in your life, read the paper "How To Ask Questions The Smart
|
2011-03-12 03:44:57 +01:00
|
|
|
Way" http://www.catb.org/~esr/faqs/smart-questions.html and then forget
|
|
|
|
it.
|
2011-03-12 03:39:59 +01:00
|
|
|
|
2011-03-12 03:43:44 +01:00
|
|
|
IMAP SERVERS
|
2011-03-12 03:45:04 +01:00
|
|
|
Failure stories reported with the following 3 imap servers:
|
2011-03-12 03:44:17 +01:00
|
|
|
|
2011-04-24 23:19:36 +02:00
|
|
|
- MailEnable 1.54 (Proprietary) but MailEnable 4.23 is supported.
|
|
|
|
- DBMail 0.9, 2.0.7 (GPL). But DBMail 1.2.1 is supported.
|
2011-03-12 03:44:20 +01:00
|
|
|
Patient and confident testers are welcome.
|
2011-03-12 03:44:30 +01:00
|
|
|
- Imail 7.04 (maybe).
|
2011-09-25 22:31:48 +02:00
|
|
|
- (2011) MDaemon 12.0.3 as host2 but MDaemon is supported as host1.
|
|
|
|
MDaemon is simply buggy with the APPEND IMAP command with
|
|
|
|
any IMAP email client.
|
2011-03-12 03:44:25 +01:00
|
|
|
|
2011-07-11 23:24:12 +02:00
|
|
|
Success stories reported with the following 44 imap servers (software
|
2011-03-12 03:44:47 +01:00
|
|
|
names are in alphabetic order):
|
2011-03-12 03:43:44 +01:00
|
|
|
|
2011-03-12 03:44:53 +01:00
|
|
|
- 1und1 H mimap1 84498 [host1]
|
2011-03-12 03:45:04 +01:00
|
|
|
- a1.net imap.a1.net IMAP4 Ready WARSBL614 00029c23 [host1]
|
2011-03-12 03:44:51 +01:00
|
|
|
- Archiveopteryx 2.03, 2.04, 2.09, 2.10 [host2], 3.0.0 [host2]
|
2011-03-12 03:44:39 +01:00
|
|
|
(OSL 3.0) http://www.archiveopteryx.org/
|
2011-03-12 03:44:17 +01:00
|
|
|
- BincImap 1.2.3 (GPL) (http://www.bincimap.org/)
|
2011-03-12 03:44:51 +01:00
|
|
|
- CommuniGatePro server (Redhat 8.0) (Solaris), CommuniGate Pro 5.2.17[host2] (CentOS 5.4)
|
2011-03-12 03:44:35 +01:00
|
|
|
- Courier IMAP 1.5.1, 2.2.0, 2.1.1, 2.2.1, 3.0.8, 3.0.3, 4.1.1 (GPL)
|
2011-03-12 03:44:17 +01:00
|
|
|
(http://www.courier-mta.org/)
|
2011-03-12 03:43:50 +01:00
|
|
|
- Critical Path (7.0.020)
|
2011-03-12 03:44:17 +01:00
|
|
|
- Cyrus IMAP 1.5, 1.6, 2.1, 2.1.15, 2.1.16, 2.1.18
|
2011-03-12 03:44:31 +01:00
|
|
|
2.2.1, 2.2.2-BETA, 2.2.10, 2.2.12,
|
|
|
|
v2.2.3-Invoca-RPM-2.2.3-8,
|
|
|
|
2.3-alpha (OSI Approved),
|
2011-03-12 03:44:31 +01:00
|
|
|
v2.2.12-Invoca-RPM-2.2.12-3.RHEL4.1,
|
2011-03-12 03:44:35 +01:00
|
|
|
2.2.13,
|
2011-03-12 03:44:31 +01:00
|
|
|
v2.3.1-Invoca-RPM-2.3.1-2.7.fc5,
|
2011-03-12 03:44:38 +01:00
|
|
|
v2.3.7,
|
2011-03-12 03:44:17 +01:00
|
|
|
(http://asg.web.cmu.edu/cyrus/)
|
2011-03-12 03:44:29 +01:00
|
|
|
- David Tobit V8 (proprietary Message system).
|
2011-03-12 03:44:30 +01:00
|
|
|
- DBMail 1.2.1, 2.0.4, 2.0.9, 2.2rc1 (GPL) (http://www.dbmail.org/).
|
2011-03-12 03:44:29 +01:00
|
|
|
2.0.7 seems buggy.
|
2011-03-12 03:44:51 +01:00
|
|
|
- Deerfield VisNetic MailServer 5.8.6 [host1]
|
2011-03-12 03:45:04 +01:00
|
|
|
- dkimap4 [host1]
|
|
|
|
- Domino (Notes) 4.61[host1], 6.5[host1], 5.0.6, 5.0.7, 7.0.2, 6.0.2CF1,
|
|
|
|
7.0.1[host1], 8.0.1[host1], 8.5.2[host2]
|
2011-03-12 03:44:34 +01:00
|
|
|
- Dovecot 0.99.10.4, 0.99.14, 0.99.14-8.fc4, 1.0-0.beta2.7,
|
2011-03-12 03:44:40 +01:00
|
|
|
1.0.0 [dest/source] (LGPL) (http://www.dovecot.org/)
|
2011-03-12 03:44:26 +01:00
|
|
|
- Eudora WorldMail v2
|
2011-04-24 23:19:36 +02:00
|
|
|
- Gimap (Gmail imap)
|
2011-03-12 03:44:35 +01:00
|
|
|
- GMX IMAP4 StreamProxy.
|
2011-03-12 03:44:28 +01:00
|
|
|
- Groupwise IMAP (Novell) 6.x and 7.0. Buggy so see the FAQ.
|
2011-03-12 03:45:04 +01:00
|
|
|
- hMailServer 5.3.3 [host2], 4.4.1 [host1] (see FAQ)
|
2011-03-12 03:44:28 +01:00
|
|
|
- iPlanet Messaging server 4.15, 5.1, 5.2
|
2011-04-24 23:19:36 +02:00
|
|
|
- IMail 7.15 (Ipswitch/Win2003), 8.12, 11.03 [host1]
|
2011-07-11 23:24:12 +02:00
|
|
|
- Kerio 7.2.0P1 [host1]
|
2011-04-24 23:19:36 +02:00
|
|
|
- MailEnable 4.23 [host1] [host2]
|
2011-07-11 23:24:12 +02:00
|
|
|
- MDaemon 7.0.1, 8.0.2, 8.1, 9.5.4 (Windows server 2003 R2 platform), 12 [host2],
|
|
|
|
12.0.3 [host1]
|
2011-03-12 03:44:32 +01:00
|
|
|
- Mercury 4.1 (Windows server 2000 platform)
|
2011-03-12 03:44:51 +01:00
|
|
|
- Microsoft Exchange Server 5.5, 6.0.6249.0[host1], 6.0.6487.0[host1],
|
2011-06-14 12:59:46 +02:00
|
|
|
6.5.7638.1 [host2], 6.5 [host1], Exchange 2007 SP1 (with Update Rollup 2),
|
2011-06-14 13:02:33 +02:00
|
|
|
Exchange2007-EP-SP2,
|
|
|
|
Exchange 2010 RTM (Release to Manufacturing) [host2],
|
|
|
|
Exchange 2010 SP1 RU2[host2],
|
2011-03-12 03:45:04 +01:00
|
|
|
- Mirapoint
|
2011-03-12 03:43:50 +01:00
|
|
|
- Netscape Mail Server 3.6 (Wintel !)
|
2011-03-12 03:44:13 +01:00
|
|
|
- Netscape Messaging Server 4.15 Patch 7
|
2011-03-12 03:44:31 +01:00
|
|
|
- OpenMail IMAP server B.07.00.k0 (Samsung Contact ?)
|
2011-03-12 03:44:01 +01:00
|
|
|
- OpenWave
|
2011-03-12 03:45:04 +01:00
|
|
|
- Oracle Beehive [host1]
|
2011-03-12 03:44:06 +01:00
|
|
|
- Qualcomm Worldmail (NT)
|
2011-03-12 03:44:35 +01:00
|
|
|
- Rockliffe Mailsite 5.3.11, 4.5.6
|
2011-03-12 03:44:13 +01:00
|
|
|
- Samsung Contact IMAP server 8.5.0
|
2011-03-12 03:44:31 +01:00
|
|
|
- Scalix v10.1, 10.0.1.3, 11.0.0.431
|
2011-03-12 03:45:04 +01:00
|
|
|
- SmarterMail, Smarter Mail 5.0 Enterprise, Smarter Mail 5.5 [host1].
|
2011-03-12 03:43:50 +01:00
|
|
|
- SunONE Messaging server 5.2, 6.0 (SUN JES - Java Enterprise System)
|
2011-03-12 03:45:04 +01:00
|
|
|
- Sun Java(tm) System Messaging Server 6.2-2.05, 6.2-7.05, 6.3
|
2011-03-12 03:44:29 +01:00
|
|
|
- Surgemail 3.6f5-5
|
2011-03-12 03:43:49 +01:00
|
|
|
- UW-imap servers (imap-2000b) rijkkramer IMAP4rev1 2000.287
|
2011-03-12 03:44:32 +01:00
|
|
|
(RedHat uses UW like 2003.338rh), v12.264 Solaris 5.7 (OSI Approved)
|
2011-03-12 03:44:17 +01:00
|
|
|
(http://www.washington.edu/imap/)
|
2011-03-12 03:43:50 +01:00
|
|
|
- UW - QMail v2.1
|
2011-07-11 23:24:12 +02:00
|
|
|
- VMS, Imap part of TCP/IP suite of VMS 7.3.2
|
2011-06-14 13:02:33 +02:00
|
|
|
- Zimbra-IMAP 3.0.1 GA 160, 3.1.0 Build 279, 4.0.5, 4.5.2, 4.5.6,
|
|
|
|
Zimbra 5.0.24_GA_3356.RHEL4 [host1], 5.5, 6.x
|
2011-03-12 03:43:44 +01:00
|
|
|
|
|
|
|
Please report to the author any success or bad story with imapsync and
|
2011-03-12 03:44:39 +01:00
|
|
|
do not forget to mention the IMAP server software names and version on
|
2011-03-12 03:43:48 +01:00
|
|
|
both sides. This will help future users. To help the author maintaining
|
|
|
|
this section report the two lines at the begining of the output if they
|
|
|
|
are useful to know the softwares. Example:
|
|
|
|
|
2011-03-12 03:44:50 +01:00
|
|
|
Host1 software:* OK louloutte Cyrus IMAP4 v1.5.19 server ready
|
2011-03-12 03:45:02 +01:00
|
|
|
Host2 software:* OK Courier-IMAP ready
|
2011-03-12 03:43:44 +01:00
|
|
|
|
2011-03-12 03:44:47 +01:00
|
|
|
You can use option --justconnect to get those lines. Example:
|
2011-03-12 03:44:20 +01:00
|
|
|
|
|
|
|
imapsync --host1 imap.troc.org --host2 imap.trac.org --justconnect
|
2011-03-12 03:43:50 +01:00
|
|
|
|
2011-03-12 03:43:49 +01:00
|
|
|
HUGE MIGRATION
|
2011-03-12 03:44:47 +01:00
|
|
|
Pay special attention to options --subscribed --subscribe --delete
|
2011-03-12 03:45:04 +01:00
|
|
|
--delete2 --delete2folders --expunge --expunge1 --expunge2 --uidexpunge2
|
2011-03-12 03:45:06 +01:00
|
|
|
--maxage --minage --maxsize --useheader --fast --useuid --usecache
|
2011-03-12 03:43:49 +01:00
|
|
|
|
2011-03-12 03:43:49 +01:00
|
|
|
If you have many mailboxes to migrate think about a little shell
|
|
|
|
program. Write a file called file.csv (for example) containing users and
|
|
|
|
passwords. The separator used in this example is ';'
|
|
|
|
|
2011-03-12 03:44:47 +01:00
|
|
|
The file.csv file contains:
|
2011-03-12 03:43:49 +01:00
|
|
|
|
2011-09-25 22:31:48 +02:00
|
|
|
user001_1;password001_1;user001_2;password001_2
|
|
|
|
user002_1;password002_1;user002_2;password002_2
|
|
|
|
user003_1;password003_1;user003_2;password003_2
|
|
|
|
user004_1;password004_1;user004_2;password004_2
|
|
|
|
user005_1;password005_1;user005_2;password005_2 ...
|
2011-03-12 03:43:49 +01:00
|
|
|
|
2011-09-25 22:31:48 +02:00
|
|
|
On Unix the shell program can be:
|
2011-03-12 03:43:49 +01:00
|
|
|
|
2011-03-12 03:44:16 +01:00
|
|
|
{ while IFS=';' read u1 p1 u2 p2; do
|
2011-09-25 22:31:48 +02:00
|
|
|
imapsync --host1 imap.side1.org --user1 "$u1" --password1 "$p1" \
|
|
|
|
--host2 imap.side2.org --user2 "$u2" --password2 "$p2" ...
|
2011-03-12 03:44:16 +01:00
|
|
|
done ; } < file.csv
|
2011-03-12 03:43:49 +01:00
|
|
|
|
2011-09-25 22:31:48 +02:00
|
|
|
On Windows the batch program can be:
|
|
|
|
|
|
|
|
FOR /F "tokens=1,2,3,4 delims=; eol=#" %%G IN (file.csv) DO imapsync ^
|
|
|
|
--host1 imap.side1.org --user1 %%G --password1 %%H ^
|
|
|
|
--host2 imap.side2.org --user2 %%I --password2 %%J ...
|
|
|
|
|
|
|
|
The ... have to be replaced by nothing or any imapsync option.
|
|
|
|
|
2011-03-12 03:43:49 +01:00
|
|
|
Welcome in shell programming !
|
|
|
|
|
2011-03-12 03:43:49 +01:00
|
|
|
Hacking
|
2011-03-12 03:44:50 +01:00
|
|
|
Feel free to hack imapsync as the WTFPL Licence permits it.
|
2011-03-12 03:43:51 +01:00
|
|
|
|
|
|
|
Links
|
|
|
|
Entries for imapsync: http://www.imap.org/products/showall.php
|
|
|
|
|
2011-03-12 03:39:59 +01:00
|
|
|
SIMILAR SOFTWARES
|
2011-03-12 03:44:35 +01:00
|
|
|
imap_tools : http://www.athensfbc.com/imap_tools
|
|
|
|
offlineimap : http://software.complete.org/offlineimap
|
|
|
|
mailsync : http://mailsync.sourceforge.net/
|
|
|
|
imapxfer : http://www.washington.edu/imap/
|
|
|
|
part of the imap-utils from UW.
|
|
|
|
mailutil : replace imapxfer in
|
|
|
|
part of the imap-utils from UW.
|
|
|
|
http://www.gsp.com/cgi-bin/man.cgi?topic=mailutil
|
|
|
|
imaprepl : http://www.bl0rg.net/software/
|
|
|
|
http://freshmeat.net/projects/imap-repl/
|
|
|
|
imap_migrate : http://freshmeat.net/projects/imapmigration/
|
|
|
|
imapcopy : http://home.arcor.de/armin.diehl/imapcopy/imapcopy.html
|
|
|
|
migrationtool : http://sourceforge.net/projects/migrationtool/
|
|
|
|
imapmigrate : http://sourceforge.net/projects/cyrus-utils/
|
2011-03-12 03:44:35 +01:00
|
|
|
wonko_imapsync: http://wonko.com/article/554
|
2011-03-12 03:44:36 +01:00
|
|
|
see also tools/wonko_ruby_imapsync
|
2011-04-24 23:19:36 +02:00
|
|
|
isync : http://isync.sourceforge.net/
|
2011-03-12 03:44:35 +01:00
|
|
|
pop2imap : http://www.linux-france.org/prj/pop2imap/
|
2011-03-12 03:43:44 +01:00
|
|
|
|
2011-03-12 03:44:57 +01:00
|
|
|
Feedback (good or bad) will often be welcome.
|
2011-03-12 03:39:59 +01:00
|
|
|
|
2011-09-25 22:31:48 +02:00
|
|
|
$Id: imapsync,v 1.456 2011/08/24 04:21:30 gilles Exp gilles $
|
2011-03-12 03:39:59 +01:00
|
|
|
|