Экспорт майлбоксов пользоватиелей в pst файлы
Добавлено: 19 ноя 2010, 12:13
Установленное ПО
Windows Server 2008 r2 standart
Exchange 2010 standart обновленный до SP1 (обновление проблем не вызвало поэтому рекомендую)
Поскольку ОС стандарт реализовать DAG не получилось, а локальной репликация баз осталась далеко в прошлом (Exchange 2007)
Встала задача хоть как то обезопасить почту пользователей, было принято решение сливать всю почту в pst файлы
командлет Export-Mailbox работать отказался наглухо
, поэтому пришлось обновляться до SP1
После обновления появилось несколько новых командлетов
Но давайте по порядку
для того чтобы иметь право сливать почту в pst мы должны дать себе привилегии "Mailbox Import Export", это встроеные привелегии но по умолчанию они ни кому не назначены
открываем EMS
назначаем права экспота импорта
добавляем участников (мемберов) в группу Exchange-Import-Export-Group (она должна появится в ou Microsoft Exchange Security Groups) это можно сделать через АД или ECP, но мы будем использовать EMS
Заодно добавляем группу аудита
Добавляем мембера
После этого (или до неважно) на файловом сервере создаем папку PST шарим ее как PST$ и даем права full access для
Exchange Servers, Exchange Trusted Subsystem ну и конечно Domain Admin и Exchange Admin
Теперь проверяем работоспособность
Должны получить Ответ что-то вроде этого
но сливать всех пользователей ручками неудобно поэтому написал скрипт
Вот собственно и вся премудрость, как этот скрипт поставить в шедулер думаю сами догадаетесь
Могу сказать что у меня все работает
Windows Server 2008 r2 standart
Exchange 2010 standart обновленный до SP1 (обновление проблем не вызвало поэтому рекомендую)
Поскольку ОС стандарт реализовать DAG не получилось, а локальной репликация баз осталась далеко в прошлом (Exchange 2007)
Встала задача хоть как то обезопасить почту пользователей, было принято решение сливать всю почту в pst файлы
командлет Export-Mailbox работать отказался наглухо
После обновления появилось несколько новых командлетов
Но давайте по порядку
для того чтобы иметь право сливать почту в pst мы должны дать себе привилегии "Mailbox Import Export", это встроеные привелегии но по умолчанию они ни кому не назначены
открываем EMS
назначаем права экспота импорта
Код: Выделить всё
New-ManagementRoleAssignment -Name "Exchange-Import-Export-Management" -Role "Mailbox Import Export" -SecurityGroup "Exchange-Import-Export-Group"Код: Выделить всё
Add-RoleGroupMember "Exchange-Import-Export-Group" -Member "AdminExchangeUsername"Код: Выделить всё
New-ManagementRoleAssignment -Name "Exchange-Audit-Management" -Role "Support Diagnostics" -SecurityGroup "Exchange-Audit-Group"Код: Выделить всё
Add-RoleGroupMember "Exchange-Audit-Management" -Member "AdminExchangeUsername"Exchange Servers, Exchange Trusted Subsystem ну и конечно Domain Admin и Exchange Admin
Теперь проверяем работоспособность
Код: Выделить всё
New-MailboxExportRequest -Mailbox useralias -FilePath \\fileserver\PST$\useralias.pstКод: Выделить всё
Name Mailbox Status
---- ------- ------
MailboxExport domain.tdl/Users/givenname Queued
Код: Выделить всё
Get-MailboxExportRequest -Status Completed | remove-mailboxexportrequest -Confirm:$false
#после исполнения регвесты сами не удаляются поэтому грохаем все выполненые регвесты
$filepath="\\fileserver\pst$\"
#Прописываем путь к шаре
$pst=".pst"
#Расширение файла
$date=Get-Date -UFormat %d-%m-%Y
#Берем Сегодняшнюю дату в формате дд-мм-гггг
Get-Mailbox | where { $_.ServerName -eq "MailboxServer"} | foreach{
#Получаем список майлбоксов
start-sleep 10
#Ждем 10 секунд
$alias=$_.Alias
#Бререм алиас мэйлбокса
$name = $_.SamAccountName
#берем логин пользователя
$path_fol="$filepath$name\"
#Задаем путь куда класть .pst чтобы все лежало по своим папкам
if (!(test-path $path_fol)){mkdir $path_fol}
#Проверям есть ли такая папка на сервере если нет то создаем
dir $path_fol | where {$_.lastwritetime -le (get-date).adddays(-7)} | del -force
#Удаляем все файлы старше 7 дней
New-MailboxExportRequest -Mailbox $name -FilePath $path_fol$name-$date$pst
#Экспортируем майлбокс пользователя
}
Могу сказать что у меня все работает