Just a little proofreading.

This commit is contained in:
0xdaedalus 2025-09-09 06:07:01 +00:00
parent 023535075c
commit cd17a623e5
28 changed files with 69 additions and 69 deletions

View File

@ -79,7 +79,7 @@ Q. For some messages, the imapsync log says
R0. Append errors are host2 problems, append is the imap term to copy
a message to the destination account.
A problem is that the assosiated "socket closed ..." error message happens
A problem is that the associated "socket closed ..." error message happens
for several different issues. So I list here several potential issues
and their solutions if they exist.
R1 deals about too long lines in messages on Windows.

View File

@ -20,7 +20,7 @@ server and its configuration.
You have to follow this road:
* Determine what is the imap software server
* Find out whether it supports an admin account or not
* If no, leave this reading, take an handkerchief and cry
* If no, leave this reading, take a handkerchief and cry
* If yes, search how the imap software server supports
an admin account (see below)
* Figure out whether an admin account is actually configured or not,

View File

@ -81,7 +81,7 @@ R. Use --subfolder1
--subfolder1 str : Syncs the host1 folders hierarchy under folder str
to the root hierarchy of host2.
It's the couterpart of a sync done by --subfolder2
It's the counterpart of a sync done by --subfolder2
when doing it in the reverse order.
Backup/Restore scenario:
Use --subfolder2 str for a backup to the folder str

View File

@ -63,7 +63,7 @@ Here is some advice to get you to pass this difficult stage of authentication:
https://imapsync.lamiral.info/FAQ.d/FAQ.Passwords_on_Unix.txt
https://imapsync.lamiral.info/FAQ.d/FAQ.Passwords_on_Mac.txt
The quickest trick may be to change the password temporally
The quickest trick may be to change the password temporarily
with easy characters like the classical alphabet, one long
string still ensures strong security.

View File

@ -33,7 +33,7 @@ genuine IMAP commands used and their responses. The problem with
generates a very BIG logfile.
R2. If it is not ok with imapsync, the sync finally fails, then
consider spliting the whole sync into smaller chunks using
consider splitting the whole sync into smaller chunks using
the option --search
For example, select messages only for a given year:

View File

@ -28,7 +28,7 @@ CPU: Intel i5-2300 with 4 cores
RAM: 16 GB
NET: 100 Mbps symetrical, 12.5 MBytes/s symetrical,
NET: 100 Mbps symmetrical, 12.5 MBytes/s symmetrical,
so 25 MBytes/s max for a global imapsync rate.
Disks: I don't know.
@ -53,7 +53,7 @@ the performances are ok.
The RAM can be an issue. On average, an imapsync run takes 250 MB. So
4 imapsync processes per GB is the limit before swapping to disk,
which is a known phenomenum telling when memory becomes the bottleneck.
which is a known phenomenon telling when memory becomes the bottleneck.
16 GB allows 64 imapsync processes.
On the 16GB, so far, the maximum memory usage taken by imapsync processes was
@ -71,11 +71,11 @@ network link is twice this value, one time when getting the message
from host1, rx, and one time sending the message to host2, tx.
On average, an imapsync runs at 3 Mbps both ways, rx and tx, so 6 Mbps
in total. So a 100 Mbps symetric link allows 33 imapsync processes
in total. So a 100 Mbps symmetric link allows 33 imapsync processes
before the link becomes the bottleneck.
The best minutes observed so far are a global 187 Mpbs rate (~23 MiB/s)
on a 100 Mbps symetrical link done by 28 imapsync processes in parallel,
on a 100 Mbps symmetrical link done by 28 imapsync processes in parallel,
6.7 Mbps per process at that minute. But the best minutes observed for a
single imapsync process is at 103 Mbps (~13 MiB/s), the rx/tx link limit.
@ -92,8 +92,8 @@ no measure is no knowledge, just guesses.
Let's consider we have a bunch of different hosts able to run imapsync
processes. How should we distribute imapsync jobs among them?
A simple rule is "do not add more load to a host when one of the ressources
has reached its maximal. The ressources are memory, bandwidth, cpu, disk.
A simple rule is "do not add more load to a host when one of the resources
has reached its maximal. The resources are memory, bandwidth, cpu, disk.
I ignore the disk part for now.
maximum number of imapsync processes for a host

View File

@ -63,11 +63,11 @@ Q. I have a mailbox that "dovecot backup" gives errors on that
I can't get rid of: "UID inserted in the middle of mailbox".
What can I do?
Q. Solution, run:
R. Solution, run:
doveadm -v deduplicate -m -u martin mailbox A/Posted
it will get rid of the duplicates (I can also be run without "-m")
it will get rid of the duplicates (it can also be run without "-m")
and this also allows "dovecot backup" to work.
Thanks to Martin Ward for this input!

View File

@ -113,7 +113,7 @@ identify messages.
If you end with many messages skipped then it's very
good and now you can safely resync the mailbox
and get rid of the dupplicates messages on host2 with:
and get rid of the duplicate messages on host2 with:
imapsync ... --useheader "Message-Id" --delete2duplicates

View File

@ -80,7 +80,7 @@ R. Yes. But IMAP access to an Exchange account is not always
======================================================================
Q. How to sync from XXX to Exchange 2010/2013/2016/2019
R0. IMAP is not enable by default on Exchange, see how to enable it:
R0. IMAP is not enabled by default on Exchange, see how to enable it:
https://docs.microsoft.com/en-us/exchange/enable-imap4-in-exchange-2013-exchange-2013-help
Also read
http://clintboessen.blogspot.com/2018/03/binding-certificate-breaks-imap-or-pop.html
@ -265,7 +265,7 @@ Q. Exchange throttles the sync and says:
"Request is throttled. Suggested Backoff Time: 299961 milliseconds".
What can I do with that?
R0. Exchange have throttle mechanisms to limit any huge
R0. Exchange has throttle mechanisms to limit any huge
usage. Sometimes imapsync transfers are too stressful for servers.
The message
"Request is throttled. Suggested Backoff Time: 299961 milliseconds"
@ -355,7 +355,7 @@ Selecting seen message can be done with:
imapsync ... --search1 "SEEN" --disarmreadreceipts
Of course a second run has to be run without the --disarmreadreceipts
Of course a second run has to be done without the --disarmreadreceipts
for unseen messages:
imapsync ... --search1 "UNSEEN"
@ -427,7 +427,7 @@ R. This error message comes from Exchange IMAP server when it
Have also in mind that Exchange closes the connection after 10 errors
encountered so you might also see "BYE Connection closed" errors from
Exchange, which means Exchange leaves the session and say goodbye,
Exchange, which means Exchange leaves the session and says goodbye,
come back later. Rerun a sync then.
On Linux, there is a good Python script in the tarball that can
@ -613,7 +613,7 @@ R. Some servers take care about character case in folder names,
imapsync ... --regextrans2 "s/^trash$/Trash/"
If there are two folders Trash and trash on host1 then both
will be merge into only one Trash folder on host2.
will be merged into only one Trash folder on host2.
In case option --delete2 is used the regextans2 above becomes
mandatory, otherwise imapsync will sync messages from the
first Trash and then delete them when syncing trash.

View File

@ -14,7 +14,7 @@ Questions answered in this FAQ are:
Q. Do I need to create IMAP mailboxes at the destination platform?
Q. Am I forced to publish the IMAP service on the Internet since the two
environment are not in the same location or same LAN?
environments are not in the same location or same LAN?
Q. What are the most important differences between the Unix shell syntax
and the Windows batch syntax.
@ -31,11 +31,11 @@ Q. How can I have commercial support?
Q. How can I have gratis support?
Q. Where I can find old imapsync releases?
Q. Where can I find old imapsync releases?
Q. Where I can find free open and gratis imapsync releases?
Q. Where can I find free open and gratis imapsync releases?
Q. Is is legal to find imapsync gratis (or not) elsewhere?
Q. Is it legal to find imapsync gratis (or not) elsewhere?
Q. How "Facts and figures" are known
https://imapsync.lamiral.info/#NUMBERS
@ -113,7 +113,7 @@ R. Yes!
=======================================================================
Q. Am I forced to publish the IMAP service on the Internet since the two
environment are not in the same location or same LAN?
environments are not in the same location or same LAN?
R. The host where you run imapsync has to contact both servers via imap.
You are not obliged to publish the imap service on the Internet if
@ -220,16 +220,16 @@ I help all users as long as I have time to help them all,
users who bought the support get my help first.
=======================================================================
Q. Where I can find old imapsync releases?
Q. Where can I find old imapsync releases?
R. Search the internet or ask the author.
=======================================================================
Q. Where I can find free open and gratis imapsync releases?
Q. Where can I find free open and gratis imapsync releases?
R. Search the internet or ask the author.
Q. Is is legal to find imapsync gratis (or not) elsewhere?
Q. Is it legal to find imapsync gratis (or not) elsewhere?
R. Yes, the license permits it
https://imapsync.lamiral.info/NOLIMIT
@ -287,7 +287,7 @@ R. Add also --nofoldersizes since the default behavior is to compute
the transfer will end (ETA).
R. Add also --noexpungeaftereach if you use --delete1.
But be warn that an interrupted transfer can lose messages
But be warned that an interrupted transfer can lose messages
on host2 in a second run if you use a (silly) combination like:
imapsync ... --delete1 --noexpunge1 --noexpungeaftereach --expunge2

View File

@ -20,7 +20,7 @@ Q. How to migrate to Dovecot with an admin/MasterUser account?
=======================================================================
Q. How to migrate to James with an admin/MasterUser account?
R. James supports impersonation and is setup via the administratoId key
R. James supports impersonation and is set up via the administratoId key
field stored in <install>/conf/usersrepository.conf
There are multiple user repository definitions, each using

View File

@ -11,14 +11,14 @@ https://imapsync.lamiral.info/FAQ.d/FAQ.Logfile.txt
Questions answered in this FAQ are:
Q. I have these error "could not be fetched", like thos one:
Q. I have these errors "could not be fetched", like this one:
Err 1/1: - msg INBOX/17219 {0} S[36592] F[] I[16-Jul-2021 12:04:15 +0000] could not be fetched
What can I do about it?
Now the questions again with their answers.
======================================================================
Q. I have these error "could not be fetched", like thos one:
Q. I have these errors "could not be fetched", like this one:
Err 1/1: - msg INBOX/17219 {0} S[36592] F[] I[16-Jul-2021 12:04:15 +0000] could not be fetched
What can I do about it?

View File

@ -171,7 +171,7 @@ Q. I have to migrate 500k users using 400 TB of disk space.
R. A good solution to this issue is two words: parallelism and measurements.
Since all mailboxes are functionally independent, they can be processed
independently, here comes the parallelism, ie, lunching several imapsync
independently, here comes the parallelism, ie, launching several imapsync
processes in parallel.
Meanwhile, mailboxes usually belong to the same server, and the syncs

View File

@ -107,7 +107,7 @@ to a simpler solution which is to allow bigger messages on the
destination account.
As time goes on, disk space is cheaper and cheaper. Don't make the
new user account, the destination account, worst than his previous
new user account, the destination account, worse than their previous
account: buy disks.
Monitor and rule your hardware resources, serve your users,

View File

@ -162,7 +162,7 @@ R7. Triple check the hostname then. Try all of these:
Q. Can imapsync work for users that are administrators for
an Office 365 domain? (quick answer: no)
R. I doesn't seem possible to use imap for administrators, so imapsync
R. It doesn't seem possible to use imap for administrators, so imapsync
won't be able to work for an administrator's mailbox.
See:
https://github.com/imapsync/imapsync/issues/310#issuecomment-1002396218
@ -223,7 +223,7 @@ If IMAP cannot be enabled or if it doesn't work well, you can try DavMail
(http://davmail.sourceforge.net/) which acts as an IMAP gateway
through Outlook Web Access.
R. Here is a command-line resume that solves most encountered issues when
R. Here is a command-line summary that solves most encountered issues when
migrating to Office365.
imapsync ... --office2

View File

@ -10,7 +10,7 @@ https://imapsync.lamiral.info/FAQ.d/FAQ.Old_Style_Web_Design.txt
=======================================================================
=======================================================================
Q. Why the imapsync website looks so old fashion?
Q. Why does the imapsync website look so old fashioned?
R. Once in a while I receive messages from people complaining about
the website style, not that much about the content by the way,
@ -28,7 +28,7 @@ Here are several reasons it stays like that for now:
* I like static web.
Although you could argue that I do use some dynamic things, like SSI.
That's true, I use Server Side Include, aka SSI, denoted by the ".shtml"
extention of some files, instead of the classical ".html" extention.
extension of some files, instead of the classical ".html" extension.
It's because I like dynamic web when the dynamic brings something that
can't be done easily with static files.

View File

@ -61,7 +61,7 @@ Date of this report: 24 December 2021. Happy Christmas!
The online imapsync service /X started 9 January 2017,
5 years ago (1810 days of service).
On average, /X has 51 users per day, each user lunches on average
On average, /X has 51 users per day, each user launches on average
6 account migrations, from just 1 launch to many (hundreds).
The total volume /X transferred so far is around 240 TiB coming
@ -270,7 +270,7 @@ A. The message "[ALERT] LOGIN DENIED -- COUNTRY IS BLACKLISTED" comes directly
from the IMAP server at 10.1.161.155
It looks like that the 10.1.161.155 imap server filters incoming
connexions based on their IPS. In that case, here are the current
connections based on their IPS. In that case, here are the current
IPs of the imapsync online service (September 2022):
ks5.lamiral.info has address 91.121.221.224

View File

@ -57,7 +57,7 @@ synchronization, but don't count on that...)
R2. Context and condition: you know which users use POP.
If the pop mailboxes are known then all the INBOX messages can be moved
in an subfolder called INBOX_backup for example. Ti help you do this,
in an subfolder called INBOX_backup for example. To help you do this,
the tool pop2imap transfers messages from POP to IMAP, without duplicates,
without deleting the messages transferred, by default, and can put them
in any subfolder you want to. It can also delete them and, that way,
@ -66,7 +66,7 @@ We're here to do a good job with what we have, do we?
In case of Dovecot for example, the magic can be there since already
fetched messages via POP are seen as \Seen in IMAP but the new messages are
seen as new messages, thanks to the Dovecot developper Timo's cleverness!.
seen as new messages, thanks to the Dovecot developer Timo's cleverness!
So it is possible to sync back only the new messages to INBOX,
with "imapsync ... --search UNSEEN ...", and then POP users won't see the old
messages come back but they will see the new messages and fetch them via POP.
@ -77,8 +77,8 @@ R3. Context and condition: you know nothing
Do R2 without the sync back of UNSEEN messages. It can't hurt to have a backup
of INBOX in a subfolder for IMAP or POP users.
R4. Here are some points, an analyse that made me purpose the not
to bad but not very good R2 answer.
R4. Here are some points, an analysis that made me propose the not
too bad but not very good R2 answer.
There was a discussion about this issue on the imapsync mailing-list:
http://linux-france.tk/prj/imapsync_list/msg02622.html

View File

@ -26,7 +26,7 @@ R.
* Stateless
* Rsync in mind
* Reliable
* Robuste
* Robust
* The user is not an expert, help him with:
* Good behavior by default.
* No harm by default.

View File

@ -10,7 +10,7 @@ https://imapsync.lamiral.info/FAQ.d/FAQ.Release_Checklist.txt
=======================================================================
Checklist before release a new release:
Checklist before making a new release:
- Make "imapsync --tests" pass on Linux
- Make "imapsync --tests" pass on Mac

View File

@ -42,7 +42,7 @@ Those documents are also available at https://imapsync.lamiral.info/INSTALL.d/
- Docker
- Online UI like /X
If you are not familiar with any of these systems but you have to chose
If you are not familiar with any of these systems but you have to choose
one to install imapsync, imapsync online, or the latest imapsync then
Centos 7 (not 8 for now) is the easiest system to consider (June 2020).

View File

@ -45,7 +45,7 @@ To upgrade to CentOS stream:
Taken from
https://stackoverflow.com/questions/70926799/centos-through-vm-no-urls-in-mirrorlist
and tested successfuly on one of my hosts, an ex-Centos8/CentOS-stream now.
and tested successfully on one of my hosts, an ex-Centos8/CentOS-stream now.
=======================================================================
AlmaLinux and Centos 8 and latest imapsync
@ -219,7 +219,7 @@ Then:
perl-Test-Deep \
perl-File-Tail \
perl-Unicode-String \
install perl-Proc-ProcessTable
perl-Proc-ProcessTable
wget https://imapsync.lamiral.info/imapsync

View File

@ -6,7 +6,7 @@ https://imapsync.lamiral.info/INSTALL.d/
https://imapsync.lamiral.info/INSTALL.d/INSTALL.Darwin.txt
Usual users should follow the A) section only, with the exeption
Usual users should follow the A) section only, with the exception
of reading B) before if you use a Catalina system.
A) Installing imapsync binary on Darwin / Mac OS X
@ -25,7 +25,7 @@ called "imapsync_bin_Darwin" (without the quotes),
available in the compressed tarball called imapsync-2.200.tgz
where 2.200 is the imapsync version number.
In case you haven't buy it yet or forgot where the download link is,
In case you haven't bought it yet or forgot where the download link is,
check https://imapsync.lamiral.info/dist/
Download the tarball imapsync-2.200.tgz, not the binary imapsync_bin_Darwin
@ -33,12 +33,12 @@ because the binary is also in the tarball and there are other useful files
in the tarball. The binary present in /dist/ is just there for a fast upgrade
when you need one.
I suppose this tarball imapsync-2.200.tgz is downloaded under your $HOME directory,
let say /Users/gilles/, but you can put it anywhere. In real, your $HOME directory
is not /Users/gilles/, it maybe /Users/john/ or /Users/zoey/ where John or Zoey
is you login name.
Suppose this tarball imapsync-2.200.tgz is downloaded under your $HOME directory,
lets say /Users/gilles/, but you can put it anywhere. (But obviously your $HOME
directory is not /Users/gilles/, it maybe /Users/john/ or /Users/zoey/ where John
or Zoey is your login name.)
Open a terminal: /Applications/Utilities/Terminal double-click on Terminal.
Open a terminal: /Applications/Utilities/Terminal, double-click on Terminal.
Untar the tarball:
@ -118,7 +118,7 @@ the script examples/sync_loop_darwin.sh is also ready to use.
B) Installing imapsync on Catalina
=======================================================================
Caveat Catalina: The binary imapsync_bin_Darwin is detected as a malware
Caveat Catalina: The binary imapsync_bin_Darwin is detected as malware
or similar on the latest Mac OS X named Catalina.
It's Catalina new security policy. Imapsync is not a malware or similar.
All other Mac OS X releases are ok.
@ -127,7 +127,7 @@ In order to pass away this detection, follow these steps:
Run imapsync_bin_Darwin
After this first launch, the security asks to authorize the unknown
developer program. Setup the root of the imapsync_bin_Darwin file
developer program. Set up the root of the imapsync_bin_Darwin file
and then run it again or any of the .sh files, it should run ok
without any notice any more.
@ -182,7 +182,7 @@ First let us install cpanminus locally in ~/perl5
Then take this install into account in the current environment
perl -I ~/perl5/lib/perl5 -Mlocal::lib # just to see the variables
eval `perl -I ~/perl5/lib/perl5 -Mlocal::lib` # doing the variables assigments
eval `perl -I ~/perl5/lib/perl5 -Mlocal::lib` # doing the variables assignments
If you want to have always this setting in your environment then run the commands

View File

@ -6,7 +6,7 @@ https://imapsync.lamiral.info/INSTALL.d/
https://imapsync.lamiral.info/INSTALL.d/INSTALL.Debian.txt
There is four install sections in this document,
There are four install sections in this document,
1) one for Debian 9 Stretch, Debian 10 Buster, Debian 11 Bullseye, Debian 12 Bookworm
2) one for all the Debian, called "After installing the dependencies".
3) one for Debian 8 Jessie (obsolete)
@ -135,7 +135,7 @@ Perform a live test showing imapsync job:
./imapsync --testslive
Now install imapsync on the system (need root priviledges again):
Now install imapsync on the system (need root privileges again):
cp imapsync /usr/bin/
@ -159,7 +159,7 @@ Feedback is welcome!
How to install imapsync dependencies on a Debian system?
You need root priviledge.
You need root privilege.
The first command installs standard Debian packages:
apt install \
@ -232,7 +232,7 @@ go to the section "2) After installing the dependencies" above.
How to install imapsync dependencies on a Debian system?
You need root priviledge to run the commands.
You need root privilege to run the commands.
The first command installs standard Debian packages:

View File

@ -21,7 +21,7 @@ Nearly verbatim copy from https://imapsync.lamiral.info/INSTALL.d/Dockerfile
#
# where this Dockerfile is in the current directory
#
# This Dockerfile build an image with two imapsync
# This Dockerfile builds an image with two imapsync
# 1) One comes from https://imapsync.lamiral.info/imapsync
# and goes to /usr/bin/imapsync in the Docker image
# It is used with the command:
@ -53,7 +53,7 @@ LABEL maintainer="Gilles LAMIRAL <gilles@lamiral.info>" \
documentation="https://imapsync.lamiral.info/#doc"
# I put a copy of the Dockerfile in the image itself
# It can help maintenance, isn't it?
# It can help maintenance, can't it?
# Also put optionally my local and usually more recent imapsync on /, for testing purpose
COPY Dockerfile imapsyn[c] prerequisites_imapsyn[c] /

View File

@ -9,7 +9,7 @@ https://imapsync.lamiral.info/INSTALL.d/INSTALL.FreeBSD.txt
Installing imapsync on FreeBSD
=======================================================================
Thanks to Kurt Jaeger pi@FreeBSD.org a imapsync package is available in FreeBSD
Thanks to Kurt Jaeger pi@FreeBSD.org, an imapsync package is available in FreeBSD
http://portsmon.freebsd.org/portoverview.py?category=mail&portname=imapsync
So, to install imapsync you just have to type one command in a terminal:
@ -33,7 +33,7 @@ p5-CGI
p5-Encode-IMAPUTF7
Call to FreeBSD developer: It's also the new Perl modules dependencies to add
Call to FreeBSD developer: These are also the new Perl module dependencies to add
for imapsync 2.206 and next ones:
Proc::ProcessTable

View File

@ -137,7 +137,7 @@ I use "Timeout 3600", 3600 seconds, an hour. I chose this huge timeout
value because imapsync can spend a long time without talking while
getting the headers of huge folders of 100k messages. If you intend
to offer this service for huge mailboxes or for a long time, I
strongly recommand you to set this "Timeout 3600" in the Apache
strongly recommend you to set this "Timeout 3600" in the Apache
configuration right now because you will sure end up with this timeout
issue in a few months. You can search for timeouts in the Apache error
log to see if you have timeout issues.
@ -273,7 +273,7 @@ Check
or the safer
https://yourhost/X/imapsync_form_extra.html
Let's encrypt your site because crendentials should never travel in
Let's encrypt your site because credentials should never travel in
clear form. Go to https://certbot.eff.org/instructions
See the Troubleshooting section to fix the systemd Apache

View File

@ -83,7 +83,7 @@ A live test showing imapsync job:
./imapsync --testslive
Now the install command (need root priviledges again):
Now the install command (need root privileges again):
cp imapsync /usr/bin/