Exchange: Nützliche Alltags-Befehle für die PowerShell
Hier ein paar nützliche Alltags-Befehle für die Administration via PowerShell.
Service-Status und System-Status testen und anzeigen
Test-ServiceHealth | fl Test-SystemHealth | fl
Mailbox Details vollständig anzeigen
Get-Mailbox -Identity <Domain>\<Username> | Select-Object *
Anzahl der Mailboxen Gesamt/User/Shared anzeigen
(Get-Mailbox -ResultSize Unlimited).count (Get-Mailbox -ResultSize Unlimited -RecipientTypeDetails UserMailbox).count (Get-Mailbox -ResultSize Unlimited -RecipientTypeDetails SharedMailbox).count
Anzeigen der 10 größten Mailboxen
Get-Mailbox -ResultSize Unlimited | Get-MailboxStatistics | Sort-Object TotalItemSize -Descending | Select-Object DisplayName,TotalItemSize -First 10
Ordner & Unterordner einer Mailbox inkl. Größe pro Ordner und Gesamt
Get-MailboxFolderStatistics -Identity <Domain>\<Username> | Select Name,FolderPath,FolderSize,FolderAndSubfolderSize
Zugriffsrechte auf Outlook Ordner (im Beispiel: Kalender) setzen
Add-MailboxFolderPermission -Identity <Domain>\<Calender-Owner-Username>:\Calendar -user <Domain>\<Calender-Guest-Username> -AccessRights owner
Zugriffsrechte auf Outlook Ordner (im Beispiel: Kalender) entfernen
Remove-MailboxFolderPermission -Identity <Domain>\<Calender-Owner-Username>:\Calendar -user <Domain>\<Calender-Guest-Username>
Message Tracking Log anzeigen lassen
Get-MessageTrackingLog
Status der DB Kopien anzeigen lassen
Get-MailboxDatabasecopy (-Server <Servername>)
Public Folder finden, von dem man nur den Namen kennt, aber nicht den Überordner, in dem er sich befindet
Get-PublicFolder "\" -recurse | where {$_.Name -like "*<Foldername>*"}
Mailboxen mit Email-Weiterleitung anzeigen
Get-Mailbox | Where-Object { $_.ForwardingAddress -ne $null } | Select Name,ForwardingAddress
Mailboxen mit bestimmter Mail-Domain finden
Get-Recipient -Results Unlimited | Where { $_.EmailAddress -match "@<mymail.com>" } | Select Name,EmailAddresses,RecipientType