mirror of
https://github.com/imapsync/imapsync.git
synced 2025-08-02 15:11:49 +02:00
1.727
This commit is contained in:
parent
3eaac56812
commit
137242e609
114 changed files with 10852 additions and 8980 deletions
299
W/imapsync.1
299
W/imapsync.1
|
@ -1,4 +1,4 @@
|
|||
.\" Automatically generated by Pod::Man 2.25 (Pod::Simple 3.16)
|
||||
.\" Automatically generated by Pod::Man 2.27 (Pod::Simple 3.28)
|
||||
.\"
|
||||
.\" Standard preamble:
|
||||
.\" ========================================================================
|
||||
|
@ -38,6 +38,8 @@
|
|||
. ds PI \(*p
|
||||
. ds L" ``
|
||||
. ds R" ''
|
||||
. ds C`
|
||||
. ds C'
|
||||
'br\}
|
||||
.\"
|
||||
.\" Escape single quotes in literal strings from groff's Unicode transform.
|
||||
|
@ -48,17 +50,24 @@
|
|||
.\" titles (.TH), headers (.SH), subsections (.SS), items (.Ip), and index
|
||||
.\" entries marked with X<> in POD. Of course, you'll have to process the
|
||||
.\" output yourself in some meaningful fashion.
|
||||
.ie \nF \{\
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
.\"
|
||||
.\" Avoid warning from groff about undefined register 'F'.
|
||||
.de IX
|
||||
..
|
||||
. nr % 0
|
||||
. rr F
|
||||
.\}
|
||||
.el \{\
|
||||
. de IX
|
||||
.nr rF 0
|
||||
.if \n(.g .if rF .nr rF 1
|
||||
.if (\n(rF:(\n(.g==0)) \{
|
||||
. if \nF \{
|
||||
. de IX
|
||||
. tm Index:\\$1\t\\n%\t"\\$2"
|
||||
..
|
||||
. if !\nF==2 \{
|
||||
. nr % 0
|
||||
. nr F 2
|
||||
. \}
|
||||
. \}
|
||||
.\}
|
||||
.rr rF
|
||||
.\"
|
||||
.\" Accent mark definitions (@(#)ms.acc 1.5 88/02/08 SMI; from UCB 4.2).
|
||||
.\" Fear. Run. Save yourself. No user-serviceable parts.
|
||||
|
@ -124,24 +133,25 @@
|
|||
.\" ========================================================================
|
||||
.\"
|
||||
.IX Title "IMAPSYNC 1"
|
||||
.TH IMAPSYNC 1 "2016-03-17" "perl v5.14.2" "User Contributed Perl Documentation"
|
||||
.TH IMAPSYNC 1 "2016-08-19" "perl v5.18.2" "User Contributed Perl Documentation"
|
||||
.\" For nroff, turn off justification. Always turn off hyphenation; it makes
|
||||
.\" way too many mistakes in technical documents.
|
||||
.if n .ad l
|
||||
.nh
|
||||
.SH "NAME"
|
||||
imapsync \- IMAP synchronisation, sync, copy or migration tool.
|
||||
Synchronises mailboxes between two imap servers.
|
||||
Good at IMAP migration. More than 66 different IMAP server softwares
|
||||
supported with success, few failures.
|
||||
imapsync \- Email IMAP tool for syncing, copying and migrating email mailboxes.
|
||||
.PP
|
||||
$Revision: 1.684 $
|
||||
The imapsync command synchronises mailboxes between two imap servers.
|
||||
More than 69 different IMAP server softwares supported with success,
|
||||
few failures.
|
||||
.PP
|
||||
$Revision: 1.727 $
|
||||
.SH "SYNOPSIS"
|
||||
.IX Header "SYNOPSIS"
|
||||
.Vb 5
|
||||
\& To synchronize the source imap account
|
||||
\& "test1" on server "test1.lamiral.info" with password "secret1"
|
||||
\& to the destination imap account
|
||||
\& To synchronize the source imap account
|
||||
\& "test1" on server "test1.lamiral.info" with password "secret1"
|
||||
\& to the destination imap account
|
||||
\& "test2" on server "test2.lamiral.info" with password "secret2"
|
||||
\& do:
|
||||
\&
|
||||
|
@ -149,13 +159,18 @@ $Revision: 1.684 $
|
|||
\& \-\-host1 test1.lamiral.info \-\-user1 test1 \-\-password1 secret1 \e
|
||||
\& \-\-host2 test2.lamiral.info \-\-user2 test2 \-\-password2 secret2
|
||||
.Ve
|
||||
.SH "REQUIRED ARGUMENTS"
|
||||
.IX Header "REQUIRED ARGUMENTS"
|
||||
The required argmuments are the six values, three on each sides,
|
||||
needed to login into the \s-1IMAP\s0 servers,
|
||||
a host, a username, and a password, two times.
|
||||
.SH "INSTALL"
|
||||
.IX Header "INSTALL"
|
||||
.Vb 5
|
||||
\& Imapsync works under any Unix with perl.
|
||||
\& Imapsync works under Windows (2000, XP, Vista, Seven)
|
||||
\& Imapsync works under Windows (2000, XP, Vista, Seven)
|
||||
\& as a standalone binary software called imapsync.exe
|
||||
\& Imapsync works under OS X as a standalone binary
|
||||
\& Imapsync works under OS X as a standalone binary
|
||||
\& software called imapsync_bin_Darwin.
|
||||
\&
|
||||
\& Purchase latest imapsync at
|
||||
|
@ -169,14 +184,19 @@ $Revision: 1.684 $
|
|||
\&
|
||||
\& Go into the directory imapsync\-x.xx and read the INSTALL file.
|
||||
\& As mentioned at http://imapsync.lamiral.info/#install
|
||||
\& the INSTALL file can also be found at
|
||||
\& the INSTALL file can also be found at
|
||||
\& http://imapsync.lamiral.info/INSTALL
|
||||
\& It is now split in several files for each system
|
||||
\& http://imapsync.lamiral.info/INSTALL.d/
|
||||
.Ve
|
||||
.SH "CONFIGURATION"
|
||||
.IX Header "CONFIGURATION"
|
||||
There is no specific configuration file for imapsync,
|
||||
everything is specified by the command line parameteres
|
||||
and the default behavior.
|
||||
.SH "USAGE"
|
||||
.IX Header "USAGE"
|
||||
To get a description of each option just run imapsync
|
||||
To get a description of each option just run imapsync
|
||||
with no argument, like this:
|
||||
.PP
|
||||
.Vb 1
|
||||
|
@ -189,16 +209,16 @@ reproduced here:
|
|||
.PP
|
||||
.Vb 1
|
||||
\& usage: ./imapsync [options]
|
||||
\&
|
||||
\& Several options are mandatory.
|
||||
\&
|
||||
\& Several options are mandatory.
|
||||
\& str means string
|
||||
\& int means integer
|
||||
\& reg means regular expression
|
||||
\& cmd means command
|
||||
\&
|
||||
\& \-\-dry : Makes imapsync doing nothing, just print what would
|
||||
\&
|
||||
\& \-\-dry : Makes imapsync doing nothing, just print what would
|
||||
\& be done without \-\-dry.
|
||||
\&
|
||||
\&
|
||||
\& \-\-host1 str : Source or "from" imap server. Mandatory.
|
||||
\& \-\-port1 int : Port to connect on host1. Default is 143, 993 if \-\-ssl1
|
||||
\& \-\-user1 str : User to login on host1. Mandatory.
|
||||
|
@ -209,12 +229,12 @@ reproduced here:
|
|||
\& \-\-port2 int : Port to connect on host2. Default is 143, 993 if \-\-ssl2
|
||||
\& \-\-user2 str : User to login on host2. Mandatory.
|
||||
\& \-\-password2 str : Password for the user2.
|
||||
\&
|
||||
\& \-\-passfile1 str : Password file for the user1. It must contain the
|
||||
\&
|
||||
\& \-\-passfile1 str : Password file for the user1. It must contain the
|
||||
\& password on the first line. This option avoids to show
|
||||
\& the password on the command line like \-\-password1 does.
|
||||
\& \-\-passfile2 str : Password file for the user2. Contains the password.
|
||||
\&
|
||||
\&
|
||||
\& \-\-ssl1 : Use a SSL connection on host1.
|
||||
\& \-\-ssl2 : Use a SSL connection on host2.
|
||||
\& \-\-tls1 : Use a TLS connection on host1.
|
||||
|
@ -225,45 +245,45 @@ reproduced here:
|
|||
\& See all possibilities in the new() method of IO::Socket::SSL
|
||||
\& http://search.cpan.org/perldoc?IO::Socket::SSL#Description_Of_Methods
|
||||
\& \-\-sslargs2 str : Pass any ssl parameter for host2 ssl or tls connection.
|
||||
\& See \-\-sslargs1
|
||||
\&
|
||||
\& \-\-timeout1 int : Connection timeout in seconds for host1.
|
||||
\& See \-\-sslargs1
|
||||
\&
|
||||
\& \-\-timeout1 int : Connection timeout in seconds for host1.
|
||||
\& Default is 120 and 0 means no timeout at all.
|
||||
\& \-\-timeout2 int : Connection timeout in seconds for host2.
|
||||
\& \-\-timeout2 int : Connection timeout in seconds for host2.
|
||||
\& Default is 120 and 0 means no timeout at all.
|
||||
\&
|
||||
\&
|
||||
\& \-\-authmech1 str : Auth mechanism to use with host1:
|
||||
\& PLAIN, LOGIN, CRAM\-MD5 etc. Use UPPERCASE.
|
||||
\& \-\-authmech2 str : Auth mechanism to use with host2. See \-\-authmech1
|
||||
\&
|
||||
\& \-\-authuser1 str : User to auth with on host1 (admin user).
|
||||
\& \-\-authuser1 str : User to auth with on host1 (admin user).
|
||||
\& Avoid using \-\-authmech1 SOMETHING with \-\-authuser1.
|
||||
\& \-\-authuser2 str : User to auth with on host2 (admin user).
|
||||
\& \-\-proxyauth1 : Use proxyauth on host1. Requires \-\-authuser1.
|
||||
\& Required by Sun/iPlanet/Netscape IMAP servers to
|
||||
\& be able to use an administrative user.
|
||||
\& \-\-proxyauth2 : Use proxyauth on host2. Requires \-\-authuser2.
|
||||
\&
|
||||
\&
|
||||
\& \-\-authmd51 : Use MD5 authentification for host1.
|
||||
\& \-\-authmd52 : Use MD5 authentification for host2.
|
||||
\& \-\-domain1 str : Domain on host1 (NTLM authentication).
|
||||
\& \-\-domain2 str : Domain on host2 (NTLM authentication).
|
||||
\&
|
||||
\&
|
||||
\&
|
||||
\&
|
||||
\& \-\-folder str : Sync this folder.
|
||||
\& \-\-folder str : and this one, etc.
|
||||
\& \-\-folderrec str : Sync this folder recursively.
|
||||
\& \-\-folderrec str : and this one, etc.
|
||||
\&
|
||||
\&
|
||||
\& \-\-folderfirst str : Sync this folder first. \-\-folderfirst "Work"
|
||||
\& \-\-folderfirst str : then this one, etc.
|
||||
\& \-\-folderlast str : Sync this folder last. \-\-folderlast "[Gmail]/All Mail"
|
||||
\& \-\-folderlast str : then this one, etc.
|
||||
\&
|
||||
\&
|
||||
\& \-\-nomixfolders : Do not merge folders when host1 is case sensitive
|
||||
\& while host2 is not (like Exchange). Only the first
|
||||
\& similar folder is synced (ex: Sent SENT sent \-> Sent).
|
||||
\&
|
||||
\&
|
||||
\& \-\-skipemptyfolders : Empty host1 folders are not created on host2.
|
||||
\&
|
||||
\& \-\-f1f2 str1=str2 : Force folder str1 to be synced to str2.
|
||||
|
@ -275,12 +295,12 @@ reproduced here:
|
|||
\& Several folders to avoid:
|
||||
\& \-\-exclude \*(Aqfold1|fold2|f3\*(Aq skips fold1, fold2 and f3.
|
||||
\& \-\-exclude reg : or this one, etc.
|
||||
\&
|
||||
\& \-\-subfolder2 str : Move whole host1 folders hierarchy under this
|
||||
\&
|
||||
\& \-\-subfolder2 str : Move whole host1 folders hierarchy under this
|
||||
\& host2 folder str .
|
||||
\& It does it by adding two \-\-regextrans2 options before
|
||||
\& all others. Add \-\-debug to see what\*(Aqs really going on.
|
||||
\&
|
||||
\&
|
||||
\& \-\-regextrans2 reg : Apply the whole regex to each destination folders.
|
||||
\& \-\-regextrans2 reg : and this one. etc.
|
||||
\& When you play with the \-\-regextrans2 option, first
|
||||
|
@ -288,21 +308,21 @@ reproduced here:
|
|||
\& Then, when happy, remove \-\-dry, remove \-\-justfolders.
|
||||
\& Have in mind that \-\-regextrans2 is applied after prefix
|
||||
\& and separator inversion.
|
||||
\&
|
||||
\&
|
||||
\& \-\-tmpdir str : Where to store temporary files and subdirectories.
|
||||
\& Will be created if it doesn\*(Aqt exist.
|
||||
\& Default is system specific, Unix is /tmp but
|
||||
\& it\*(Aqs often small and deleted at reboot.
|
||||
\& \-\-tmpdir /var/tmp should be better.
|
||||
\& \-\-pidfile str : The file where imapsync pid is written.
|
||||
\& \-\-pidfilelocking : Abort if pidfile already exists. Usefull to avoid
|
||||
\& \-\-pidfilelocking : Abort if pidfile already exists. Usefull to avoid
|
||||
\& concurrent transfers on the same mailbox.
|
||||
\&
|
||||
\&
|
||||
\& \-\-nolog : Turn off logging on file
|
||||
\& \-\-logfile str : Change the default log filename (can be dirname/filename).
|
||||
\& \-\-logdir str : Change the default log directory. Default is LOG_imapsync
|
||||
\&
|
||||
\& \-\-prefix1 str : Remove prefix to all destination folders
|
||||
\& \-\-prefix1 str : Remove prefix to all destination folders
|
||||
\& (usually INBOX. or INBOX/ or an empty string "")
|
||||
\& you have to use \-\-prefix1 if host1 imap server
|
||||
\& does not have NAMESPACE capability, so imapsync
|
||||
|
@ -310,16 +330,16 @@ reproduced here:
|
|||
\& \-\-prefix2 str : Add prefix to all host2 folders. See \-\-prefix1
|
||||
\& \-\-sep1 str : Host1 separator in case NAMESPACE is not supported.
|
||||
\& \-\-sep2 str : Host2 separator in case NAMESPACE is not supported.
|
||||
\&
|
||||
\&
|
||||
\& \-\-skipmess reg : Skips messages maching the regex.
|
||||
\& Example: \*(Aqm/[\ex80\-ff]/\*(Aq # to avoid 8bits messages.
|
||||
\& \-\-skipmess is applied before \-\-regexmess
|
||||
\& \-\-skipmess reg : or this one, etc.
|
||||
\&
|
||||
\& \-\-pipemess cmd : Apply this cmd command to each message content
|
||||
\& \-\-pipemess cmd : Apply this cmd command to each message content
|
||||
\& before the copy.
|
||||
\& \-\-pipemess cmd : and this one, etc.
|
||||
\&
|
||||
\&
|
||||
\& \-\-disarmreadreceipts : Disarms read receipts (host2 Exchange issue)
|
||||
\&
|
||||
\& \-\-regexmess reg : Apply the whole regex to each message before transfer.
|
||||
|
@ -329,20 +349,20 @@ reproduced here:
|
|||
\& \-\-regexflag reg : Apply the whole regex to each flags list.
|
||||
\& Example: \*(Aqs/"Junk"//g\*(Aq # to remove "Junk" flag.
|
||||
\& \-\-regexflag reg : and this one, etc.
|
||||
\&
|
||||
\& \-\-delete : Deletes messages on host1 server after a successful
|
||||
\& transfer. Option \-\-delete has the following behavior:
|
||||
\& it marks messages as deleted with the IMAP flag
|
||||
\& \eDeleted, then messages are really deleted with an
|
||||
\&
|
||||
\& \-\-delete : Deletes messages on host1 server after a successful
|
||||
\& transfer. Option \-\-delete has the following behavior:
|
||||
\& it marks messages as deleted with the IMAP flag
|
||||
\& \eDeleted, then messages are really deleted with an
|
||||
\& EXPUNGE IMAP command.
|
||||
\&
|
||||
\& \-\-delete2 : Delete messages in host2 that are not in
|
||||
\& host1 server. Useful for backup or pre\-sync.
|
||||
\& \-\-delete2duplicates : Delete messages in host2 that are duplicates.
|
||||
\& Works only without \-\-useuid since duplicates are
|
||||
\& Works only without \-\-useuid since duplicates are
|
||||
\& detected with an header part of each message.
|
||||
\&
|
||||
\& \-\-delete2folders : Delete folders in host2 that are not in host1 server.
|
||||
\& \-\-delete2folders : Delete folders in host2 that are not in host1 server.
|
||||
\& For safety, first try it like this (it is safe):
|
||||
\& \-\-delete2folders \-\-dry \-\-justfolders \-\-nofoldersizes
|
||||
\& \-\-delete2foldersonly reg : Deleted only folders matching regex.
|
||||
|
@ -351,8 +371,8 @@ reproduced here:
|
|||
\& Example: \-\-delete2foldersbutnot "/Tasks$|Contacts$|Foo$/"
|
||||
\& \-\-noexpunge : Do not expunge messages on host1.
|
||||
\& Expunge really deletes messages marked deleted.
|
||||
\& Expunge is made at the beginning, on host1 only.
|
||||
\& Newly transferred messages are also expunged if
|
||||
\& Expunge is made at the beginning, on host1 only.
|
||||
\& Newly transferred messages are also expunged if
|
||||
\& option \-\-delete is given.
|
||||
\& No expunge is done on host2 account (unless \-\-expunge2)
|
||||
\& \-\-expunge1 : Expunge messages on host1 after messages transfer.
|
||||
|
@ -360,13 +380,13 @@ reproduced here:
|
|||
\& \-\-uidexpunge2 : uidexpunge messages on the host2 account
|
||||
\& that are not on the host1 account, requires \-\-delete2
|
||||
\& \-\-nomixfolders : Avoid merging folders that are considered different on
|
||||
\& host1 but the same on destination host2 because of
|
||||
\& host1 but the same on destination host2 because of
|
||||
\& case sensitivities and insensitivities.
|
||||
\&
|
||||
\&
|
||||
\& \-\-syncinternaldates : Sets the internal dates on host2 same as host1.
|
||||
\& Turned on by default. Internal date is the date
|
||||
\& a message arrived on a host (mtime).
|
||||
\& \-\-idatefromheader : Sets the internal dates on host2 same as the
|
||||
\& \-\-idatefromheader : Sets the internal dates on host2 same as the
|
||||
\& "Date:" headers.
|
||||
\&
|
||||
\& \-\-maxsize int : Skip messages larger (or equal) than int bytes
|
||||
|
@ -381,48 +401,48 @@ reproduced here:
|
|||
\& past|+++++++++++++++minage\-\-\-\->now
|
||||
\& past|\-\-\-\-maxage+++++minage\-\-\-\->now (intersection)
|
||||
\& past|++++minage\-\-\-\-\-maxage++++>now (union)
|
||||
\&
|
||||
\& \-\-search str : Selects only messages returned by this IMAP SEARCH
|
||||
\&
|
||||
\& \-\-search str : Selects only messages returned by this IMAP SEARCH
|
||||
\& command. Applied on both sides.
|
||||
\& \-\-search1 str : Same as \-\-search for selecting host1 messages only.
|
||||
\& \-\-search2 str : Same as \-\-search for selecting host2 messages only.
|
||||
\& \-\-search CRIT equals \-\-search1 CRIT \-\-search2 CRIT
|
||||
\&
|
||||
\&
|
||||
\& \-\-exitwhenover int : Stop syncing when total bytes transferred reached.
|
||||
\& Gmail per day allows
|
||||
\& Gmail per day allows
|
||||
\& 2500000000 = 2.5 GB downloaded from Gmail as host2
|
||||
\& 500000000 = 500 MB uploaded to Gmail as host1.
|
||||
\&
|
||||
\&
|
||||
\& \-\-maxlinelength int : skip messages with a line length longer than int bytes.
|
||||
\& RFC 2822 says it must be no more than 1000 bytes.
|
||||
\&
|
||||
\& \-\-useheader str : Use this header to compare messages on both sides.
|
||||
\& Ex: Message\-ID or Subject or Date.
|
||||
\& \-\-useheader str and this one, etc.
|
||||
\&
|
||||
\&
|
||||
\& \-\-subscribed : Transfers subscribed folders.
|
||||
\& \-\-subscribe : Subscribe to the folders transferred on the
|
||||
\& \-\-subscribe : Subscribe to the folders transferred on the
|
||||
\& host2 that are subscribed on host1. On by default.
|
||||
\& \-\-subscribeall : Subscribe to the folders transferred on the
|
||||
\& \-\-subscribeall : Subscribe to the folders transferred on the
|
||||
\& host2 even if they are not subscribed on host1.
|
||||
\&
|
||||
\&
|
||||
\& \-\-nofoldersizes : Do not calculate the size of each folder in bytes
|
||||
\& and message counts. Default is to calculate them.
|
||||
\& \-\-nofoldersizesatend: Do not calculate the size of each folder in bytes
|
||||
\& and message counts at the end. Default is on.
|
||||
\& \-\-justfoldersizes : Exit after having printed the folder sizes.
|
||||
\&
|
||||
\&
|
||||
\& \-\-syncacls : Synchronises acls (Access Control Lists).
|
||||
\& \-\-nosyncacls : Does not synchronize acls. This is the default.
|
||||
\& Acls in IMAP are not standardized, be careful.
|
||||
\&
|
||||
\&
|
||||
\& \-\-usecache : Use cache to speedup.
|
||||
\& \-\-nousecache : Do not use cache. Caveat: \-\-useuid \-\-nousecache creates
|
||||
\& duplicates on multiple runs.
|
||||
\& \-\-useuid : Use uid instead of header as a criterium to recognize
|
||||
\& messages. Option \-\-usecache is then implied unless
|
||||
\& \-\-nousecache is used.
|
||||
\&
|
||||
\& \-\-useuid : Use uid instead of header as a criterium to recognize
|
||||
\& messages. Option \-\-usecache is then implied unless
|
||||
\& \-\-nousecache is used.
|
||||
\&
|
||||
\& \-\-debug : Debug mode.
|
||||
\& \-\-debugfolders : Debug mode for the folders part only.
|
||||
\& \-\-debugcontent : Debug content of the messages transfered. Huge ouput.
|
||||
|
@ -435,7 +455,7 @@ reproduced here:
|
|||
\& \-\-errorsmax int : Exit when int number of errors is reached. Default is 50.
|
||||
\&
|
||||
\& \-\-tests : Run local non\-regression tests. Exit code 0 means all ok.
|
||||
\& \-\-testslive : Run a live test with test1.lamiral.info imap server.
|
||||
\& \-\-testslive : Run a live test with test1.lamiral.info imap server.
|
||||
\& Useful to check the basics. Needs internet connexion.
|
||||
\&
|
||||
\& \-\-version : Print only software version.
|
||||
|
@ -444,19 +464,19 @@ reproduced here:
|
|||
\& \-\-noid : Do not send/receive ID command to imap servers.
|
||||
\& \-\-justconnect : Just connect to both servers and print useful
|
||||
\& information. Need only \-\-host1 and \-\-host2 options.
|
||||
\& \-\-justlogin : Just login to both host1 and host2 with users
|
||||
\& \-\-justlogin : Just login to both host1 and host2 with users
|
||||
\& credentials, then exit.
|
||||
\& \-\-justfolders : Do only things about folders (ignore messages).
|
||||
\&
|
||||
\& \-\-help : print this help.
|
||||
\&
|
||||
\& Example:
|
||||
\& To synchronize the source imap account
|
||||
\& "test1" on server "test1.lamiral.info" with password "secret1"
|
||||
\& to the destination imap account
|
||||
\& Example:
|
||||
\& To synchronize the source imap account
|
||||
\& "test1" on server "test1.lamiral.info" with password "secret1"
|
||||
\& to the destination imap account
|
||||
\& "test2" on server "test2.lamiral.info" with password "secret2"
|
||||
\& do:
|
||||
\&
|
||||
\&
|
||||
\& imapsync \e
|
||||
\& \-\-host1 test1.lamiral.info \-\-user1 test1 \-\-password1 secret1 \e
|
||||
\& \-\-host2 test2.lamiral.info \-\-user2 test2 \-\-password2 secret2
|
||||
|
@ -466,42 +486,42 @@ reproduced here:
|
|||
Imapsync command is a tool allowing incremental and
|
||||
recursive imap transfers from one mailbox to another.
|
||||
.PP
|
||||
By default all folders are transferred, recursively, all
|
||||
By default all folders are transferred, recursively, all
|
||||
possible flags (\eSeen \eAnswered \eFlagged etc.) are synced too.
|
||||
.PP
|
||||
We sometimes need to transfer mailboxes from one imap server to
|
||||
another. This is called migration.
|
||||
.PP
|
||||
Imapsync reduces the amount
|
||||
of data transferred by not transferring a given message
|
||||
of data transferred by not transferring a given message
|
||||
if it resides already on both sides. Same specific headers
|
||||
and the transfer is done only once; taken into account are by default
|
||||
Message-Id and Received header lines.
|
||||
and the transfer is done only once; taken into account are by default
|
||||
Message-Id and Received header lines.
|
||||
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
|
||||
time and restart it later, imapsync works well with bad
|
||||
connections and interruptions.
|
||||
.PP
|
||||
You can decide to delete the messages from the source mailbox
|
||||
after a successful transfer, it can be a good feature when migrating
|
||||
live mailboxes since messages will be only on one side.
|
||||
In that case, use the \-\-delete option. Option \-\-delete implies
|
||||
also option \-\-expunge so all messages marked deleted on host1
|
||||
In that case, 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
|
||||
good real world scenario for the combination \-\-delete \-\-noexpunge).
|
||||
.PP
|
||||
A different scenario is synchronizing a mailbox B from another mailbox A
|
||||
in case you just want to keep a \*(L"live\*(R" copy of A in B.
|
||||
in case you just want to keep a \*(L"live\*(R" copy of A in B.
|
||||
In that case \-\-delete2 has to be used, it deletes messages in host2
|
||||
folder B that are not in host1 folder A. If you also need to destroy
|
||||
host2 folders that are not in host1 then use \-\-delete2folders (see also
|
||||
folder B that are not in host1 folder A. If you also need to destroy
|
||||
host2 folders that are not in host1 then use \-\-delete2folders (see also
|
||||
\&\-\-delete2foldersonly and \-\-delete2foldersbutnot).
|
||||
.PP
|
||||
Imapsync is not adequate for maintaining two active imap accounts
|
||||
Imapsync is not adequate for maintaining two active imap accounts
|
||||
in synchronization when the user plays independently on both sides.
|
||||
Use offlineimap (written by John Goerzen) or mbsync (written by
|
||||
Use offlineimap (written by John Goerzen) or mbsync (written by
|
||||
Michael R. Elkins) for 2 ways synchronizations.
|
||||
.SH "OPTIONS"
|
||||
.IX Header "OPTIONS"
|
||||
|
@ -511,6 +531,8 @@ To get a description of each option just invoke:
|
|||
\& imapsync
|
||||
.Ve
|
||||
.PP
|
||||
or read the previous section named \s-1USAGE,\s0
|
||||
.PP
|
||||
or read http://imapsync.lamiral.info/OPTIONS
|
||||
.SH "HISTORY"
|
||||
.IX Header "HISTORY"
|
||||
|
@ -528,8 +550,8 @@ 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.
|
||||
.PP
|
||||
To synchronize the imap account \*(L"buddy\*(R" (with password \*(L"secret1\*(R")
|
||||
on host \*(L"imap.src.fr\*(R" to the imap account \*(L"max\*(R" (with password \*(L"secret2\*(R")
|
||||
To synchronize the imap account \*(L"buddy\*(R" (with password \*(L"secret1\*(R")
|
||||
on host \*(L"imap.src.fr\*(R" to the imap account \*(L"max\*(R" (with password \*(L"secret2\*(R")
|
||||
on host \*(L"imap.dest.fr\*(R":
|
||||
.PP
|
||||
.Vb 2
|
||||
|
@ -542,7 +564,7 @@ mailbox.
|
|||
.SH "SECURITY"
|
||||
.IX Header "SECURITY"
|
||||
You can use \-\-passfile1 instead of \-\-password1 to give the
|
||||
password since it is safer. With \-\-password1 option any user
|
||||
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 \f(CW$PASSWORD1\fR) is also
|
||||
dangerous because of the 'ps auxwwwwe' command. So, saving
|
||||
|
@ -552,7 +574,7 @@ the best solution.
|
|||
imasync is not totally protected against sniffers on the
|
||||
network since passwords may be transferred in plain text
|
||||
if \s-1CRAM\-MD5\s0 is not supported by your imap servers. Use
|
||||
\&\-\-ssl1 (or \-\-tls1) and \-\-ssl2 (or \-\-tls2) to enable
|
||||
\&\-\-ssl1 (or \-\-tls1) and \-\-ssl2 (or \-\-tls2) to enable
|
||||
encryption on host1 and host2.
|
||||
.PP
|
||||
You may authenticate as one user (typically an admin user),
|
||||
|
@ -566,8 +588,8 @@ Same behavior with the \-\-authuser2 option.
|
|||
Authenticate with an admin account must be supported by your
|
||||
imap server to work with imapsync.
|
||||
.PP
|
||||
When working on Sun/iPlanet/Netscape \s-1IMAP\s0 servers you must use
|
||||
\&\-\-proxyauth1 to enable administrative user to masquerade as another user.
|
||||
When working on Sun/iPlanet/Netscape \s-1IMAP\s0 servers you must use
|
||||
\&\-\-proxyauth1 to enable administrative user to masquerade as another user.
|
||||
Can also be used on destination server with \-\-proxyauth2
|
||||
.PP
|
||||
You can authenticate with \s-1OAUTH\s0 when transfering from Google Apps.
|
||||
|
@ -579,21 +601,30 @@ with Google Apps free edition.
|
|||
imapsync will exit with a 0 status (return code) if everything went good.
|
||||
Otherwise, it exits with a non-zero status.
|
||||
.PP
|
||||
So if you have an unreliable internet connection, you can use this loop
|
||||
So if you have an unreliable internet connection, you can use this loop
|
||||
in a Bourne shell:
|
||||
.PP
|
||||
.Vb 3
|
||||
\& while ! imapsync ...; do
|
||||
\& while ! imapsync ...; do
|
||||
\& echo imapsync not complete
|
||||
\& done
|
||||
.Ve
|
||||
.SH "LICENSE"
|
||||
.IX Header "LICENSE"
|
||||
imapsync is free, open, public but not always gratis software
|
||||
.SH "LICENSE AND COPYRIGHT"
|
||||
.IX Header "LICENSE AND COPYRIGHT"
|
||||
imapsync is free, open, public but not always gratis software
|
||||
cover by the \s-1NOLIMIT\s0 Public License.
|
||||
See the \s-1LICENSE\s0 file included in the distribution or just read this
|
||||
simple sentence as it is the licence text:
|
||||
No limit to do anything with this work and this license.
|
||||
.PP
|
||||
.Vb 1
|
||||
\& "No limit to do anything with this work and this license."
|
||||
.Ve
|
||||
.PP
|
||||
In case it is not long enough I repeat:
|
||||
.PP
|
||||
.Vb 1
|
||||
\& "No limit to do anything with this work and this license."
|
||||
.Ve
|
||||
.SH "MAILING-LIST"
|
||||
.IX Header "MAILING-LIST"
|
||||
The public mailing-list may be the best way to get free support.
|
||||
|
@ -628,16 +659,16 @@ Gilles \s-1LAMIRAL\s0 earns his living by writing, installing,
|
|||
configuring and teaching free, open and often gratis
|
||||
softwares. It used to be \*(L"always gratis\*(R" but now it is
|
||||
\&\*(L"often\*(R" because imapsync is sold by its author, a good
|
||||
way to stay maintening and supporting free open public
|
||||
way to stay maintening and supporting free open public
|
||||
softwares (see the license) over decades.
|
||||
.SH "BUG REPORT GUIDELINES"
|
||||
.IX Header "BUG REPORT GUIDELINES"
|
||||
.SH "BUGS AND LIMITATIONS"
|
||||
.IX Header "BUGS AND LIMITATIONS"
|
||||
Help me to help you: follow the following guidelines.
|
||||
.PP
|
||||
Report any bugs or feature requests to the public mailing-list
|
||||
Report any bugs or feature requests to the public mailing-list
|
||||
or to the author.
|
||||
.PP
|
||||
Before reporting bugs, read the \s-1FAQ\s0, the \s-1README\s0 and the
|
||||
Before reporting bugs, read the FAQs, the \s-1README\s0 and the
|
||||
\&\s-1TODO\s0 files. http://imapsync.lamiral.info/
|
||||
.PP
|
||||
Upgrade to last imapsync release, maybe the bug
|
||||
|
@ -647,7 +678,7 @@ Upgrade to last Mail-IMAPClient Perl module.
|
|||
http://search.cpan.org/dist/Mail\-IMAPClient/
|
||||
maybe the bug is already fixed there.
|
||||
.PP
|
||||
Make a good title with word \*(L"imapsync\*(R" in it (my spam filters won't filter it),
|
||||
Make a good title with word \*(L"imapsync\*(R" in it (my spam filters won't filter it),
|
||||
Try to write an email title with more words than just \*(L"imapsync\*(R" or \*(L"problem\*(R",
|
||||
a good title is made of keywords summary, but not too long (one visible line).
|
||||
.PP
|
||||
|
@ -657,23 +688,23 @@ Help us to help you: in your report, please include:
|
|||
\& \- imapsync version.
|
||||
\&
|
||||
\& \- output near the first failures, a few lines before is good to get the context
|
||||
\& of the issue. First failures messages are often more significant than
|
||||
\& the last ones.
|
||||
\&
|
||||
\& \- if the issue is always related to the same messages, include the output
|
||||
\& with \-\-debug \-\-debugimap, near the failure point. For example,
|
||||
\& Isolate a buggy message or two in a folder \*(AqBUG\*(Aq and use
|
||||
\& of the issue. First failures messages are often more significant than
|
||||
\& the last ones.
|
||||
\&
|
||||
\& imapsync ... \-\-folder \*(AqBUG\*(Aq \-\-debug \-\-debugimap
|
||||
\& \- if the issue is always related to the same messages, include the output
|
||||
\& with \-\-debug \-\-debugimap, near the failure point. For example,
|
||||
\& Isolate a buggy message or two in a folder \*(AqBUG\*(Aq and use
|
||||
\&
|
||||
\& imapsync ... \-\-folder \*(AqBUG\*(Aq \-\-debug \-\-debugimap
|
||||
\&
|
||||
\& \- imap server softwares on both sides and their version number.
|
||||
\&
|
||||
\& \- imapsync with all the options you use, the full command line
|
||||
\& you use (except the passwords of course).
|
||||
\& you use (except the passwords of course).
|
||||
\&
|
||||
\& \- IMAPClient.pm version.
|
||||
\&
|
||||
\& \- the run context. Do you run imapsync.exe, a unix binary
|
||||
\& \- the run context. Do you run imapsync.exe, a unix binary
|
||||
\& or the perl script imapsync.
|
||||
\&
|
||||
\& \- operating system running imapsync.
|
||||
|
@ -687,7 +718,7 @@ Help us to help you: in your report, please include:
|
|||
Most of those values can be found as a copy/paste at the begining of the output,
|
||||
so a carbon copy of the output is a very easy and very good debug report for me.
|
||||
.PP
|
||||
One time in your life, read the paper
|
||||
One time in your life, read the paper
|
||||
\&\*(L"How To Ask Questions The Smart Way\*(R"
|
||||
http://www.catb.org/~esr/faqs/smart\-questions.html
|
||||
and then forget it.
|
||||
|
@ -696,7 +727,7 @@ and then forget it.
|
|||
See http://imapsync.lamiral.info/S/imapservers.shtml
|
||||
.SH "HUGE MIGRATION"
|
||||
.IX Header "HUGE MIGRATION"
|
||||
Pay special attention to options
|
||||
Pay special attention to options
|
||||
\&\-\-subscribed
|
||||
\&\-\-subscribe
|
||||
\&\-\-delete
|
||||
|
@ -725,7 +756,7 @@ user005_1;password005_1;user005_2;password005_2
|
|||
On Unix the shell program can be:
|
||||
.PP
|
||||
.Vb 4
|
||||
\& { while IFS=\*(Aq;\*(Aq read u1 p1 u2 p2; do
|
||||
\& { while IFS=\*(Aq;\*(Aq read u1 p1 u2 p2; do
|
||||
\& imapsync \-\-host1 imap.side1.org \-\-user1 "$u1" \-\-password1 "$p1" \e
|
||||
\& \-\-host2 imap.side2.org \-\-user2 "$u2" \-\-password2 "$p2" ...
|
||||
\& done ; } < file.txt
|
||||
|
@ -742,13 +773,13 @@ On Windows the batch program can be:
|
|||
The ... have to be replaced by nothing or any imapsync option.
|
||||
Welcome in shell programming !
|
||||
.PP
|
||||
You will find already written scripts at
|
||||
You will find already written scripts at
|
||||
http://imapsync.lamiral.info/examples/
|
||||
.SH "Hacking"
|
||||
.IX Header "Hacking"
|
||||
.SH "HACKING"
|
||||
.IX Header "HACKING"
|
||||
Feel free to hack imapsync as the \s-1NOLIMIT\s0 license permits it.
|
||||
.SH "Links"
|
||||
.IX Header "Links"
|
||||
.SH "LINKS"
|
||||
.IX Header "LINKS"
|
||||
Entries for imapsync:
|
||||
https://web.archive.org/web/20070202005121/http://www.imap.org/products/showall.php
|
||||
.SH "SIMILAR SOFTWARES"
|
||||
|
@ -773,4 +804,4 @@ https://web.archive.org/web/20070202005121/http://www.imap.org/products/showall.
|
|||
.PP
|
||||
Feedback (good or bad) will often be welcome.
|
||||
.PP
|
||||
\&\f(CW$Id:\fR imapsync,v 1.684 2016/03/17 08:35:03 gilles Exp gilles $
|
||||
\&\f(CW$Id:\fR imapsync,v 1.727 2016/08/19 10:30:36 gilles Exp gilles $
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue