Полезные команды Exchange
Узнать количество лицензируемых почтовых ящиков, 2013
Get-ExchangeServerAccessLicenseUser –LicenseName "Exchange Server 2013 Standard CAL" | Measure-Object | Select Count
Изменение URL для autodiscover, Exchange 2013
После установки сервера Exchange, если устанавливаемый сервер будет сосуществовать с другим сервером, нужно после инсталляции перепробить autodiscover URL на тот же, что уже есть в существующем сервере, чтобы клиенты не начали сразу же подключаться на новый сервер.
Просмотреть и скопировать существующий URL (параметр AutoDiscoverServiceInternalUri
) можно, выполнив команду:
Get-ClientAccessServer -Identity mx02 | fl
Поменять можно так:
Set-ClientAccessServer -Identity mx03 -AutoDiscoverServiceInternalUri https://autodiscover.domain.ru/autodiscover/autodiscover.xml
В более поздних версиях Exchange командлет Get-ClientAccessServer изменился на
Get-ClientAccessService
Установка агентов антиспам
cd $exscripts .\install-AntispamAgents.ps1
После установки надо перезагрузить транспортную службу Exchange или весь сервер.
Установка политики хранения для почтового ящика места
Из графики нельзя поменять политику хранения для ящика-места.
Set-Mailbox "Training Room" –RetentionPolicy "Microsoft Retention Policy"
Узнать полную версию установленного билда и набора обновлений
Get-Command Exsetup.exe | ForEach {$_.FileVersionInfo}
Узнать версию схемы Exchange, скрипт
В данном скрипте используется имя организации “Contoso”, которое потребуется заменить, если выполнять в другом окружении.
$RootDSE= ([ADSI]"").distinguishedName ([ADSI]"LDAP://CN=ms-Exch-Schema-Version-Pt,CN=Schema,CN=Configuration,$RootDSE").rangeUpper ([ADSI]"LDAP://cn=Contoso,cn=Microsoft Exchange,cn=Services,cn=Configuration,$RootDSE").objectVersion
Создать группу рассылки из существующей группы AD
Enable-DistributionGroup -Identity "VoIP"
Группа, при этом, обязательно должна быть Universal, а не Global:
Исключить базу данных из предлагаемых баз для создания ящиков
Set-MailboxDatabase -Identity 'Journal' -IsExcludedFromProvisioning $True
Перезапуск сервисов
Перезапуск сервисов, для которых был задан режим запуска Auto:
$services = get-wmiobject win32_service | ? {$_.name -like "MSExchange*" -and $_.StartMode -eq "Auto"};foreach ($service in $services) {Restart-Service $service.name -Force}
Вывести перечень ящиков из определенного OU
Выводим в тектовый файл ящики АКТИВНЫХ пользователей, размещённых в определенном OU AD (для его указания используем DN), выбрав в результаты только Alias.
Get-Mailbox -OrganizationalUnit "OU=DOMAIN,DC=domain,DC=domain,DC=ru" | where {$_.AccountDisabled -match $false} | Select-Object alias >> C:\scripts\users.txt
Подключить модули Exchange Management Shell в обычный PS
Add-PSSnapin Microsoft.Exchange.Management.PowerShell.SnapIn
PS необходимо запустить от имени администратора, иначе команда не выполнится.
Общее количество ящиков
Узнать общее число пользовательских ящиков - можно следующим образом:
(Get-Mailbox -RecipientTypeDetails UserMailbox -ResultSize Unlimited).count