Копирование всех Папок с Других IMAP Серверов

Вопросы миграции на CommuniGate Pro с других почтовых серверов.
Administrator
Administrator
Сообщения: 13
Зарегистрирован: 10:0, 19 июн 2015

Копирование всех Папок с Других IMAP Серверов

Непрочитанное сообщение Administrator » 17:0, 05 авг 2015

При миграции с других почтовых серверов, возможно, вам будет необходимо скопировать все сообщения из всех папок пользователя со старого сервера на новый сервер.

В состав CommuniGate Pro входит программа MoveIMAPMail. Эта программа соединится со старым и новым IMAP серверами, зарегистрируется на обоих, получит список почтовых ящиков пользователя на старом сервере, создаст на новом сервере все недостающие почтовые ящики и скопирует все сообщения из всех почтовых ящиков пользователя со старого сервера на новый. Программа так же скопирует список "подписанных почтовых ящиков" и списки прав доступа на почтовые ящики.

Код: Выделить всё

    MoveIMAPMail [flags] OldServer oldName oldPassword NewServer newName newPassword


oldServer

IP адрес старого IMAP4 сервера (источника); если этот IMAP сервер работает через нестандартный порт TCP, то вы должны указать через двоеточие номер этого порта: 192.0.2.3:144 - IMAP сервер по адресу 192.0.2.3, порт 144.
oldName, oldPassword
Строки, которые будут использоваться при аутентификации на IMAP сервере - источнике.
newServer
IP адрес нового IMAP4 сервера (приёмник); если этот IMAP сервер работает по нестандартному порту TCP, вы должны также указать номер этого порта через двоеточие: 192.0.2.5:145 - IMAP сервер по адресу 192.0.2.5, порт 145.
newName, newPassword
Строки, которые будут использоваться при аутентификации на IMAP сервере - приёмнике.

Flags или отсутствуют, или один или несколько необязательных параметров:

--verbose
Необязательный параметр. Если указан, то на стандартное устройство вывода будет выводиться информация о ходе выполнения.
--list search
Необязательный параметр. Если указан, то будет использоваться строка search для поиска всех папок пользователя на сервере-источнике. Некоторые IMAP сервера выдают всю директорию пользователя или даже системную директорию, если используется строка поиска по умолчанию "*". Уточните в документации на ваш старый IMAP сервер, какую строку поиска необходимо использовать.
--source prefix
Необязательный параметр. Если указан, будет использоваться строка prefix как первый параметр команды "LIST" (смотрите выше). Если имена папок, которые выдаёт команда LIST, начинаются с указанного префикса, то этот префикс будет удалён из имени папки, создаваемого на сервере-приёмнике.
Это даёт вам возможность копировать поддерево папок пользователя старого сервера в верхний уровень дерева папок пользователя нового сервера. Если у пользователя старого сервера есть папки с именами abc/mail1 и abc/mail2, то при использовании параметра --source abc/ со старого сервера-источника будут скопированы только две этих папки; на новом сервере-приёмнике они будут созданы как "mail1" и "mail2" соответственно.
Если сервер-источник это CommuniGate Pro, то этот параметр можно использовать для того, что бы скопировать все папки у любого пользователя. Используйте имя и пароль пользователя postmaster, дополнительно указав: --source '~username'/
Смотрите также ниже опцию --target .
--target prefix
Необязательный параметр. Если указан, то строка prefix будет добавляться ко всем именам почтовых ящиков на новом сервере. Например, если сервер-приёмник - это CommuniGate Pro, то вы можете указать в параметрах пользователя postmaster (вместо пользователя username), и, используя параметр
--target '~username/'
сделать копию папок пользователя username. Это может быть полезно, если вы не знаете пароля пользователя username.
--skipMailbox mailboxName
Необязательный параметр. Если указан, то папка mailboxName не будет копироваться.
Этот параметр можно указывать несколько раз, исключив из копирования несколько папок.
--notimeout
Необязательный параметр. Если указан, то программа увеличит тайм-аут на работу с IMAP сервером с 20 секунд до 1 часа. Укажите эту опцию при копировании почты с медленных серверов.
--delete
Необязательный параметр. Если указан, программа удалит собранные сообщения пользователя со старого сервера-источника.
--nosubscription
Необязательный параметр. Если указан, программа не копирует список подписки на папки на сервер-приёмник.
--subscribed
Необязательный параметр. Если указан, программа копирует только те папки, которые содержатся в списке подписки на папки на сервере-источнике.
--fetchRFC822
Необязательный параметр. Если указан, программа использует атрибут RFC822.PEEK вместо атрибута BODY.PEEK[] когда она посылает команду IMAP FETCH на сервер-источник. Используйте этот атрибут когда сервер-источник слишком старый и не поддерживает атрибут BODY.PEEK[] FETCH.
--byOne
Необязательный параметр. Если указан, программа забирает сообщения из папок на IMAP сервере-источнике одно за одним; в противном случае она будет забирать все сообщения сразу. Используйте этот параметр, если серверу-источнику не удаётся собрать все сообщения из папки по одной команде FETCH.
--noACL
Необязательный параметр.Если указан, программа не копирует списки прав доступа (ACL) пользователю на сервер-приёмник.
--copyMailboxClass
Необязательный параметр. Указывается если оба сервера, и источник, и приёмник, являются серверами CommuniGate Pro. Если указан, то программа копирует так же классы папок ("Календарь", "Записная книга" и т.д.)
--fixLongLines number
Необязательный параметр. Может быть указан, если на сервере-источнике имеются сообщения с очень длинными текстовыми строками. Такие строки будут разделены на несколько так, что бы все строки в сообщениях на сервере-приёмнике имели не более чем number байт.
--proxyAuth username
Необязательный параметр. Если указан, то на IMAP сервере-источнике используется команда 'PROXYAUTH username'. Если сервер-источник поддерживает IMAP команду PROXYAUTH, то используйте эту команду для входа на сервер-источник в качестве администратора и получения почты пользователя, пароля которого вы не знаете.
--renameMailbox oldMailboxName newMailboxName
Необязательный параметр. Если указан, то имя папки oldMailboxName у пользователя-источника автоматически преобразовывается в имя newMailboxName у пользователя-приёмника.
Этот параметр можно указывать более чем один раз для переименования нескольких папок.
--renameMailboxList file.txt
Необязательный параметр. Если указан, то из указанного текстового файл будет прочитан список пар имён для переименования папок. Каждая строка в файле должна содержать пару из старого и нового имени папки, разделённых символом табуляции. Если у пользователя-источника встречается папка, имя которой имеется в файле как "старое" имя, то сообщения папки копируются в папку пользователя-приёмника, задаваемую "новым" именем из той же строки файла.
--filter [before | after ] "dd-mmm-yyyy[ hh:mm:ss]"
Необязательный параметр. Если он задан, то программа копирует только те сообщения, INTERNALDATE которых до или после указанной даты. Часть hh:mm:ss является необязательной, если она не задана, то предполагается, что задано 00:00:00.

Пример:

Код: Выделить всё

MoveIMAPMail --list "Mail/*" 192.0.0.4 john "jps#dhj" 192.0.1.5 johnNew dummy


Обратите внимание: если имена папок пользователя на сервере-источнике оканчиваются на .mbox или .mdir, то имена папок пользователя на сервере-приёмнике будут оканчиваться на -mbox или -mdir соответственно.

Обратите внимание: если имена папок пользователя на сервере-источнике начинаются на . или ~, то имена папок пользователя на сервере-приёмнике будут начинаться на _.
Пробелы в начале и в конце имени, а также символы \ and # заменяются на _ при формировании имён папок на сервере-приёмнике.

Вернуться в «Миграция на CommuniGate Pro»

Кто сейчас на конференции

Сейчас этот форум просматривают: нет зарегистрированных пользователей и 1 гость