Exchange 2010 и очистка Recoverable Items

Инспектируя свои ящики, обратил внимание на товарища, у которого было явно неадекватное соотношение параметров ящика TotalItemSize и TotalDeletedItemSize:

Решение было мне уже известно, я запустил команду Search-Mailbox:

Search-Mailbox "user1" -SearchDumpsterOnly -DeleteContent

RunspaceId: 8189d0e1-5260-4a75-8424-e0ef6a8eeb14

Identity: domain/user1

TargetMailbox:

TargetPSTFile:

Success: True

TargetFolder:

ResultItemsCount: 0

ResultItemsSize: 0 B (0 bytes)

Вот тут я задумался…

Для начала я посмотрел содержимое каталога Recoverable Items с помощью командлета Get-MailboxFolderStatistics:

Затем почитал статью про каталог Recoverable Items в ящиках Exchange 2010.

Для защиты писем от случайного удаления, а также выполнения требований по сохранности почты, в Exchange 2010 внедрили этот каталог, назвав его Dumpster.

В нем есть следующие подкаталоги:

  • Deletions. Содержит письма, удаленные из папки «Удаленные». Именно отсюда восстанавливаются письма, если вы выполняете в Outlook команду «Восстановить удаленные» (так называемые Soft Deleted);
  • Versions. Если на ящике включен функционал Single Item Recovery или Litigation Hold, то в этом каталоге хранятся оригинальные и измененные версии объектов ящика;
  • Purges. Если включен функционал Single Item Recovery или Litigation Hold, то в этом каталоге хранятся удаленные из ящика объекты (так называемые Soft Deleted). В противном случае эти объекты удаляются из базы;
  • Audits. Если включен аудит доступа к почтовому ящику, то в этом каталоге будут хранится записи журнала аудита. Подробнее об аудите доступа к почтовому ящику можно почитать тут.

Интересная симптоматика получается: мы имеем каталог Recoverable Items с гигабайтами данных, которые не лежат ни в одном из его штатных подкаталогов. Увидеть эти подкаталоги нельзя. Что же делать с 8Гб данных, которые в ящике просто так валяются?

Поиск привел меня к команде New-MailboxRepairRequest, позволяющей запустить проверку целостности ящика или базы почтовых ящиков целиком. Это некий аналог команды Isinteg, существовавшей в Exchange 2003.

Запускаем проверку ящика на восстановление:

New-MailboxRepairRequest -Mailbox "user1" -CorruptionType SearchFolder,AggregateCounts,ProvisionedFolder,FolderView

Обратите внимание, что во время работы восстановления доступ к ящику не предоставляется. Для незаметной проверки лучше использовать командлет

New-MailboxRepairRequest -Mailbox "user1" -CorruptionType SearchFolder,AggregateCounts,ProvisionedFolder,FolderView -DetectOnly

Результаты сканирования доступны в журнале событий от источника MSExchangeIS Mailbox Store с кодами событий 10044,10045,01146,10047,10048,10049,10050,10051,10059,10062. Тут учат, как настроить свое представление журналов событий для отображения результатов.

Сканирование успешно завершено, но проблема не решена. Гуглим дальше и натыкаемся на ветку форума Technet.

Коллеги рекомендуют отключить сохранение версионности календарей:

Set-Mailbox "user1" -CalendarVersionStoreDisabled $true

Ну и, чтобы не ждать сутки, запускаю Mailbox Assistant’a:

Start-ManagedFolderAssistant "user1"

Ура, объем данных в Recoverable Items начинает стремительно уменьшаться!

Команду Start-ManagedFolderAssistant приходится повторить еще несколько раз, но результат того стоит:

Обратите внимание, теперь в Recoverable Items два объекта, которые содержатся в подкаталоге Deletions (удаленные из ящика сообщения).

А если вам хочется узнать подробнее про Calendar Versioning, то читайте тут 🙂

Запись опубликована в рубрике Exchange, Microsoft с метками . Добавьте в закладки постоянную ссылку.

Добавить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *