Недавно пришлось столкнуться с задачей удаления Exchange 2007 в одной организации. Все настроено достаточно просто – один домен, в нем один сервер Exchange 2007. Задача – максимально корректно удалить все упоминания о сервере в домене. Вроде бы ничего сложного, но в процессе удаления возникла пара моментов, которые я хотел бы здесь осветить.
Информация по удалению, разумеется, есть и на сайте Microsoft
Согласно ей, помимо всего прочего, перед удалением Exchange требуется удалить все его базы (в самом простом случае это база почтовых ящиков и база public folders). Сначала необходимо удалять именно вторую базу, ибо если удалить базу почтовых ящиков, то подключиться к базе общих папок не выйдет.
На этапе удаления базы общих папок и возникает первый момент, о котором я хотел бы рассказать. Сама процедура удаления описана в http://technet.microsoft.com/en-us/library/cc164367.aspx и http://technet.microsoft.com/en-us/library/bb201664.aspx. Все бы ничего, но удаление не проходит, выдается сообщение про то, что в базе есть реплики для папок и сначала необходимо удалить их.
В интернете полно советов использовать в данном случае утилиту ADSIEdit, но лично у меня данный вариант не вызывает симпатии, по моему мнению удаление должно по возможности проходить штатными средствами. В данном случае речь идет, разумеется, о PowerShell.
В итоге после долгих поисков удалось найти нормальное, на мой взгляд, решение проблемы.
Вот команды, которые позволяют удалить public folders database:
Get-PublicFolder -Server <server_name> “\” -Recurse -ResultSize:Unlimited | Remove-PublicFolder -Server <server_name> -Recurse -ErrorAction:SilentlyContinue
Get-PublicFolder -Server <server_name> “\Non_Ipm_Subtree” -Recurse -ResultSize:Unlimited | Remove-PublicFolder -Server <server_name> -Recurse -ErrorAction:SilentlyContinue
Get-PublicFolderDatabase -Server <server_name> | Remove-PublicFolderDatabase -RemoveLastAllowed
После этого выполняем все остальные шаги, указанные в инструкции по удалению и запускаем процесс удаления Exchange с сервера через «установку и удаление программ».
Если все было сделано правильно, то предварительная проверка пройдет нормально и можно будет приступить к удалению ПО.
Тут тоже есть одна тонкость. На самом последнем шаге удаления (удаление файлов exchange) процесс застывает в ожидании. Не стоит давать дополнительное время в надежде, что все сейчас заработает, толку не будет. Данная проблема тоже известна и описана в KnowledgeBase. Решение простое – удаляем через task manager процесс powershell.exe и удаление Exchange успешно завершается
Возможно, кому-нибудь будет полезна данная информация
Александр Бурцев aka Alexx_B