Ищем удалённые ящики в одной или во всех базах
1 2 3 4 |
$mailboxes = Get-mailboxdatabase | Get-MailboxStatistics | where-object { $_.DisconnectDate -ne $null} $mailboxes = Get-mailboxdatabase | Get-MailboxStatistics | where-object { $_.DisconnectDate -ne $null -and $_.DisplayName -like "Иванов*"} $mailboxes = Get-MailboxStatistics -Database base | where-object { $_.DisconnectDate -ne $null} $mailboxes = Get-MailboxStatistics -Database base | where-object { $_.DisconnectDate -ne $null -and $_.DisplayName -like "Иванов Иван*"} |
Создаём временных пользователей (без однофамильцев)
1 |
foreach ($mailbox in $mailboxes){ New-ADUser -Path "ou=test,dc=domain,dc=com" -Name $mailbox.displayname.split(" ")[0] -enable $True -accountPassword (ConvertTo-SecureString -AsPlainText "!!qwerty2018" -Force)} |
Подключаем ящики к пользователям
1 |
foreach ($mailbox in $mailboxes) {Connect-Mailbox -Database $mailbox.database -Identity $mailbox -User $mailbox.displayname.split(" ")[0]} |
Сохраняем в PST
1 2 3 4 |
foreach ($mailbox in $mailboxes) { $box = Get-Mailbox -Identity $mailbox.displayname.split(" ")[0] New-MailboxExportRequest -Name $box.name -Mailbox $box -FilePath \\server\folder\$box.pst } |