PowerShell-Skripte in der PowerShell ausführen
Haben Sie das oben erwähnte Skript ausgewählt, aktivieren Sie am Ende des Assistenten noch die Option Beim Klicken auf "Fertig stellen", die Eigenschaften für diese Aufgabe öffnet. Schließen Sie die Erstellung der Aufgabe ab, dann können Sie diese noch an Ihre Bedürfnisse anpassen. Wenn Sie in der Aufgabenplanung ein PowerShell-Skript ausführen wollen, müssen Sie immer zuerst powershell.exe angeben, sodann die Option -file und schließlich den genauen Pfad zur PS1-Datei.
Sie können die Aufgabe aber auch ohne diese Option jederzeit anpassen. Dazu starten Sie durch Eintippen von "Aufgabe" auf der Startseite von Windows Server 2012 die Aufgabenplanung. Die Aufgabe finden Sie über Aufgabenplanungsbibliothek/Aufgaben der Ereignisanzeige. Über das Kontextmenü rufen Sie die Eigenschaften der Aufgabe auf. Zunächst sollten Sie auf der Registerkarte Allgemein im unteren Bereich bei Sicherheitsoptionen ein Benutzerkonto auswählen, um die Aufgabe zu starten. Außerdem aktivieren Sie die Option Mit höchsten Privilegien ausführen, wenn das notwendig ist.
Auf der Registerkarte Trigger überprüfen Sie, ob die korrekte Ereignismeldung als Startwert ausgewählt ist. Bei Aktionen sollte Ihre Batchdatei erscheinen. Bei Bedingungen können Sie weitere Konfigurationen vornehmen, das gilt auch für die Registerkarte Einstellungen.
Alle Aufgaben, die Sie ausführen wollen, müssen Sie nur noch in die Batchdatei oder das PowerShell-Skript aufnehmen. Sie können über Batchdateien auch PowerShell-Skripte ausführen. Dazu müssen Sie aber, wie erwähnt, das Skript als Option des Befehls powershell.exe -file starten und den genauen Pfad eingeben.
Zur Sicherung und Replikation im Netzwerk bietet es sich zudem an, verschiedene Verzeichnisse an andere Ordner und Rechner im Netzwerk zu replizieren, am besten mit Robocopy.
So können Sie mit der PowerShell die Daten der Farm sichern und dann mit Robocopy dieses Verzeichnis im Netzwerk spiegeln. Um die Daten in einer Freigabe auf einen anderen Rechner zu spiegeln, schreiben Sie am besten ein Skript mit dem Befehl robocopy <Quellordner> <Sicherungslaufwerk>:\<Sicherungsordner> /mir.
Die Option /mir kopiert nur geänderte Dateien und löscht Dateien im Zielordner, die im Quellordner nicht mehr vorhanden sind. Das heißt, der erste Kopiervorgang dauert recht lange, da erst alle Dateien kopiert werden müssen. Der Zweite läuft aber deutlich schneller ab, da nur geänderte Dateien kopiert werden. Löschen Sie im Quellordner eine Datei, so löscht der Kopiervorgang diese auch im Backup-Ordner. So erhalten Sie immer eine 1:1-Kopie Ihrer wichtigsten Daten. Sie können ohne Weiteres auch mehrere Ordner sichern. Verwenden Sie in diesem Fall einfach mehrmals den Befehl nacheinander in einem Skript.
Wollen Sie SharePoint mit der PowerShell sichern, müssen Sie noch Nacharbeiten vornehmen. So sollten Sie dem SQL-Server-Agenten des Servers, auf dem die SharePoint-Datenbank gespeichert ist, Leserechte erteilen.