Очистка хранилища удаленных писем (Dumpster) в ящике Exchange Online (Office 365) при помощи PowerShell

Дано: корпоративный Exchange Online (Office 365), к которому имеется административный доступ. В ящиках пользователей имеется специальное временное хранилище удаленных писем (Dumpster, не видное самим пользователям), из которого в случае необходимости можно восстановить "окончательно" удаленные пользователем письма. Это хранилище занимает определенное место в ящике.
Задача: очистить данное хранилище (очистка deletions и purges папок).

Такая задача может возникнуть, например, при необходимости выгрузки ящика в PST и/или импортировании его в другой ящик (если не сделать очистку, все удаленные письма попадут в выгруженный файл).
Схематично Dumpster корзину второго уровня можно представить так:


Очистка корзины второго уровня делается только при помощи PowerShell.

1) Проверяем размер временного хранилища перед очисткой:

Get-MailboxFolderStatistics -Identity user1@mydomain.org | Where-Object {$_.FolderType -like "*Recoverable*"} | Format-Table Name,FolderAndSubfolderSize,ItemsInFolderAndSubfolders -Auto

Или

Get-MailboxFolderStatistics -Identity user1@mydomain.org -FolderScope RecoverableItems | Format-Table Name,FolderAndSubfolderSize,ItemsInFolderAndSubfolders -Auto


2) Проверяем параметры восстановления элементов:

Get-Mailbox -Identity user1@mydomain.org | FL SingleItemRecoveryEnabled,RetainDeletedItemsFor

Если значения true и указано количество дней, то отключаем их командой:

Set-Mailbox -Identity user1@mydomain.org -SingleItemRecoveryEnabled $false -RetainDeletedItemsFor 0
(!после этой команды нужно подождать около часа)


Если этого не сделать (шаг 2), то при удалении удаленных элементов из хранилища Deletions (команда на шаге 3) они попадут на еще один уровень хранилища - Purges и объем ящика пользователя не изменится, просто произойдет еще одно перераспределение элементов внутри ящика.

3) Удаляем содержимое временного хранилища командой:

Search-Mailbox -Identity user1@mydomain.org -SearchDumpsterOnly -DeleteContent


Выполнение команды может занимать длительное время. Результат может быть следующий:


Чтобы команда заработала, необходимы разрешения на eDiscovery (описано здесь на шаге 1).

3) По окончанию можно снова зачитать размеры хранилищ:


4) (опционально) Если всё-таки случайно был пропущен шаг 2 (как видно по скриншотам, у меня так и произошло) и необходимо очистить папку Pugres, то - выполните шаг 2, подождите 60 минут, а затем выполните команду Start-ManagedFolderAssistant, которая принудительно применяет указанные в шаге 2 политики хранения:

Start-ManagedFolderAssistant -Identity user1@mydomain.org

После этого опять зачитываем размеры хранилищ и видим, что они уменьшились:


(с) Ella S.
Если Вам понравилась статья, пожалуйста, поставьте лайк, сделайте репост или оставьте комментарий. Если у Вас есть какие-либо замечания, также пишите комментарии.

2 комментария:

  1. Подскажите, пожалуйста, а можно как-то очистка хранилища удаленных писем не из одного ящика, а сразу из группы ящиков, к примеру в ходящих в одну базу?

    ОтветитьУдалить
    Ответы
    1. А что имеется в виду под "одной базой"? Группа? Как вариант можно в цикле делать очистку, либо одной командой зачитать все ящики в группе и выполнить скрипт очистки (по факту тот же цикл, только одной командой).

      Удалить