Server Backup mit der Windows Powershell

So erstellt man für den Windows Server ein Backup mit der PowerShell

Überblick

Standardmäßig kennt man für das Backup des Windows Systems, den Dateiversionsverlauf, wbadmin oder robocopy. Doch auch die Windows Powershell bietet die Möglichkeit ein Backup zu erstellen. Gerade im Bereich der Automatisierung ist ein Script sehr nützlich. Da es in der Regel am sinnvollsten ist, wenn man ein Backup in regelmäßigen Abständen durchführt. In diesem Artikel möchte ich euch ein kleines Backupscript mit der Windows Powershell vorstellen. Dieses Script kann man sowohl im Server 2012R2 (Anzeige)* als auch im Windows Server 2016 verwenden.

Das PowerShell BackupScript

Um die Windows Server Sicherung verwenden zu können, muss diese zunächst auch installiert werden. Am einfachsten geht das über den Server Manger. Dort kann man über Verwalten Rollen und Features hinzufügen die Server Sicherung installieren. Zu finden ist diese unter Features.

Installation der Windows Server Sicherung im Server 2016
Installation der Windows Server Sicherung im Server 2016

Für das erstellen von PowerShell Scripts, eignet sich immer sehr gut die Windows PowerShell ISE. Des weiteren ist es nötig, dass die Ausführungsrichtlinien so gesetzt sind, das auch ein PowerShell Script ausgeführt werden darf. Als erstes wird eine neue Sicherheitsrichtlinie definiert. Hierfür wird das Cmdlet New-WBPolicy verwendet. Im Anschluss daran, wird das zu sichernde Laufwerk festgelegt. (New-WBFileSpec) Dieser Richtlinie muss nun das zu sichernde Laufwerk übergeben werden. Im nächsten Schritt muss dann das Ziellaufwerk für das Backup angegeben werden. In meinem unten dargestellten Script, wurde das komplette Laufwerk F auf das Backup Laufwerk B gesichert.

Windows Server Backup mit der Windows PowerShell
Windows Server Backup mit der Windows PowerShell
# Erstellt eine neue leere Sicherungsrichtlinie

$policy = New-WBPolicy
#Das WBFileSpec-Objekt definiert die in Sicherungen einzuschließenden oder von diesen auszuschließenden Elemente.
#hier: das Laufwerk f:

$files=new-WBFileSpec f:
#Fügt der Sicherungsrichtlinie (WBPolicy-Objekt) das WBFileSpec-Objekt hinzu, das die in eine Sicherung
#einzuschließenden oder von dieser auszuschließenden Elemente angibt.

Add-wbFileSpec -policy $policy -filespec $files
#Angabe des Backup Pfades

$backupLocation = New-WBBackupTarget -VolumePath S:

#Fügt der Sicherungsrichtlinie (WBPolicy-Objekt) das WBBackupTarget-Objekt hinzu, das Sicherungsspeicherorte angibt.

Add-WBBackupTarget -Policy $policy -Target $backupLocation
#Startet einen einmaligen Sicherungsvorgang.

Start-WBBackup -Policy $policy
Windows Server Sicherung - Durchführung des Backups mit der PowerShell
Windows Server Sicherung – Durchführung des Backups mit der PowerShell

Das Backup wird als WindowsImageBackup Datei abgelegt. Hergestellt kann dieses Backup dann nur wieder mit der Windows Server Sicherung. Dazu verwendet man das Tool wbadmin. Ein kleine Beschreibung gibt es im Artikel: Backup mit der cmd durchführen!

Windows Server Backup: WIndowsImageBackup Datei
Windows Server Backup: WIndowsImageBackup Datei

Fazit:

Natürlich geht das Server Backup auch per grafischer Oberfläche. Allerdings sollt man bedenken, das man mit einem Script viel flexibler ist. Abgesehen davon hat man ja nicht bei jedem Windows Server eine GUI. So besitzt der Windows Core Server keine grafische Oberfläche und genau für solche Anwendungsfälle ist ein kleines Script meiner Meinung nach optimal. Wie seht ihr das?

Interessantes