blog by ficti0n: Exchange + powershell. Команды в помощь. (PowerShell)

среда, 1 июля 2015 г.

Exchange + powershell. Команды в помощь. (PowerShell)

Работать с Microsoft Exchange 2013 я начал не зная об управлении почтой ничего. Exchange 2013 был 2 недели как установлен и как выяснилось позже, кроме  обмена сообщениями не было настроено ничего. Долго и упорно я осваивал, настраивал и исправлял. Гугл конечно помогает, но даже на получение простой информации тратится много времени. Я начал вести небольшой текстовичок, в который скидывал используемые команды. Может кому-нибудь они тоже пригодятся. К каждой команде идет описание, что она делает.

Экспорт ящика:
New-MailboxExportRequest -Mailbox "sotrudnik@mydomain.com" -Filepath "\\fserv\pst_backup$\sotrudnik.pst"

Импорт ящика:
New-MailboxImportRequest -Mailbox sotrudnik -FilePath “\\mail\F$\archive_pst\sotrudnik.pst”

Статус экспорта:
get-mailboxexportrequest -Status InProgres

Размер почтовых баз:
Get-MailboxDatabase -Status | select ServerName,Name,DatabaseSize

Активный сервер DAG:
Get-DatabaseAvailabilityGroup -Identity 'maildag01' -Status | fl name, servers, primaryactivemanager

Просмотр кластерных групп
Get-ClusterGroup

Активировать DAG на сервере mbx01
Move-ClusterGroup -Name "Кластерная группа" -Node mbx01

Просмотр тэгов политики хранения
Get-RetentionPolicyTag | Format-Table Name, Type, RetentionAction, RetentionEnabled, AgeLimitForRetention -AutoSize

Применение политики хранения (http://www.osp.ru/win2000/2011/07/13010846/)
Set-Mailbox -id 'JSmith'
   -RetentionPolicy
   'Management retention policy'

Применить политику хранения ко всем ящикам
Get-Mailbox -ResultSize Unlimited | Set-Mailbox -RetentionPolicy "RP-1"

Запустить политику на ящике
Start-ManagedFolderAssistant -Identity vvzhilyaev@mydomain.com

Перезапустить транспорт
Restart-Service MSExchangeTransport

Проверка последнего бэкапа базы (http://ficility.net/tag/windows-server-2012-backup/)
Get-MailboxDatabase maildb1 -Status | select Lastfullbackup

Запуск бэкапа через политику
 Start-WBBackup -Policy $WBPolicyExch

Список всех почтовых ящиков
Get-Mailbox -ResultSize Unlimited | Select-Object Name,WhenCreated | Out-File c:\scripts\report.txt

Получить список отключенных почтовых ящиков
$DeletedMailbox = Get-MailboxStatistics -Database maildb3 | where {$_.DisconnectReason -eq "Disabled"} | Select DisplayName, MailboxGuid, Database

Удалить отключенные почтовые ящики
$DeletedMailbox | ForEach { Remove-StoreMailbox -Database $_.Database -Identity $_.MailboxGuid-MailboxState Disabled }

Получить информацию о незарегистрированных серверах
Get-ExchangeServer | Format-Table Name, Edition, *Trial* -Auto

Просмотр результатов антиспама
cd "C:\Program Files\Microsoft\Exchange Server\V15\scripts\"
.\get-AntispamTopRBLProviders.ps1

Просмотр информации об обновлении антиспама
Get-EngineUpdateInformation

Добавить фразу для блокировки
Add-ContentFilterPhrase -Phrase "Скидки" -Influence BadWord

Миграция почтовых ящиков включая системные из одной базы в другую
Get-Mailbox -Database "Mailbox Database 1432468968" –Arbitration | new-moverequest -targetdatabase maildb
- без системных ящиков
Get-Mailbox -Database "Mailbox Database 1432468968" | new-moverequest -targetdatabase maildb

Статус миграции
Get-MoveRequest

Количество почтовых ящиков
1-й способ: Get-Mailbox -ResultSize:Unlimited | Group-Object -Property:Database | Select-Object Name,Count | Sort-Object -Property:Count –Descending
2-й способ: (Get-MailboxDatabase) | ForEach-Object {Write-Host $_.Name (Get-Mailbox -Database $_.Name).Count}

Обновить все адресные книги принудительно
Get-OfflineAddressbook | Update-OfflineAddressbook

Поиск и удаление писем с темой ...   у всех пользователей
Get-Mailbox -resultsize unlimited | Search-Mailbox -SearchQuery ‘Subject:"План"‘ -DeleteContent -force
Get-Mailbox -resultsize unlimited | Search-Mailbox -SearchQuery ‘Subject:"Доведение информации до сотрудников"‘ -DeleteContent -force

Поиск и удаление писем с темой ...   у конкретного пользователя
Search-Mailbox -Identity sotrudnik -SearchQuery 'subject:"Доведение информации до сотрудников"' –DeleteContent -force

Очистить и отключить автоответ у всех пользователей
Get-Mailbox -resultsize unlimited | Set-MailboxAutoReplyConfiguration  –AutoReplyState Disabled –ExternalMessage $null –InternalMessage $null

Поиск писем со статусом Fail отправленном от recipient@localserver.de
Get-MessageTrackingLog -Recipients recipient@localserver.de -EventId FAIL | fl

Поиск в агенте фильтрации писем от recipient@localserver.de
Get-AgentLog | where { $_.p1fromaddress -eq "sender@remoteserver.de" }

Комментариев нет:

Отправить комментарий