Отримуємо розміри поштових скриньок в Exchange 2010/2013/2016

У більш ранніх версіях Exchange поточні розміри скриньок користувачів базі можна було подивитися за допомогою графічної консолі управління Exchange. Але починаючи, з Exchange 2010 графічна консоль перестала бути основним засобом управління, передавши кермо влади консолі PowerShell. У цій статті ми покажемо основні прийоми, що дозволяють отримати інформацію про розміри поштових скриньок користувачів, розташовані на поштовому сервері Exchange 2010.

Поточний розмір ящиків, звичайно можна отримати і з графічної Exchange Management Console, у властивостях поштової скриньки в розділі Mailbox, але це процедура досить незручна, особливо для великих організацій Exchange, та й сама форма результату містить мало інформації.

Набагато зручніше скористатися командами PowerShell. Отже, відкрийте консоль EMS (Exchange Management Shell). Для отримання базової статистики поштової скриньки користувача на сервері Exchange використовується командлет Get-MailboxStatistics.

Запустивши команду із зазначенням імені облікового запису користувача, без інших параметрів ми отримаємо мінімум інформації: ім'я користувача (DisplayName), кількість елементів (ItemCount), ліміт ящика (StorageLimitStatus) і час останнього доступу до ящика (LastLogonTime).

Get-MailboxStatistics jlukas

Щоб отримати загальний розмір ящика (розмір всіх елементів в ящику) і розмір віддалених елементів, потрібно виконати таку команду:

Get-MailboxStatistics jlukas | ft DisplayName, TotalItemSize, ItemCount, totaldeleteditemsize, storagelimitstatus

Примітка. Вважається розмір, реально займаний ящиком в поштовій базі і в ньому враховується як розмір всіх повідомлень, так і розмір Dumpster елементів з каталогу Recoverable Items (зберігаються в ящику 14 днів).

Отримати таблицю зі списком всіх ящиків, розташованих в певній поштової базі можна так:

Get-Mailbox -Database MSK-MBX1 | Get-MailboxStatistics | ft displayname, totaldeleteditemsize, totalitemsize

Примітка. Командлети Exchange за замовчуванням виводять тільки першу 1000 результатів. Скасувати це обмеження можна за допомогою аргументу -ResultSize: Unlimited

Цю таблицю можна відсортувати по полю з розміром скриньки користувача і вивести наприклад топ 10 великих скриньок.

Get-Mailbox -Database MSK-MBX1 | Get-MailboxStatistics | sort-object totalitemsize -descending | Select-Object displayname, totalitemsize -First 10

Якщо результат виконання команди потрібно вивантажити в CSV, потрібно додати "| Export-CSV top10mailbox.csv"

Список облікових записів, розмір ящиків яких перевищили або наблизився до заданої квотою:

Get-MailboxStatistics -Server MSK-MB-2 | where ($ _. StorageLimitStatus -contains "IssueWarning") -or ($ _. StorageLimitStatus -contains "ProhibitSend")

Поточні квоти поштової скриньки користувача:

Get-Mailbox jlukas | Format-List * Quota

Примітка. Значення квот поштової скриньки можуть задаватися персонально або через призначений план поштової скриньки

Якщо потрібно знайти список неактивних поштових скриньок, якими не користувалися більше року:

Get-MailboxStatistics -server MSK-MB-2 | where $ _. Lastlogontime -lt (get-date) .AddDays (-365)