При видаленні поштової скриньки Exchange або видалення облікового запису користувача в Active Directory, поштовий ящик відразу не видаляється, продовжуючи зберігатися в поштовій базі певний час (за замовчуванням 30 днів), протягом якого адміністратор може відновити дані з ящика або перепризначити його іншому користувачеві. У цій статті ми поговоримо про типи віддалених ящиків, способах управління і відновлення таких ящиків в Exchange.
зміст:
- Що відбувається з ящиком Exchange після його видалення
- Очищення баз Exchange від віддалених ящиків
- Підключення віддаленого ящика користувачеві
- Якщо видаляється ящика в ящик іншого користувача
Що відбувається з ящиком Exchange після його видалення
Поштова скринька Exchange складається з двох частин: облікового запису користувача в Active Directory (в атрибутах якої зберігається конфігураційні дані ящика) і самого ящика в поштовій базі Exchange. Віддалений ящик Exchange (напевно, більш правильно говорити відключений) являє собою ящик, що зберігається в базі, але не пов'язаний ні з одним обліковим записом в AD. Є два типи віддалених скриньок Exchange:
- Disabled- ящики, відключені за допомогою командлетів Disable-Mailbox або Remove-Mailbox (перший командлет відключає ящик від учеткі, другий - ще й видаляє обліковий запис в AD)
- Soft Deleted- копії ящиків, які зберігаються в сховищі після переміщення ящика в іншу поштову базу. Тим самим забезпечується додатковий захист даних від проблем, який можуть виникнути в процесі або після перенесення ящика в іншу базу.
Обидва типи віддалених ящиків зберігаються в базі Exchange до закінчення терміну зберігання, заданого адміністратором. Час, після якого ящик видаляється, вказується в налаштуваннях кожної бази Exchange на вкладці Limits -> Keep deleted mailboxes for days (Скріншоти для Exchange 2013 і Exchange 2010).
Щоб вивести список усіх наявних відключених ящиків у всіх базах організації, виконайте команду:
Get-MailboxDatabase | Get-MailboxStatistics | Where $ _. DisconnectReason -eq "Disabled" | ft DisplayName, Database, DisconnectDate, MailboxGUID
Якщо потрібно знайти віддалені ящики в одній базі:
Get-MailboxStatistics -database Msk-DB1 | Where $ _. DisconnectReason -eq "Disabled" | ft DisplayName, Database, DisconnectDate, MailboxGUID
Список віддалених ящиків зі статусом SoftDeleted можна отримати командою:
Get-MailboxDatabase | Get-MailboxStatistics | Where $ _. DisconnectReason -eq "SoftDeleted" | ft DisplayName, Database, DisconnectDate, MailboxGUID
Очищення баз Exchange від віддалених ящиків
Протягом певного часу Exchange автоматично очищає базу від відключених ящиків. Але відключені ящики продовжують займати місце в базі, тому при масових міграціях / перенесення / видаленні користувачів, буває необхідно примусово видворити такі ящики, звільнивши місце в поштових базах.
Щоб остаточно видалити з бази конкретний відключений ящик (без можливості його відновлення), потрібно скористатися Командлети Remove-StoreMailbox, вказавши MailboxGUID віддаленого ящика.
Remove-StoreMailbox -Database Msk-DB1 -Identity "2532944e-8eeb-4c7e-8bd3-ee2a223b071e" -MailboxState Disabled
Щоб видалити всі відключені ящики в організації:
Get-MailboxDatabase | Get-MailboxStatistics | where $ _. DisconnectReason -eq "Disabled" | foreach Remove-StoreMailbox -Database $ _. database -Identity $ _. mailboxguid -MailboxState SoftDeleted
Якщо потрібно видалити залишилися після перенесення копії ящиків в певній базі, виконайте команду:
Get-MailboxStatistics -Database Msk-DB1 | Where-Object $ _. DisconnectReason -eq "Softdeleted" | ForEach Remove-StoreMailbox -Database $ _. Database -identity $ _. Mailboxguid -MailboxState Softdeleted -Whatif
Підключення віддаленого ящика користувачеві
Відключений ящик можна перепідключити до тієї ж або іншого облікового запису користувача Active Directory (природно, учетка повинна бути без ящика). Щоб перепідключити ящик до того ж аккаунту, виконайте команду:
Connect-Mailbox -Identity "AAndreev" -Database Msk-DB1 -User AAndreev
Цю ж операцію можна виконати з інтерфейсу EAC: Exchange Admin Center -> Recipients -> Connect a Mailbox.
Порада. Не забудьте перевірити і поправити, якщо потрібно SMTP аліаси. І, перш, ніж почати користуватися ящиком, дочекайтеся закінчення реплікації Active DirectoryЯкщо видаляється ящика в ящик іншого користувача
Дані з віддаленого ящика можна відновити в наявний ящик іншого користувача за допомогою командлета New-MailboxRestoreRequest (Ми показували, як використовувати цей командлет в статті про відновлення ящиків в Exchange):
New-MailboxRestoreRequest -SourceDatabase Msk-DB1 -SourceStoreMailbox "AAndreev" -TargetMailbox "Admin"
Або можна відновити ящик по його MailboxGuid, наприклад в окрему папку RestoreBox:
New-MailboxRestoreRequest -SourceDatabase Msk-DB1 -SourceStoreMailbox "2532944e-8eeb-4c7e-8bd3-ee2a223b071e" -TargetMailbox "Admin" -TargetRootFolder "RestoreBox" -AllowLegacyDNMismatch