Назад | Перейти на главную страницу

Используемое пространство почтовым ящиком в Exchange 2010

Есть ли способ проверить, сколько места было занято почтовым ящиком пользователя в Exchange 2010. Я хотел бы получить результат в таком формате:

Имя (Псевдоним) | Квота назначена | Использованное пространство | Отправить запретить | Запрет отправки / получения

Это сложнее, чем я думал ...

Получение общей информации от Powershell для почтовых ящиков пользователей будет примерно таким:

Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | Select DisplayName,TotalItemSize,StorageLimitStatus

Чтобы просмотреть различные квоты, необходимо учитывать ограничения базы данных, а также то, что может быть определено для каждого пользователя. Я нашел это, чтобы предоставить эту информацию. Вы должны иметь возможность изменить это в соответствии со своими потребностями.

$u = Get-Mailbox

foreach ($m in $u) {
    $TotalItemSize              = @{n="TotalSize";
                                    e={ 
                                        if ( (Get-MailboxStatistics -Identity $m).TotalItemSize.Value) {
                                            (Get-MailboxStatistics -Identity $m).TotalItemSize.Value.ToMB()
                                            } else {"-"}
                                         }
                                    }
    $ProhibitSendQuota          = @{n="ProhibitSendQuota";
                                    e={
                                        if ( (Get-Mailbox $m).ProhibitSendQuota.Value) {
                                            (Get-Mailbox $m).ProhibitSendQuota.Value.ToMB()
                                            } else {"-"}
                                        }
                                    }
    $ProhibitSendReceiveQuota   = @{n="ProhibitSendReceiveQuota";
                                    e={ 
                                        if ( (Get-Mailbox $m).ProhibitSendReceiveQuota.Value) {
                                            (Get-Mailbox $m).ProhibitSendReceiveQuota.Value.ToMB()
                                            } else {"-"}
                                        }
                                    }
    $IssueWarningQuota          = @{n="IssueWarningQuota";
                                    e={ 
                                        if ( (Get-Mailbox $m).IssueWarningQuota.value) {
                                            (Get-Mailbox $m).IssueWarningQuota.value.ToMB()
                                            } else {"-"}
                                        }
                                    }
    $DBProhibitSendQuota        = @{n="DBProhibitSendQuota";
                                    e={
                                        if ( (Get-MailboxDatabase -Identity $m.Database).ProhibitSendQuota.Value) {
                                            (Get-MailboxDatabase -Identity $m.Database).ProhibitSendQuota.Value.ToMB()
                                            } else {"-"}
                                        }
                                    }
    $DBProhibitSendReceiveQuota = @{n="DBProhibitSendReceiveQuota";
                                    e={
                                        if ( (Get-MailboxDatabase -Identity $m.Database).ProhibitSendReceiveQuota.Value) {
                                            (Get-MailboxDatabase -Identity $m.Database).ProhibitSendReceiveQuota.Value.ToMB()
                                            } else {"-"}
                                        }
                                    }

    get-mailbox -resultSize unlimited $m | `
        select  name,`
                $TotalItemSize,`
                $ProhibitSendQuota,`
                $ProhibitSendReceiveQuota,`
                $IssueWarningQuota,`
                $DBProhibitSendQuota,`
                $DBProhibitSendReceiveQuota
    }