В предыдущей статье я описал, как настроить синхронизацию каталогов между Lotus Domino и Exchange server 2007 с помощью утилиты «Microsoft Transporter Suite». Это первый этап в процессе миграции почтовых ящиков с одной почтовой системы на другую. Сегодня я опишу сам процесс миграции и постараюсь уделить внимание ошибкам, которые могут возникнуть при выполнении этой задачи.
После синхронизации каталогов у нас появились контакты пользователей Lotus Domino в Active Directory. В «Microsoft Transporter Suite» в левой части консоли "Migrate -> Directory -> Users" видим наши контакты. Теперь, чтобы приступить к переносу почтовых ящиков, необходимо создать в Active Directory учетные записи пользователей, которым будем переносить почту. Учетные записи можно создать двумя способами:
- быстрым - автоматически используя «Microsoft Transporter Suite»
- медленным - в ручную, заведя учетные записи пользователей, где объект User Name в Lotus Domino будет совпадать с объектом пользователя в Active Directory. Пример: в Lotus Domino видим "Ivanov Ivan". В Active Directory создаем объект "CN=Ivanov Ivan,OU=…" и т.д.
В «Microsoft Transporter Suite» ("Migrate -> Directory -> Users") в центральном окне можно увидеть два поля "Active Directory Account" и "Possible Active Directory Account". Первое будет содержать данные при автоматическом способе создания учетных записей, второе - при ручном. Также, второе поле может содержать данные, если совпадают имя в Lotus Domino и объект учетной записи в Active Directory. Ручной метод "не наш", поэтому дальнейшие действия относятся к автоматическому способу создания учетных записей.
Выбираем пользователей Lotus Domino и запускаем "Migrate selected user…". Запускается помощник "Domino User Migration". Далее выбираем контейнер в Active Directory, где будут создаваться учетные записи.
Я бы не рекомендовал создавать учетные записи пользователей в контейнере, в который импортировались контакты из Lotus Domino, чтобы избежать путаницы с объектами в Active Directory. Но это, исключительно, мое мнение, и оно никак не может повлиять на миграцию почтовых ящиков.
Также в этом окне выбираем пароль для учетной записи, который будет использоваться при первом входе в систему.

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

Хочу обратить внимание на следующее. Если выделить одного пользователя, нам предложат выбрать "Migrate with manual Active Directory lookup…". С помощью этого помощника мы можем связать пользователя с пользователем в Active Directory. Если у этого пользователя уже есть почтовый ящик, то на следующем шаге помощника почтовый ящик создавать не нужно.
После успешного завершения операции (у меня не получилось смоделировать ошибки на этом этапе) видим, что появились данные в поле "Active Directory Account". Заглянем в консоль Active Directory и Exchange server. Учетные записи созданы, почтовые ящики созданы. Теперь остается перенести содержимое почтовых ящиков.
Перед началом переноса содержимого почтовых ящиков потребуется выполнить две операции, иначе у нас не будет доступа к почтовому ящику на Exchange server и мы не сможем перенести электронные письма большого размера.
Запускаем "Командная консоль Exchange" и выполняем команду:
Add-ADPermission –Identity (Get-ExchangeServer).DistinguishedName –User (Get-User –Identity Администратор | Select-Object).Identity –ExtendedRight ms-Exch-EPI-Impersonation
Эта команда позволит Администратору получить доступ к созданному почтовому ящику пользователя от лица самого пользователя и сохранить в нем почтовые сообщения с сервера Lotus Domino.
Последним внесением изменений, если нужно, в конфигурацию почтовой системы будет изменение файла web.config в Exchange Web services. Открываем файл web.config, находим параметр "httpRuntime maxRequestLength". По умолчанию он равен 13280. Если размер почтовых сообщений превышает 10Мб, то необходимо внести соответствующие изменения в эту строку.
Теперь можно переносить данные. Переходим в консоль «Microsoft Transporter Suite», в левой части выбираем Mailboxes. Выбираем запись или записи пользователей, для которых создана учетная запись (поле "Active Directory Account") в Active Directory и создан почтовый ящик. Выбираем "Migrate Selected Mailboxes…". С помощью помощника выбираем хранилище почтовых ящиков и, по желанию, сервер клиентского доступа, если у Вас разделены роли на почтовых серверах Exchange. Здесь же можете задать временные рамки переносимых писем.

Запускаем процесс миграции. Ждем его завершения. После окончания процесса можем проверить содержимое почтовых ящиков с помощью OWA.
В качестве заключения.
В реальной жизни на этом этапе у меня при переносе более 400 почтовых ящиков Lotus Domino возникло несколько предупреждений вот такого вида:
Предупреждение:
Error occurred while injecting message item 'тема письма' for the user (xxxxxxxxxxxx@laboratory.net).
Response 'ErrorObjectTypeChanged:Операция изменила бы тип объекта, что запрещено.'.
Но за исключением этих "корявых" сообщений (их пришлось переносить "руками") все остальные письма у этих пользователей перенеслись.