Category Archives for PowerShell

E-Mails aus OWA (Outlook Web Access) werden nur als Text verschickt – Microsoft Exchange 2007 / Microsoft Exchange 2010

Obwohl beim Versand neuer E-Mails über Outlook Web Access (OWA) „HTML“ ausgewählt ist, werden diese nur als „Text“-E-Mails verschickt.

Diese Einstellung wird zentral gesteuert und hat etwas mit der Konfiguration der Remotedomänen des Microsoft Exchange 2007 / Microsoft Exchange 2010 zu tun.

Über die Exchange Power Shell lassen sich diese Einstellungen wie folgt ändern:

  • Abfrage der Remotedomänen über den Befehl „get-remotedomain“
  • Ändern der Formatierungseinstellungen über den Befehl „set-remotedomain-identity * (Name der Remotedomain)-ContentType MimeHtmlText“
    • Folgende ContentTypes können ausgewählt werden:
      • MimeHtmlText (HTML und Text werden verschickt)
      • MimeText (Nur Text wird verschickt)
      • MimeHtml (Nur HTML wird verschickt)

 

Microsoft Exchange 2010 – Maximal Zugelassene Anzahl der Empfänger einer E-Mail ändern

Wer über den Exchange 2010 Newsletter oder ähnliches an seine Kunden verschickt, wird früher oder später auf das Problem stoßen, dass eine E-Mail im Standard an maximal 500 Empfänger verschickt werden kann.

Dieser Grenzwert kann allerdings geändert werden, wenn man weiß wie. Dazu gibt es zwei Wege:

In der Exchange Management Konsole findet man den Eintrag unter
Organisationskonfiguration > Hub-Transport > Globale Einstellungen > Transporteinstellungen > Transportgrenzwerte > Maximale Anzahl Empfänger.
Hier kann der vorgebene Wert angepasst werden.

oder

In der Exchange Management Shell mit dem folgenden Befehl
Set-TransportConfig -MaxRecipientEnvelopeLimit 500 (statt der 500 den gwünschten Wert eintragen)

Mit dem Befehl Get-TransportConfig kann die Änderung überprüft werden.

 

Power Shell Skript zum Löschen von Dateien die älter als N Tage sind

PowerShell-Skripte sind aus dem Bereich der Serverwartung nicht mehr wegzudenken. Sie haben sich als unverzichtbares Werkzeug etabliert, um tägliche, wöchentliche oder monatliche Wartungsarbeiten effizient und automatisiert durchzuführen. Einmal geschrieben, übernehmen sie im Alltag viele repetitive Aufgaben und sparen damit Zeit und Ressourcen. Die Vielseitigkeit von PowerShell ermöglicht es, nahezu jede denkbare administrative Aufgabe zu automatisieren.

Ein konkretes Beispiel für die Anwendung von PowerShell in der Serverwartung ist das folgende Skript. Dieses Skript hat den Zweck, alle Dateien auf Laufwerk R zu löschen, die älter als 30 Tage sind. Es ist wichtig zu beachten, dass das Skript standardmäßig im Testmodus (whatif-Modus) ausgeführt wird, um versehentliche Löschvorgänge zu verhindern. Das `-whatif`-Flag ermöglicht einen Testlauf, bei dem angezeigt wird, was gelöscht werden würde, ohne tatsächlich Dateien zu entfernen.

$DatumVor30Tagen = (Get-Date).AddDays(-30)
$Source = „r:\“
start-transcript „$Source $(get-date -format yyMMdd).txt“
get-childitem „$Source “ -recurse | where {$_.lastwritetime -lt $DatumVor30Tagen -and -not $_.psiscontainer} |% {remove-item $_.fullname -force -verbose -whatif}

In diesem Skript wird zunächst das Datum vor 30 Tagen berechnet und in der Variable `$DatumVor30Tagen` gespeichert. Das Quellverzeichnis, in diesem Fall Laufwerk R, wird in der Variable `$Source` definiert. Das `start-transcript`-Kommando wird verwendet, um den Löschvorgang in eine Textdatei zu protokollieren. Der eigentliche Löschvorgang wird durch die `get-childitem`-Cmdlet durchgeführt, das alle Dateien im Quellverzeichnis und seinen Unterverzeichnissen durchsucht. Das `where`-Cmdlet filtert die Dateien, die älter als 30 Tage sind und keine Verzeichnisse sind. Schließlich wird das `remove-item`-Cmdlet verwendet, um die ausgewählten Dateien zu löschen.

Die Protokolldatei wird im Quellverzeichnis mit dem Format Tagesdatum (JahrMonatTag) .txt abgelegt. Dieses Protokoll bietet Transparenz über die durchgeführten Aktionen und ermöglicht es, den Löschvorgang im Nachhinein zu überprüfen.

Insgesamt zeigt dieses Beispiel die Flexibilität und Leistungsfähigkeit von PowerShell-Skripten in der Serverwartung. Die Automatisierung von wiederkehrenden Aufgaben führt zu einer effizienten Ressourcennutzung und erleichtert die Verwaltung von Serverumgebungen.